Check della porta TCP

Un monitor conferma che una porta accetta connessioni, per servizi senza HTTP come un database, un message broker o una porta SSH o LDAP. Su una porta TLS lo stesso monitor può controllare anche il certificato.

Tutti i tipi di check tcp

La vista del monitor di un check della porta TCP con uptime, tempo di risposta medio, P95 e numero di check. Mostra anche il pannello del certificato, il quorum di alert e il grafico del tempo di risposta per regione.
In questa pagina

Cosa verifica

Un monitor della porta TCP si connette a host e porta al suo intervallo da ciascuna delle sue regioni, una volta per indirizzo risolto. Giudica solo se la connessione è stata accettata, rifiutata o è andata in timeout, e registra il tempo di connessione. Non invia payload e non legge banner.

Da usare quando

  • Un servizio ascolta su una porta ma non ha un endpoint HTTP, per esempio un database, una coda di messaggi o una porta SSH, LDAP o Redis.
  • La domanda è la raggiungibilità della porta, non il protocollo che ci sta dietro.
  • Una porta TLS senza HTTP deve avere il certificato sotto controllo senza un secondo monitor.

Non parla il protocollo dietro la porta: niente banner, niente login e niente query. Per un server di posta usa il check SMTP o IMAP, e per un endpoint HTTP usa il check HTTP(S). Per una porta che passa a TLS solo dopo un dialogo in chiaro (STARTTLS), usa il check SMTP o IMAP per controllarne il certificato.

Il modulo del monitor con tipo Porta TCP: host, porta e l’interruttore del subcheck del certificato TLS con la sua finestra di avviso e le regole su emittente e soggetto.
Il modulo della porta TCP con host, porta e l’interruttore del certificato TLS. Interfaccia reale del prodotto, dati di esempio.

Configurazione

Target. Un nome host o un indirizzo IP senza schema, percorso o spazi (label fino a 63 caratteri, 253 in totale), più una porta da 1 a 65535. La sonda risolve l’host tramite il proprio resolver al momento del check.

CampoObbligatorioValori e defaultSignificato
hostHostNome host o indirizzo IP, senza schema, senza percorsoIl target. La sonda si connette separatamente a ogni indirizzo risolto della famiglia selezionata, e ogni indirizzo riceve il proprio sotto-risultato.
portPortaDa 1 a 65535La porta a cui connettersi. Non ha un default, e un monitor salvato senza porta chiude ogni check come errore, quindi impostala sempre. Il modulo invia la porta solo se ne inserisci una.
interval_secondsIntervallo del checkopzionaleSecondi, default 300, massimo 24 h, minimo fissato dal pianoOgni quanto ciascuna regione esegue il check. Un valore sotto il minimo del piano viene alzato al minimo, non rifiutato. Impostalo al livello superiore della richiesta, accanto a type e config, perché dentro config l’API lo ignora.
regionsRegioniopzionaleSottoinsieme di na, eu, as, sa, af, oce. Omesso o vuoto: le prime n chiavi in quell’ordine, dove n è il limite di regioni del pianoQuali continenti eseguono il check. Impostalo al livello superiore della richiesta, accanto a type e config, perché dentro config l’API lo ignora.
address_familiesFamiglie IPopzionaleLista di ipv4, ipv6 o entrambi. Assente o vuota significa ["ipv4"]Con entrambe le famiglie, family_fail_severity (degraded di default, oppure failed) fissa lo stato quando una famiglia fallisce. Il modulo offre ipv6 solo quando l’host ha un record AAAA o è un letterale IPv6.

Certificato TLS

Con l’interruttore attivo, a una connessione riuscita segue un handshake TLS diretto, una volta per check e non per indirizzo. L’handshake usa la porta del monitor, a meno che tls_cert.port ne indichi un’altra. La sonda giudica il certificato secondo le tue regole di scadenza, emittente e soggetto. Senza l’interruttore il check non legge nessun certificato, e la vista del monitor non ne mostra alcuno.

CampoObbligatorioValori e defaultSignificato
tls_cert.enabledtrueAttiva il subcheck.
tls_cert.portopzionalePorta, default: la porta del monitorLa porta per l’handshake TLS, se diversa dalla porta controllata.
tls_cert.warn_daysopzionaleGiorni, default 14Sotto questa durata residua il check porta un avviso sul certificato, e owner e admin ricevono ogni ora un’email e un avviso in-app. L’avviso non cambia mai lo stato, ma un certificato scaduto fa fallire il check.
tls_cert.issuer_regexopzionaleEspressione regolareL’emittente deve corrispondere, per esempio Let's Encrypt.
tls_cert.subject_regexopzionaleEspressione regolareIl common name del soggetto deve corrispondere.
tls_cert.allow_self_signedopzionalefalse (default) oppure trueSalta i controlli di fiducia, hostname e validità temporale nell’handshake. Usalo solo per servizi interni con una CA propria. La scadenza e le asserzioni regex valgono comunque, e il modulo chiede conferma.

Come si svolge un check

  1. La sonda legge la configurazione. Una porta mancante chiude il check come errore prima di qualsiasi accesso alla rete.
  2. Quando scatta un check, ogni regione risolve l’host tramite il resolver del proprio nodo. Valida ogni indirizzo della famiglia selezionata contro gli intervalli bloccati.
  3. Ogni indirizzo riceve una connessione TCP con un timeout di 10 s. Il tempo fino alla connessione accettata è il tempo di risposta di quell’indirizzo.
  4. Solo un check superato con il subcheck del certificato TLS attivo esegue la policy sul certificato. La esegue una volta per check, come handshake TLS diretto sulla porta del monitor o su tls_cert.port.
  5. La regione invia il suo risultato al control plane. Quando il quorum di regioni e check consecutivi della regola di alert è raggiunto, si apre un incident.
La vista del monitor di un check della porta TCP con uptime, tempo di risposta medio, P95 e numero di check. Mostra anche il pannello del certificato, il quorum di alert e il grafico del tempo di risposta per regione.
La vista del monitor con uptime, tempo di risposta medio e P95, più il pannello del certificato e il tempo di risposta per regione. Interfaccia reale del prodotto, dati di esempio.

Cosa contiene un risultato

Tempo di connessione
Tempo dalla chiamata di connect alla connessione accettata, per regione e per indirizzo (latency_ms).
Riga di dettaglio
Una riga che dice cosa è successo: la porta è aperta, la connessione è stata rifiutata con il motivo, oppure la connessione è andata in timeout.
Certificato
Con il subcheck attivo: common name e nomi alternativi, emittente, date di validità, stato autofirmato e stato di fiducia. Una volta raggiunta la finestra di avviso, il risultato porta anche l’avviso di scadenza.
Regione, famiglia, indirizzo
Ogni risultato porta la regione che l’ha misurato, e un sotto-risultato per famiglia IP e per indirizzo.

Stati e gravità

  • okLa connessione è stata accettata su ogni indirizzo controllato. Un certificato dentro la sua finestra di avviso mantiene questo stato.
  • degradatoUna famiglia IP, o uno di più indirizzi risolti, fallisce mentre gli altri rispondono, con il family_fail_severity predefinito. Una singola connessione non ha un esito degradato.
  • downLa connessione viene rifiutata o va in timeout, oppure l’host non risolve o risolve verso un indirizzo bloccato. Con il subcheck attivo conta anche una policy sul certificato che fallisce: scaduto, handshake rifiutato, oppure emittente o soggetto non corrispondenti. Con family_fail_severity: failed, anche una sola famiglia che fallisce conta qui.
  • erroreLa configurazione non può girare perché manca la porta. Conta come disservizio con gravità critica.

Confermato dal quorum: di default, 2 regioni devono segnalare il guasto prima che si apra un incident. Il default dell’organizzazione richiede 2 regioni e 2 check consecutivi. Un monitor può avere una regola propria con numero o percentuale, check consecutivi e una durata minima.

Piani e limiti

Intervallo minimo
300 s in Free, 60 s in Pulse, 30 s in Sentinel, 15 s in Command e 10 s in Enterprise. Il modulo web offre 30 s, 1 min, 5 min, 15 min e 1 h. I minimi di 15 s e 10 s si raggiungono solo tramite MCP.
Regioni
2 su 6 in Free, 3 su 6 in Pulse e tutte e 6 da Sentinel. Più regioni di quante il piano ne consenta vengono rifiutate, non tagliate.
Monitor
10 in Free, 50 in Pulse, 150 in Sentinel, 500 in Command e una quota su misura in Enterprise. Undici tipi di check regionali condividono questa quota, mentre host agent e heartbeat hanno la loro.

Confronta tutti i limiti

Dalla pipeline o da un agente

La stessa config funziona nello step di deploy, in un client MCP come Claude Code e nel modulo qui sopra. create_monitor richiede una chiave API valida per tutta l’organizzazione. Se ometti regions, il piano sceglie il suo default.

{
  "name": "Postgres primary",
  "type": "tcp",
  "interval_seconds": 60,
  "config": {
    "host": "db.example.com",
    "port": 5432
  }
}

Ogni interfaccia, con il suo limite

Limiti

  • Il check non legge banner, non esegue dialoghi di protocollo e non invia payload. Termina quando la connessione viene accettata.
  • La porta 0 viene rifiutata. Un monitor salvato senza porta chiude ogni check come errore.
  • Il subcheck TLS è un handshake diretto sulla porta del monitor, a meno che tls_cert.port ne indichi un’altra. Per una porta che passa a TLS dopo un dialogo in chiaro (STARTTLS), usa il check SMTP o IMAP.
  • La sonda non si connette ai target che risolvono verso indirizzi loopback, privati, link-local, di metadata cloud o simili. Il check fallisce con il dettaglio internal or private, blocked. Il salvataggio di un monitor del genere non viene impedito.
  • Non tutte le regioni sondano IPv6, quindi selezionare ipv6 restringe le regioni utilizzabili.

Tutti i tipi di check