您的网站SSL证书快要过期了吗?别担心,TopSSL为您支招!
SSL证书过期是网站 HTTPS 服务中最常见的故障之一。当证书超过有效期限后,浏览器在 TLS 握手阶段无法继续验证服务器身份,会向访客直接抛出“您的连接不是私密连接”、“NET::ERR\_CERT\_DATE\_INVALID”等安全警告,导致 HTTPS 通信中断。解决该问题需要完成“证书重新签发/续签、服务器密钥文件覆盖、Web 服务重载及 CDN 节点同步”的全流程替换。
为什么 SSL 证书会过期?
SSL/TLS 证书并非永久有效,其作用类似于 HTTPS 通信中的数字身份凭证。根据 CA/浏览器论坛(CAB Forum)的行业规范要求,限制证书有效期主要出于以下安全考量:
- 定期更新密钥对:强制定期更换非对称加密的公钥与私钥,能有效缩减密钥泄露或被密文破解的暴露窗口。
- 企业身份动态核验:针对 OV/EV 类型的证书,限制期限要求企业定期重新提交工商与主体资质审核,确保安全承诺与运营主体一致。
- 吊销机制(CRL/OCSP)兜底:若证书私钥意外泄露,较短的有效期能确保即使吊销信息更新延迟,凭证也会在窗口期后自动失效。
目前,受信任的商业 DV/OV/EV 证书最长有效期为 397 天(约 13 个月),而 Let's Encrypt 等免费 DV 证书的有效期通常仅为 90 天。
关于不同验证级别的差异与有效期要求,可参阅 SSL证书类型怎么分?。
如何精确检查 SSL 证书是否过期?
在排查故障时,建议通过以下几种标准方式确认证书到期状态:
方法 1:通过现代浏览器查看(以 Chrome 为例)
注意:最新版本的 Chrome 等浏览器已移除传统的“地址栏小锁”图标,改为左侧的“控件/调整”按钮:
- 点击地址栏左侧的 **“查看网站信息”图标(设置按钮)**;
- 选择 “连接安全性” $\rightarrow$ **“证书有效”**;
- 在弹出的证书详情窗口中,检查 “有效期” 中的
开始日期与截止日期。
方法 2:使用终端 OpenSSL 命令行(推荐)
通过 OpenSSL 直接连接服务器 443 端口,可以绕过本地浏览器缓存与代理干扰,直接调取服务端加载的原始证书时间:
Bash
openssl s_client -connect example.com:443 -servername example.com | openssl x509 -noout -dates
输出中的 notAfter 即为该证书在服务器上失效的具体时间。
SSL 证书过期后的解决方法
一旦确认证书失效,需根据所使用的证书类型采取对应的恢复措施:
1. 商业 SSL 证书(DV / OV / EV)
若通过商业 CA 或代理平台购买:
- 发起续签/新购:在控制台中提交续费申请,DV 证书完成域名控制权验证(DNS TXT 或 HTTP 文件验证),OV/EV 证书配合完成组织机构审核;
- 获取新文件包:下载匹配 Web 服务器类型(Nginx、Apache、IIS、Tomcat)的新证书压缩包,包含
.crt/.pem证书公钥及.key私钥; - 部署并平滑重载:将新文件覆盖至服务器对应目录,并在终端重载服务。不清楚具体部署指令可参考 怎么安装SSL证书?。
提示:企业用户通过 TopSSL 统一管理平台,可以在证书到期前 30 天收到自动化通知,并支持一键签发替换,避免人工疏漏。
2. Let's Encrypt 等免费 SSL 证书
免费证书通常不支持传统意义上的“续费”,而是通过脚本重新签发:
- 使用 Certbot 手动更新:
- 使用 acme.sh 脚本更新:
若首次配置免费证书或需要测试环境部署,可查阅 免费SSL证书 申请与部署指南。
替换新证书后,为什么浏览器依然提示过期?
在实际运维现场,不少工程师在上传新证书后发现网站依然报 NET::ERR_CERT_DATE_INVALID,这通常是由以下几个环节失误造成的:
- **Web 服务进程未重载(Reload)**:
仅仅替换了磁盘上的.crt或.pem文件,但 Nginx、Apache 或 Tomcat 仍在内存中读取旧证书。必须执行nginx -s reload或重载对应服务。 - CDN / 负载均衡(SLB)节点未同步:
网站若挂载了 CDN 或 Web 应用防火墙,仅更新源站服务器是没有用的,必须登录 CDN 控制台,在“HTTPS 设置”中将绑定的边缘节点证书同步更新。 - 多台备用服务器/集群漏更新:
在负载均衡架构下,如果只更新了部分后端节点(例如更新了 Server-A,漏掉了 Server-B),用户的访问轮询到 Server-B 时依然会抛出过期报错。 - 客户端/中间件缓存:
本地代理、安全软件劫持或浏览器 DNS/TLS 缓存可能导致短期内未拉取新证书,可尝试无痕模式或清除本地缓存测试。
处理 SSL 证书过期的核心在于“确认失效断点、快速覆盖替换、平滑重载进程”。建立完善的证书生命周期监控,并针对免费证书配置自动化 Cron 续期任务,是保障 HTTPS 服务平稳运行的长效方案。
常见问题
SSL 证书过期多久之后网站会打不开?
不存在缓冲期。一旦服务器系统时间超过证书的 notAfter 失效时间戳,客户端在下一次进行 TLS 握手时就会立即校验失败,浏览器会当场阻断访问并抛出安全警告。
SSL 证书过期后重新申请,需要重新进行域名验证吗?
需要。无论是续费还是重新签发,CA 机构都必须重新确认你对该域名的控制权。DV 证书需要重新配置 DNS TXT 记录或 HTTP 验证文件;OV/EV 证书如果企业资质审核超过有效期,也需要重新配合完成电话或人工核验。
使用 Certbot 自动续期,为什么到了过期时间却没有自动更新?
通常有两个原因:一是系统的 Cron 或 Systemd Timer 定时任务失效,未能定期触发 certbot renew;二是 80 端口被防火墙拦截,导致 HTTP-01 挑战验证失败。
建议在配置定时任务时追加 --deploy-hook "systemctl reload nginx",确保续签后能自动重载 Web 服务。



京公网安备11010502031690号
网站经营企业工商营业执照
















