巡检与自助运维60 条

证书与域名到期巡检

证书与域名到期属于可预期的故障,唯一依赖是巡检提前发现。巡检要从外部握手读取实际下发的证书、核对链完整性与覆盖域名,并按注册局记录核对域名到期时间;自动续期任务本身也需要监控,因为续期失败往往直到到期前才暴露。

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌‌​‌‌​​​‌‌​‌‌​​‌​‌​‌‌‌​​‌​​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​​‌‌​​‌‌​‌​​‌​‌‌​​​‌‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​​‌​‌​​‌​‌‌​‌​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌​‌​​‌​‌‌​‌‌‌​​​‌​‌‌​‌​‌‌​​‌​‌​‌‌‌‌​​​​‌‌‌​​​​​‌‌​‌​​‌​‌‌‌​​‌​​‌‌‌‌​​‌​​‌​‌‌​‌​‌‌​‌​​‌​‌‌​‌‌‌​​‌‌‌​​‌‌​‌‌‌​​​​​‌‌​​‌​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌​​‌‌​‌​​​​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌​​

可预期却最容易失守

证书与域名到期是完全可预期的故障,唯一依赖是巡检能否提前发现。证书要核对有效期末尾与信任链完整性,域名要核对注册到期时间与解析记录。两者的共同点是事前没有症状,到期瞬间服务整体不可用,且影响面覆盖全部用户。

基本信息

检查对象站点证书、内部服务证书、中间证书链、域名注册期
关键字段生效时间、到期时间、签发者、主体备用名称
提前量设定按续期与变更流程耗时倒推,而非固定一天
检查方式从外部握手取实际下发的证书并解析
覆盖范围网关、负载均衡、服务间调用各自持有的证书

典型使用场景

  • 对外站点巡检:从外部发起握手读取实际下发证书,而不是只读服务器上的文件
  • 内部服务证书:服务间调用同样依赖证书,常因不可见于浏览器而被漏检
  • 域名注册期:注册与代理链路不同,到期时间应以注册局记录为准
  • 自动续期核对:续期失败往往到临近到期才暴露,需要独立监控执行结果
  • 变更窗口规划:提前量要覆盖审批、执行与回滚窗口,而不只是留出一天

检查项与判读

检查项判读依据常见问题
到期时间证书有效期末尾只看本地文件,忽略实际下发内容
证书链是否包含中间证书链不全导致部分客户端握手失败
覆盖域名主体备用名称列表新增域名未纳入证书
域名注册期注册局的到期时间代理续费链路中断未被察觉

读取实际下发证书

读取实际下发证书
# 从外部握手取实际下发的证书,而不是只读服务器上的文件
echo | openssl s_client -connect www.example.com:443 -servername www.example.com 2>/dev/null | openssl x509 -noout -subject -issuer -dates
# 判断剩余有效期是否低于阈值,决定是否进入续期流程
openssl s_client -connect www.example.com:443 -servername www.example.com 2>/dev/null | openssl x509 -noout -checkend 604800 && echo ok || echo renew-needed
# 确认链上是否包含中间证书
openssl s_client -showcerts -connect www.example.com:443 2>/dev/null | grep -c 'BEGIN CERTIFICATE'
启用了自动续期不代表可以取消巡检。权限变更、域名验证失效、签发接口异常都会导致续期静默失败,因此除到期时间外,还应核对续期任务最近一次执行结果与下次计划时间。
只读取服务器上的证书文件会漏检实际下发的证书:负载均衡、网关或 CDN 节点上可能存在另一份证书。巡检必须从外部握手路径取样,否则检查结论与真实服务表现不一致。

易错点

  • 只查本地文件中的证书:实际下发由网关或 CDN 提供,到期检查结果失真
  • 提前量不足一天:续期与变更无法在到期前完成,只能被动应急
  • 漏检内部服务证书:服务间调用失败时才发现过期,定位耗时明显拉长
  • 只覆盖主域名:新增接口或二级域名不在检查范围,出现部分功能不可用

数据来源与参考

  • RFC 5280 互联网 X.509 公钥基础设施证书与 CRL 概要
  • CA/Browser Forum 基线要求:证书有效期与域名验证规则
  • ICANN 注册数据访问协议与域名到期相关要求

整理校对:其其网ICT文档中心 · 本页地址:docs.qiqicto.com/automation/certificate-domain-expiry-inspection.html

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌​​‌​‌‌‌‌​‌‌​​​​‌​‌‌‌​‌​‌​‌‌‌​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌‌​‌‌​​​‌‌​‌‌​​‌​‌​‌‌‌​​‌​​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​​‌‌​​‌‌​‌​​‌​‌‌​​​‌‌​‌‌​​​​‌​‌‌‌​‌​​​‌‌​​‌​‌​​‌​‌‌​‌​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​‌‌​‌​‌‌​​​​‌​‌‌​‌​​‌​‌‌​‌‌‌​​​‌​‌‌​‌​‌‌​​‌​‌​‌‌‌‌​​​​‌‌‌​​​​​‌‌​‌​​‌​‌‌‌​​‌​​‌‌‌‌​​‌​​‌​‌‌​‌​‌‌​‌​​‌​‌‌​‌‌‌​​‌‌‌​​‌‌​‌‌‌​​​​​‌‌​​‌​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌​​‌​‌‌​‌‌‌‌​‌‌​‌‌‌​​​‌​‌‌‌​​‌‌​‌​​​​‌‌‌​‌​​​‌‌​‌‌​‌​‌‌​‌‌​​