Check IMAP

Perstat si connette al tuo server IMAP da un massimo di 6 regioni e ne legge il saluto. Lo stesso monitor può giudicare il certificato, via TLS implicito sulla 993 o via STARTTLS sulle altre porte.

Tutti i tipi di check imap

La vista del monitor di un check IMAP su mail.datargo.com:993 con uptime, tempo di risposta medio, p95 e numero di check. Mostra anche il pannello del certificato con emittente e durata residua, il quorum di alert e il grafico del tempo di risposta per regione.
In questa pagina

Cosa verifica

Un monitor IMAP si connette a host e porta da ciascuna delle sue regioni, e il check è superato quando la prima riga del saluto inizia con * OK. Sulla porta 993 la sonda completa prima un handshake TLS contro il root store pubblico, con l’host come SNI, mentre ogni altra porta viene letta in chiaro. Con il subcheck del certificato attivo, il monitor giudica anche scadenza, emittente e soggetto, tramite l’handshake diretto sulla 993 o via STARTTLS sulle altre porte.

Da usare quando

  • Un server di posta ha un endpoint IMAP da cui leggono i client, e una connessione rifiutata o un saluto mancante devono aprire un incident.
  • Il certificato presentato dal server va giudicato insieme al servizio, senza un secondo monitor. Il subcheck copre scadenza, emittente e soggetto, via TLS implicito o STARTTLS.
  • L’endpoint IMAPS deve restare pubblicamente attendibile. Sulla 993 il saluto viene letto solo dopo un handshake contro il root store pubblico, quindi un problema di catena compare come disservizio.

Il check non fa il login, non apre una casella e non invia CAPABILITY. Usa il check SMTP per un endpoint SMTP, e il check del certificato TLS per un certificato su una porta TLS diretta che merita un incident tutto suo. Un server IMAPS autofirmato sulla 993 fallisce la sonda del saluto, perché allow_self_signed arriva solo al subcheck del certificato.

Il modulo del monitor con tipo IMAP: host mail.datargo.com, porta 993, l’interruttore del subcheck del certificato TLS e la sezione del check con intervallo, regioni e regola di alert.
Il modulo IMAP: host, porta e l’interruttore del certificato. Interfaccia reale del prodotto, dati di esempio.

Configurazione

Target. Un nome host o un indirizzo IP senza schema o percorso, più una porta opzionale. Il modulo propone la 993. Ogni indirizzo risolto viene validato prima che la sonda si connetta. Gli indirizzi loopback, privati, link-local e di metadata cloud vengono rifiutati, così il monitor non può raggiungere una rete interna.

CampoObbligatorioValori e defaultSignificato
hostHostNome host o indirizzo IPIl server a cui si connette la sonda. Sulla 993 il nome host è anche lo SNI dell’handshake.
portPortaopzionaleDa 1 a 65535, default 993993 indica TLS implicito, con l’handshake prima del saluto. Ogni altra porta, per esempio la 143, viene letta in chiaro, e il subcheck del certificato usa STARTTLS.
interval_secondsIntervallo del checkopzionaleSecondi, default 300, massimo 24 h, minimo fissato dal pianoOgni quanto ciascuna regione esegue il check. Si imposta accanto a config nella richiesta, non dentro. Un valore sotto il minimo del piano viene alzato al minimo, non rifiutato.
regionsRegioniopzionaleSottoinsieme di na, eu, as, sa, af, oce. Default: le regioni del pianoQuali continenti eseguono il check. Si imposta accanto a config nella richiesta, non dentro.
address_familiesFamiglie IPopzionaleLista di ipv4 e/o ipv6, default ["ipv4"]Ogni indirizzo risolto viene controllato separatamente. Quando fallisce una famiglia su due o qualche indirizzo tra più, family_fail_severity (degraded di default, oppure failed) stabilisce il risultato.

Certificato TLS

A un saluto superato può seguire una policy sul certificato, una volta per check e non per indirizzo. Sulla 993 usa un handshake diretto, su ogni altra porta il dialogo STARTTLS di IMAP (A1 STARTTLS, poi A1 OK). Il modulo offre l’interruttore con porta, finestra di avviso, regex di emittente e soggetto e l’opzione per gli autofirmati. Senza l’interruttore la vista del monitor mostra comunque il certificato servito, ma la policy e l’avviso di scadenza richiedono l’interruttore.

CampoObbligatorioValori e defaultSignificato
tls_cert.enabledopzionaletrue o false, default falseImpostalo su true per attivare il subcheck. Assente o false, il certificato resta solo in visualizzazione.
tls_cert.portopzionalePorta, default: la porta del monitorLa porta a cui si connette il subcheck del certificato. La modalità segue comunque la porta del monitor: handshake diretto solo quando il monitor gira sulla 993, altrimenti STARTTLS.
tls_cert.warn_daysopzionaleGiorni, default 14Sotto questa durata residua il check porta un avviso, e owner e admin ricevono ogni ora un’email e un avviso in-app. Il check resta superato, e un certificato scaduto lo fa fallire.
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 nel subcheck, mentre scadenza e asserzioni regex valgono comunque. Non arriva alla sonda del saluto, che sulla 993 mantiene il root store pubblico, quindi un server IMAPS autofirmato fallisce comunque. Usalo solo per servizi interni con una CA propria su una porta STARTTLS.

Come si svolge un check

  1. Ogni regione a cui tocca l’intervallo risolve l’host tramite il resolver del proprio nodo.
  2. Ogni indirizzo risolto della famiglia scelta viene validato contro gli intervalli di indirizzi bloccati, poi contattato separatamente.
  3. Sulla porta 993 la sonda completa prima un handshake TLS contro il root store pubblico, con l’host come SNI. Su ogni altra porta resta in chiaro. Poi legge la prima riga inviata dal server.
  4. Una riga che inizia con * OK supera il check, tutto il resto lo fa fallire. Connessione, handshake e saluto condividono il limite di 10 s. Un server che resta muto è down, non un errore di configurazione.
  5. Solo un check superato con tls_cert.enabled esegue la policy sul certificato, una volta per check. Usa un handshake diretto sulla 993 e il dialogo STARTTLS sulle altre porte. Le regex vengono compilate prima, e una regex non valida chiude il check come errore.
  6. Il risultato della regione va al control plane. Un fallimento apre un incident quando concorda il quorum della regola di alert, di default 2 regioni e 2 check consecutivi.
La vista del monitor di un check IMAP su mail.datargo.com:993 con uptime, tempo di risposta medio, p95 e numero di check. Mostra anche il pannello del certificato con emittente e durata residua, il quorum di alert e il grafico del tempo di risposta per regione.
La vista del monitor con uptime, tempo di risposta e p95, più il certificato servito sulla 993 e il tempo di risposta per regione. Interfaccia reale del prodotto, dati di esempio.

Cosa contiene un risultato

Saluto
La prima riga inviata dal server, giudicata su * OK.
Tempo di risposta
Tempo fino al saluto, sulla 993 handshake TLS compreso, per regione e per indirizzo.
Riga di dettaglio
Una riga che dice cosa è successo: il saluto, IMAP error: con l’errore di trasporto o di handshake, oppure Timeout. Con il subcheck attivo, il rilievo sul certificato si aggiunge al saluto se il check è superato e lo sostituisce se fallisce.
Livello della causa
Indica se il fallimento dipendeva dal DNS del target (NXDOMAIN o NODATA) o dalla sua applicazione, dopo un lookup riuscito. Tutto il resto viene riportato come unknown.
Certificato
Il risultato conserva common name, nomi alternativi ed emittente, più le date di validità, l’indicatore di autofirmato e la fiducia pubblica. Ogni check li legge, con o senza il subcheck. La durata residua con il suo avviso compare solo con il subcheck attivo.
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à

  • okIl saluto inizia con * OK, sulla 993 dopo un handshake attendibile. Con il subcheck attivo regge anche la policy sul certificato, e un certificato dentro la sua finestra di avviso mantiene questo stato.
  • degradatoUna famiglia IP fallisce mentre l’altra risponde, oppure falliscono alcuni dei vari indirizzi risolti di una famiglia mentre gli altri rispondono. Vale con il valore predefinito di family_fail_severity.
  • downLa connessione viene rifiutata, va in timeout o viene bloccata, oppure il saluto non è * OK. Il check è down anche quando l’handshake sulla 993 viene rifiutato per una catena non attendibile, un nome host non corrispondente o un certificato scaduto. Lo stesso vale quando la policy sul certificato fallisce per scadenza, per un handshake rifiutato o per un emittente o un soggetto non corrispondente.
  • erroreLa configurazione non può essere eseguita, per esempio per una regex non valida nella policy sul certificato. Il check termina come errore invece che come fallimento e 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 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.
Monitor
10 in Free, 50 in Pulse, 150 in Sentinel, 500 in Command e una quota su misura in Enterprise. Gli undici tipi di check eseguiti dalle sonde condividono questa quota. Host agent e heartbeat hanno quote proprie.

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": "Mailbox IMAPS",
  "type": "imap",
  "interval_seconds": 60,
  "config": {
    "host": "mail.example.com",
    "port": 993,
    "tls_cert": { "enabled": true, "warn_days": 21 }
  }
}

Ogni interfaccia, con il suo limite

Limiti

  • Niente login, nessun accesso alla casella e niente CAPABILITY. La sonda legge una riga.
  • Sulla 993 la sonda del saluto esige una catena pubblicamente attendibile. L’interruttore allow_self_signed arriva solo al subcheck del certificato, quindi un server IMAPS autofirmato resta down.
  • Solo la porta 993 indica TLS implicito. Ogni altra porta viene letta in chiaro, e lì il subcheck del certificato usa STARTTLS.
  • La policy sul certificato gira una volta per check, non per indirizzo, e solo dopo un saluto superato.
  • I target su indirizzi privati, loopback, link-local e di metadata cloud vengono rifiutati.
  • Non tutte le regioni sondano IPv6, quindi selezionare ipv6 restringe le regioni utilizzabili.
  • SPF, DMARC e CAA del dominio di posta spettano al check di igiene DNS.

Tutti i tipi di check