Healthy
Chain validates, expiry is beyond the monitor's warning window, and the last check completed normally.
Category scope
“SSL monitoring” is used for at least four different jobs, and a tool that claims all of them usually does none of them well. ExpiryBeacon covers one: the state of the certificate a public endpoint presents.
Every result on this site comes from a live connection made at the moment you ask for it. Nothing is read from a cache or a third-party database.
DNS is resolved server-side. A pasted URL, a literal IP address, or a name that does not resolve is rejected with a plain-language message.
Every resolved address is tested against loopback, private, link-local, carrier-grade NAT, documentation, and multicast ranges. If any answer is non-public the request stops before a socket opens.
ExpiryBeacon connects to the resolved public address while sending the original hostname as SNI, so the server presents the certificate a real visitor would receive. The socket times out after five seconds.
Validity window, days remaining, trust result, issuer, subject, subject alternative names, SHA-256 fingerprint, serial, negotiated protocol, cipher, and chain depth are returned together.
Chain validates, expiry is beyond the monitor's warning window, and the last check completed normally.
Either the warning window has been reached or the chain no longer validates. Both need a person; neither is an outage yet.
The notAfter date has passed. Browsers are already refusing the connection.
The handshake could not be completed. The last verified evidence is preserved and shown with its original timestamp rather than being overwritten.
Certificate expiry has an unusual property among production risks: the exact failure time is known weeks in advance and printed on the certificate itself. That makes it a poor fit for the tools built around minute-by-minute polling and a good fit for a daily check with a long warning window.
It also means the two kinds of monitoring answer different questions. Uptime monitoring tells you something broke. Certificate monitoring tells you something is going to break on a specific date unless someone acts. Running ExpiryBeacon alongside an uptime service is the intended arrangement, not a workaround.
That scoping is why the daily schedule is a deliberate choice rather than a limitation to apologise for. Checking a 90-day certificate every 30 seconds does not shorten the renewal path.
Email alerts are opt-in per account and go to one address you set. Delivery is driven by a state change, never by a schedule, so a monitor that stays in the same state stays quiet.
No. ExpiryBeacon reports the state of the certificate an endpoint presents. It does not measure availability, response time, or status codes, and it should be run alongside an uptime tool rather than instead of one.
Not as a score. Each check reports the protocol version and cipher suite that were negotiated, but there is no configuration rating and no vulnerability scanning.
No. There is no Certificate Transparency search or wildcard inventory. Every endpoint is one you add yourself, up to 50 per account.
Direct TLS on ports 443, 8443, and 9443 against public hostnames. STARTTLS protocols such as SMTP and IMAP are not supported.