TCP port
Monitoraggio porta TCP
Qualsiasi host, qualsiasi porta e cosa dice quando risponde.
Provalo ora
Un controllo, da un solo posto, subito, e nulla viene salvato. Un monitor controlla da ogni posizione in cui operiamo e conferma un errore da altri due continenti prima che qualcuno venga svegliato, cosa che un singolo controllo non può mostrarti.
A cosa serve
Il controllo per un servizio che non è un sito web. Un database, un server di gioco, un endpoint VPN, SSH: cose che ascoltano su una porta e non hanno HTTP da interrogare né una pagina da leggere.
Apriamo la porta, e il controllo può anche richiedere il saluto che il servizio dovrebbe dare. Una porta che accetta una connessione e poi non dice nulla è ciò che un servizio mezzo morto sembra dall'esterno, e un semplice controllo di porta aperta lo considera sano.
Come ogni controllo qui, viene eseguito da Amsterdam, New York, Sydney and Singapore, e un errore viene confermato da altri due continenti prima che qualcuno venga svegliato. Come funziona.
Cosa puoi impostare
Tutto ciò che segue è nel modulo quando ne aggiungi uno, su ogni piano.
- Host e porta
- Un hostname o un indirizzo e una porta, perché non c'è una porta predefinita sensata da indovinare.
- Saluto atteso
- Un'espressione regolare che deve corrispondere alla prima cosa che il servizio dice.
Domande
Quali porte vale la pena monitorare con un controllo TCP?
Porta 22 per SSH, 3306 per MySQL, 5432 per PostgreSQL, 6379 per Redis e qualsiasi altra porta su cui il tuo servizio ascolta. Non c'è una porta predefinita su cui ripiegare, perché una porta indovinata è un monitor che controlla qualcosa che non hai richiesto, quindi la porta fa parte di ciò che scrivi.
Cosa fa il saluto previsto?
Legge i primi byte che il servizio invia e li confronta con un'espressione regolare che fornisci, che è ciò che si intende per banner grab. Senza di essa, questo è un semplice controllo di porta aperta, e un controllo di porta aperta considera sano un servizio mezzo aperto: la porta accetta la tua connessione e poi ciò che c'è dietro non dice mai una parola.
Connessione rifiutata o timeout?
Rifiutata significa che l'host ha risposto e ti ha detto che lì non c'è nulla in ascolto, che di solito è un servizio che si è fermato piuttosto che una macchina che è andata offline. Un timeout significa che non è tornato nulla, che è un firewall che scarta pacchetti, un host irraggiungibile o una rete intermedia. Vengono riportati separatamente per questo motivo.
Puoi controllare una porta UDP?
No, e lo diciamo piuttosto che offrire qualcosa che sembri tale. Una porta UDP aperta e una porta UDP filtrata sono indistinguibili dall'esterno a meno che il servizio non scelga di rispondere, quindi un controllo di porta UDP è un'ipotesi mascherata da pillola di stato. Monitora il servizio in un altro modo.
Perché non usare netcat sulla porta da uno script?
Per una porta su un host accanto al quale hai già una macchina, è un controllo perfettamente valido e richiede una sola riga. Il problema è lo stesso ovunque qui: lo script gira da qualche parte, e quel 'da qualche parte' è una cosa che può fallire senza avvisarti. Una connessione che fallisce da un luogo non distingue un servizio che si è fermato da un percorso che si è interrotto, cosa che due altri continenti risolvono prima che qualcuno venga avvisato.