CronPup

← Guides

Get alerted before an SSL/TLS certificate expires

With automatic renewal (Let's Encrypt, ACME, cloud-managed certificates), certificate expiry should be a solved problem. In practice, renewals still break: a DNS challenge stops working after a DNS provider change, port 80 gets closed by a firewall change, the renewal cron job disappears, or a load balancer keeps serving an old certificate after the new one was issued. As certificate lifetimes shrink toward 47 days, renewals happen more often, which means more chances for them to break.

What to check

A one-liner to check it yourself

echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null \
  | openssl x509 -noout -enddate

Automating it

CronPup's TLS monitors connect to your host every 6 hours, validate the chain and hostname the way a browser does, and alert you when the certificate is within your warning window (14 days by default) or doesn't validate. They sit in the same dashboard and alert channels as your cron job monitors.

Add your domains. TLS monitors count toward the same plan limit, and 10 are free.