证书过期故障怎么排查?TLS 到期前应该监控什么
TLS 证书过期会造成网站、API、内部服务和对象存储访问失败,本文总结证书检查、监控和续期流程。
证书过期是很低级、也很常见的生产事故。它的影响可能从网站打不开,到 API 调用失败,再到内部服务互信中断。更麻烦的是,证书问题经常被误判成网络故障。
手工检查
查看网站证书:
openssl s_client -connect example.com:443 -servername example.com </dev/null
查看到期时间:
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates
注意必须带 -servername,否则 SNI 场景下可能拿到默认证书。
监控什么
证书监控至少要覆盖:
- 公网域名
- 内部域名
- Ingress/Gateway 证书
- API 网关证书
- 对象存储自定义域名证书
- 私有 CA 签发的内部服务证书
告警阈值建议分层:30 天提醒、14 天升级、7 天紧急处理。
自动续期也要监控
用了 ACME、Certbot 或云厂商自动证书,不代表万无一失。DNS 验证失败、账号权限变化、域名解析异常、证书部署失败,都可能导致续期没有真正生效。
因此要监控“最终入口证书”的到期时间,而不是只看续期任务是否成功。
应急流程
证书事故发生时,先确认影响域名和入口,再确认当前证书链、私钥、部署位置和 CDN 缓存。更换证书后,要从外部网络验证,而不是只在服务器本地看文件。
