SMTP relays check
smtp — SMTP relays
Connections accepted, 220 greeting, EHLO, optional STARTTLS or implicit TLS and relay certificate expiry — never sends mail.
checkfleet check smtp --config checkfleet.yml
Verifies an SMTP relay is healthy without ever sending mail:
- Connection & greeting —
ERRORif it can’t connect,BADon a non-220greeting or a greeting missing the optionalexpect_bannersubstring. - EHLO —
BADifEHLOis rejected. - STARTTLS (
starttls: true) —BADif not advertised or the upgrade fails. - Implicit TLS (
tls: true, e.g. port 465) — wraps the connection at once. - Relay certificate — when TLS is negotiated, reads the leaf and reports
WARNunderwarn_days,BADundercrit_days(or expired). - Latency —
WARNovermax_latency_ms.
Default port is 25, or 465 when tls: true. Zero-dep (stdlib net/crypto/tls);
tested against in-test fake relays (plain, STARTTLS, implicit TLS).
smtp:
warn_days: 30
crit_days: 7
targets:
- {name: relay, address: mail.example.com:25, starttls: true}
- {name: smtps, address: mail.example.com:465, tls: true}
See the full module reference for every check, or configuration for the config keys.