微软Defender误删根证书事件的运维复盘:信任链断裂比攻击更隐蔽
从Defender签名误报删除DigiCert根证书导致大面积SSL中断出发,拆解受信任根存储的脆弱性与证书生命周期自动化管理的必要性。
支持通配符SSL证书、多域名证书、IP证书。适配ACME接口, 支持Zerossl、Let's Encrypt和Google等渠道。登录已有账号
2026-08-15 22:15:41 ACME协议 证书生命周期管理 199天证书新规
8月6日,SSLDUN上线了Certum证书到期自动重新签发和自动部署功能。官方把它定义为面向199天新规的零人工干预方案。
消息本身不算大,但它把证书运维的一个老问题重新推到了台面上:有效期继续缩短后,靠人工跟踪到期、手工替换文件、手动重启服务的路走不通了。
199天会把人工运维逼到墙角
199天新规不是某家厂商的突发奇想。CA/B Forum把公开信任的TLS证书有效期从398天压到199天,一年至少要做两次全量证书轮换。
以前一年换一次,很多团队还能靠日历提醒混过去。现在周期对半砍,证书过期事故的出现概率会被直接放大。浏览器报错NET::ERR_CERT_DATE_INVALID还只是用户侧看到的结果,服务器侧nginx加载过期证书可能起不来。
这类故障的根因很少是不知道证书会过期,而是签发、验证、部署、重载几条链路没有串起来。ACME协议干的就是这件事。可以把ACME理解为给证书装了一个自动续期管家。
客户端向支持ACME的CA发起订单,CA返回验证挑战,客户端通过HTTP-01在网站目录放一个token,或者通过DNS-01添加TXT记录证明域名控制权。验证通过后CA签发新证书,客户端把新证书写入目标路径并执行重载命令。
常见命令链不长:
acme.sh --issue -d example.com --nginx
acme.sh --install-cert -d example.com
--key-file /etc/nginx/ssl/example.com.key
--fullchain-file /etc/nginx/ssl/example.com.pem
--reloadcmd "nginx -s reload"
单台机器上这套流程很顺。
ACME只解决了签发那一半
企业环境里证书分布太散。
CDN、WAF、负载均衡、K8s Ingress、API网关各存一份,私钥还不能随便复制。199天周期下,如果只做到自动签发,没有自动部署和重载,故障只是从忘记续期变成签了没装。
验证失败是另一个摩擦点。HTTP-01的token路径在/.well-known/acme-challenge/下,WAF或CDN把这类路径当扫描拦截时,客户端只会拿到challenge failed。
DNS-01稍绕一点,需要添加_acme-challenge的TXT记录,好处是可以签泛域名证书,坏处是DNS服务商API权限要长期维护。
SSLDUN这次方案主要解决Certum一家CA的自动重签和自动部署,对绑定Certum且节点集中的团队有直接价值。不少团队不会只用一家CA,还有多域名、泛域名、IP证书需求,甚至同时使用Let's Encrypt、Google Trust Services、ZeroSSL。
为每一家CA单独维护自动化脚本不现实。
更通用的做法是找支持ACME的平台收口。lcjmSSL这类平台把几家ACME CA的申请、验证、部署动作统一到一个API后面,多域名和泛域名用同一条流水线处理。它跟Certum官方自动重签不是替代关系,更多是给混合证书来源的团队省掉重复造轮子的成本。
证书短周期已经是确定性趋势,199天大概率不是终点。
后续如果继续往90天甚至45天走,手动操作会彻底失去容错空间。运维侧要做的不是等下一家CA上线自动重签,而是把证书生命周期管理并入发布系统和监控告警,让证书轮换像日志滚动一样无感。谁先把部署闭环补齐,谁在下一次证书政策调整时就能少接几个半夜电话。
从Defender签名误报删除DigiCert根证书导致大面积SSL中断出发,拆解受信任根存储的脆弱性与证书生命周期自动化管理的必要性。
从Sectigo计划维护导致激活、重签发操作中断出发,拆解证书生命周期管理的脆弱点,并聊聊ACME协议及全自动化实践如何让运维绕开这类坑。
四川CA启用新电子认证规则,折射出国内证书监管收紧的趋势,借ACME协议和免费证书方案,聊聊运维如何低成本实现证书生命周期自动化。
电子认证密码管理新规施压,科普ACME协议如何把证书生命周期自动化,并看lcjmSSL这类平台的免费合规实践。
供应链数据泄露往往不是被攻破高墙,而是传输通道忘了上锁,聊聊ACME协议如何让证书管理从“救火”变“防火”