Firefox (NSS)浏览器
错误信息
SEC_ERROR_EXPIRED_CERTIFICATE
在“Advanced”下显示为“Error code: SEC_ERROR_EXPIRED_CERTIFICATE”,警告文本中会给出过期日期和设备的当前日期。颁发者证书(中间证书或根证书)过期时,报告的错误码是 SEC_ERROR_EXPIRED_ISSUER_CERTIFICATE。
Firefox (NSS) — "Warning: Potential Security Risk Ahead", certificate expired
含义
按设备时钟计算,该网站的证书已过期,Firefox 拒绝把它当作网站身份的证明。只有一个网站出错,说明该网站没有续期;所有网站都出错,说明设备的日期不对。
原因
网站证书已过期
常见续期失败,或者从未实现自动化。
设备时钟不正确
常见设备日期处于未来(或很久以前)时,所有证书都会验证失败;把警告页上显示的设备时间与实际日期对比一下。
某处仍部署着旧证书
偶见负载均衡器后面的某个节点或某个 CDN 边缘节点仍在提供已过期的证书。
修复方法
- 1.
网站所有者:检查服务器实际提供的证书的到期日期
通过访客使用的同一路径检查;如果有多个节点,逐一检查。
bash echo | openssl s_client -connect www.example.com:443 -servername www.example.com 2>/dev/null \ | openssl x509 -noout -enddate - 2.
续期、重新加载、自动化
续期证书,重新加载每一个负责 TLS 终止的服务,并确保续期会自动运行。
bash sudo certbot renew && sudo systemctl reload nginx