Ep. 19: Monitoraggio dei siti web e dei loro certificati con Checkmk
[0:00:00] | Salve. Mi chiamo Bastian Kuhn e sono uno sviluppatore software freelance e consulente Checkmk. Oggi vi mostrerò come monitorare i siti web, non solo la loro disponibilità ma anche i loro certificati. |
[0:00:16] | Vi sarà capitato in passato che un sito web non fosse più disponibile o che un certificato fosse scaduto e vi mostrerò come Checkmk possa aiutarvi in futuro ad agire in anticipo. Questi due controlli di cui parlerò sono active checks. |
[0:00:45] | Ciò significa che non sono collegati al normale agente Checkmk. Quindi, se avete un firewall, dovete aprire porte diverse. |
[0:00:53] | Normalmente, le porte dei siti web sono la porta 80 e la porta 443, o in alcuni casi si possono aprire porte come la 8080 o la 8443. Inoltre, se si dispone di un server proxy nel proprio ambiente, è necessario configurare tale server proxy in un secondo momento con il check. |
[0:01:12] | Infine, come forse già sapete, Checkmk ha il principio degli host e dei servizi: ciò significa che un servizio deve sempre essere assegnato a un host e che avrete bisogno di un host per assegnare questi nuovi controlli. |
[0:01:28] | La prima cosa da fare è monitorare un normale sito web. La dashboard è attualmente vuota poiché ho appena installato la pagina. |
[0:01:38] | Ho aggiunto un singolo host che posso usare come esempio. Tutta la magia avviene nella configurazione della parte. Qui si possono cercare i servizi HTTP, TCP, Email che si trovano sotto la parte Servizi. |
[0:01:54] | Ma io uso sempre la ricerca, che è un po' più veloce. Lo stesso accade ora nella panoramica delle regole attive. |
[0:02:08] | Una delle regole è la verifica di HTTP, ma anche qui è possibile utilizzare il filtro per arrivare più velocemente al risultato. Attualmente l'elenco della regola Verifica servizio HTTP è vuoto. Ma ne creeremo una nuova qui nella cartella principale. |
[0:02:30] | In seguito, naturalmente, sarà possibile spostarla in tutte le directory desiderate. Questa panoramica è la pagina predefinita per le regole. Inizia sempre con le Proprietà della regola. |
[0:02:45] | Poiché non abbiamo bisogno delle Proprietà della regola, le nascondo e inizio con la configurazione del controllo. La prima parte è la configurazione del controllo in cui scegliamo il nome del servizio. |
[0:03:03] | Poiché voglio monitorare una pagina web, sceglierò il nome della pagina web anche come nome del servizio. |
[0:03:15] | Checkmk aggiungerà automaticamente il prefisso al nome del servizio. Se non è criptato, il prefisso sarà HTTP oppure crittografata, oppure HTTPS se la pagina è crittografata. |
[0:03:30] | La prossima cosa da fare è sovrascrivere il nome dell'host. |
[0:03:36] | Perché stiamo per monitorare una pagina web in Internet, quindi non è l'indirizzo dell'host a cui assegniamo il servizio. Scegliere Nome host. |
[0:03:46] | Ora possiamo aggiungere l'indirizzo IP, ma io aggiungerò solo tribe29.com che il DNS può risolvere all'indirizzo IP corretto. Poiché si tratta di un server web, un server web può ospitare più domini. |
[0:04:05] | Per trovare il dominio corretto, dobbiamo aggiungere anche l'host virtuale. Se non lo facessimo, monitoreremmo il server web ma non la pagina web. |
[0:04:18] | Quindi, ci limiteremmo a monitorare la risposta ottenuta dall'indirizzo predefinito o dalla pagina predefinita dietro il server. |
[0:04:25] |
In questo caso, dobbiamo aggiungere nuovamente tribe29.com. L'ultima parte della configurazione che dobbiamo fare è scegliere che si tratti di una pagina criptata. Quindi, selezioniamo Usa SSL/HTTPS per la connessione. |
[0:04:44] | Come già detto, dobbiamo assegnare questo servizio a un host. Questo avviene nella parte delle Condizioni. |
[0:04:55] | Nel mio caso, scelgo semplicemente Host espliciti e scelgo il mio localhost preparato. Ora posso salvare la regola e attivare le modifiche. Ora diamo un'occhiata al servizio. Andiamo quindi su Monitor. |
[0:05:19] | Poiché conosco il nome dell'host e sono un grande fan della funzione di ricerca, cercherò localhost. Inserisco. |
[0:05:31] | Vedo già il mio localhost con un solo servizio. È il mio nuovo controllo HTTPS tribe29. E riprende una risposta corretta. |
[0:05:43] | Ma la prossima cosa da fare è assicurarsi di monitorare effettivamente la pagina corretta. A tale scopo, possiamo verificare la presenza di una stringa nella pagina web. |
[0:05:57] | In questo esempio, vado alla pagina tribe29 e guardo il codice sorgente. In questo caso, vedo una stringa che possiamo utilizzare. È tipo "tribe29.com - i creatori di checkmk". |
[0:06:25] | Torno alle regole HTTP, TCP, Email. Cerco di nuovo il mio Check HTTP che ora ha una regola. Quindi modifico la mia regola. |
[0:06:49] | Scorriamo un po' più in basso dove possiamo trovare Stringa da aspettarsi nelle intestazioni di risposta, Stringa da aspettarsi nella risposta del server, Stringa fissa da aspettarsi nel contenuto ed Espressione regolare da aspettarsi nel contenuto. |
[0:07:03] | Le stringhe da aspettarsi nella risposta del server sono fondamentalmente la prima riga delle risposte del server. Quindi, anche questo non è utile. |
[0:07:14] | Ma le successive sono entrambe molto utili, poiché una è la stringa fissa da aspettarsi nel contenuto e la seconda si può anche usare un'espressione regolare. |
[0:07:24] | Nel nostro caso, possiamo scegliere la semplicità. Cerchiamo una stringa fissa e quello che abbiamo copiato prima. E quando lo salvo non cambia nulla perché possiamo trovare la stringa. |
[0:07:37] | Quindi, modificherò un po' questo metodo per produrre un errore. Inserisco un '1' in mezzo. Lo salvo di nuovo. Devo attivarlo. Poi torno al mio localhost. |
[0:08:04] | Poiché non voglio aspettare il prossimo intervallo di controllo, che è tra 40 secondi, ho attivato lo strumento di salvataggio qui. E ora riceviamo un errore poiché la mia stringa non viene più trovata. Quindi, in questo modo, possiamo assicurarci di monitorare sempre tutte le pagine corrette. |
[0:08:26] | La prossima cosa da fare è monitorare l'età del certificato. Per questo, torniamo di nuovo al Setup. Di nuovo, su HTTP, TCP, Email. Di nuovo, su Controlla HTTP. E clonerò la mia regola. Si fa con questo pulsante qui. |
[0:08:49] | Come avrete visto in precedenza, questa regola ha un selettore di modalità, ad esempio si può controllare l'URL o l'età del certificato SSL. E io cambio semplicemente la modalità. Ora rimangono solo poche opzioni. Sono le soglie di avviso e di criticità. |
[0:09:19] | Ad esempio, voglio avere un avviso di 30 giorni e un critico di 15 giorni. E una piccola cosa che voglio cambiare è il nome del servizio per aggiungere un certificato davanti ad esso. |
[0:09:37] | L'aspetto è un po' migliore nel front-end. Lo salvo di nuovo. Lo attivo. Poi vado sul mio localhost. |
[0:09:57] | E vedo il mio nuovo certificato Check HTTPS tribe29. Vedo che scadrà a marzo e ricevo una notifica 30 giorni prima che ciò accada. |
[0:10:13] | Un piccolo problema in questo caso è l'intervallo dei controlli di Checkmk. Se faccio clic sui dettagli, si può vedere che il controllo nel muro per questo servizio è di 60 secondi. Normalmente non ho bisogno di controllare ogni 60 secondi se un certificato è ancora valido. |
[0:10:36] | Per questo motivo vi mostrerò la regola per modificare l'intervallo. Per questo motivo avremo bisogno della Descrizione del servizio che copierò qui. Poi torneremo a Impostazione e alle regole di monitoraggio del servizio. |
[0:10:58] | Dato che abbiamo molte regole, vi consiglio di usare la ricerca e di cercare l'intervallo. Abbiamo quindi un breve elenco in cui troviamo l'intervallo di controllo normale per i controlli di assistenza. ed è quello che ci serve. |
[0:11:19] | Abbiamo già uno strumento predefinito di Checkmk. Ne creiamo un secondo: si tratta di una regola molto semplice in cui inseriamo, ad esempio, ogni ora che vogliamo controllare. |
[0:11:32] | E poi la parte importante: dobbiamo aggiungere le Condizioni, altrimenti cambieremmo l'intervallo per ogni servizio che abbiamo. Quindi, controllo la parte Servizi qui. |
[0:11:48] | Lo incollo così. Se non vogliamo creare una regola per ogni certificato che controlliamo, possiamo fare così e rimuovere la parte "tribù29". |
[0:12:04] | Quindi, se nominiamo ogni controllo di certificato HTTP in questo modo, iniziando con certificato e poi con dominio, questa regola corrisponderà. Questo perché qui abbiamo anche un'espressione regolare. E vi mostrerò cosa succede quando la salvo. |
[0:12:23] | Dice: "Il nome del servizio inizia con il certificato HTTPS", giusto per dare un'idea. Se non lo si vuole Se non lo si vuole, si può anche terminare l'abbinamento con un "$". |
[0:12:38] | Non è utile nel mio caso, ma solo per farvi vedere che la corrispondenza è esattamente come se il nome del servizio fosse certificato HTTPS. Ma anche in questo caso non funzionerebbe per noi. |
[0:12:49] | Quindi, rimuovo il '$'. Lo salvo. Attivo le mie modifiche. Torno al mio server, clicco sui dettagli e vedo che l'intervallo è di 61 minuti invece dei 60 secondi di prima. |
[0:13:21] | La prossima cosa che mostrerò è come monitorare un'applicazione web o un sito web in esecuzione sul server che abbiamo in monitoraggio, quindi non su un server esterno. |
[0:13:31] | Per questo esempio, ho qui l'indirizzo del server mon, che è localhost. |
[0:13:40] | E qui ho una semplice risposta, Hello o Hallo nel mio mondo. La copierò per dopo. Ora vi mostrerò come si configura. Si ripete in Setup e come prima in HTTP, TCP, Email. |
[0:13:59] | Anche in questo caso, sarà una regola per il controllo HTTP, ma molto più semplice di quella che ho creato nella cartella principale. |
[0:14:11] | La chiamo, ad esempio, La mia applicazione. Non mi serve il nome dell'host, non mi serve un host virtuale perché sarà l'host assegnato. Quello che farò per dimostrare che funziona è aggiungere la stringa expect nel contenuto. |
[0:14:34] | Lo assegno di nuovo al mio localhost. Lo salvo. Lo attivo. E ricontrolliamo. E qui abbiamo HTTP My Application con una risposta OK, poiché il controllo trova questa stringa. |
[0:15:04] | Queste sono le opzioni di base del monitoraggio del sito web Checkmk, ma ce ne sono molte altre. |
[0:15:09] | Ad esempio, è possibile utilizzare dei segnaposto, come $hostname$, per combinarli con la configurazione basata su regole di Checkmk, dove non è necessario avere una regola per ogni sito web che si vuole monitorare. |
[0:15:24] | Ma questo è un contenuto per video più avanzati che mostreremo in futuro. Spero che questo video vi sia stato utile e ci vediamo la prossima volta. |
Vuoi saperne di più su Checkmk? Partecipa al nostro webinar "Introduzione a Checkmk".