← 中文资源

简体中文版本

TLS 报证书已过期错误

通过检查有效期、时钟偏差以及所呈现证书是否为预期证书,诊断 TLS 证书过期。

阅读英文原文

症状

TLS 校验以 certificate has expired 或 is not yet valid 失败。证书可能确实过了有效期,链中的中间证书可能已过期,或客户端时钟错误使有效证书看似无效。最后一种在容器与刚启动的虚拟机中很常见,因为时间同步尚未跟上。

诊断

用 openssl 读取有效期;检查客户端时间;检查整条链而非仅叶子证书。

openssl s_client -connect host:443 -servername host 2>/dev/null | openssl x509 -noout -dates

根因

链中某证书相对服务器时间落在有效期窗口之外,原因是已过期、尚未生效,或客户端时钟偏差。

修复

续期并部署过期证书;修正两端时钟同步;校验整条链而非仅叶子。把续期自动化并加监控,因为人工续期容易遗忘。

验证

重新连接确认校验通过,并确认证书有效期在当前时间两侧正确覆盖,服务器与客户端都如此。有效期正确且握手成功即证明修复。

常见陷阱

为绕过过期错误而关闭校验会引入中间人风险;应修复证书与时钟。