Chrome 浏览器显示连接不是私密连接错误,证书日期无效是什么原因?

文章导读
遇到 Chrome 提示“连接不是私密连接”且错误代码为 ERR_CERT_DATE_INVALID,核心原因是当前系统时间不在证书的有效期内。优先检查本地时钟准确性,其次核实服务器证书状态。
📋 目录
  1. A 快速排查方法
  2. B 为什么会这样
  3. C 分步处理
  4. D 怎么验证是否生效
  5. E 常见坑
  6. F 参考来源
A A

遇到 Chrome 提示“连接不是私密连接”且错误代码为 ERR_CERT_DATE_INVALID,核心原因是当前系统时间不在证书的有效期内。优先检查本地时钟准确性,其次核实服务器证书状态。

先说结论:这是证书有效期与当前时间不匹配导致的,多数情况是本地时间不准或证书已过期。

  • 优先确认本地系统时间是否准确(Windows/macOS 均有自动同步选项)
  • 通过 Chrome 地址栏锁图标直接查看证书有效期
  • 清除缓存后重新验证访问

快速排查方法

方法一:Chrome 浏览器直接查看(推荐普通用户)

无需安装任何工具,直接在报错页面操作:

  1. 点击地址栏左侧的“不安全”锁形图标
  2. 选择“连接不安全”“证书无效”
  3. 点击“证书无效”按钮,在弹出的窗口中查看“有效期”字段。
  4. 对比当前系统时间,确认是否超出 notAfter 时间。

方法二:命令行检查(适合高级用户)

如果你熟悉命令行,可以使用 OpenSSL 快速检查远程证书日期:

# 查看本地系统时间
date

# 查看远程服务器证书有效期(替换 example.com 为你的域名)
openssl s_client -connect example.com:443 2>/dev/null | openssl x509 -noout -dates

为什么会这样

SSL/TLS 证书都有明确的“生效时间”和“过期时间”。浏览器在建立 HTTPS 连接时,会比对当前系统时间与证书中的时间段。如果当前时间早于生效时间,或者晚于过期时间,浏览器就会判定证书日期无效,从而拦截访问并显示错误页面。这既可能是你电脑的时间错了,也可能是网站管理员忘记续费证书。

分步处理

1. 同步本地系统时间

Chrome 浏览器显示连接不是私密连接错误,证书日期无效是什么原因?

这是最常见的原因。不同操作系统同步时间的路径如下:

  • Windows 10/11:打开“设置” > “时间和语言” > “日期和时间”,开启“自动设置时间”开关,点击“立即同步”按钮。
  • macOS:打开“系统偏好设置” > “日期与时间”,勾选“自动设置日期与时间”,确保服务器地址可用。
  • Linux:使用 ntpdate -q pool.ntp.org 或配置 chronyd/ systemd-timesyncd 服务。

修正后刷新页面即可。

2. 检查服务器证书状态

如果本地时间正常,问题可能出在服务器端。通过上述 Chrome 查看方法或 OpenSSL 命令确认。输出中 notBefore 是生效时间,notAfter 是过期时间。如果当前时间超过了 notAfter,说明证书已过期,需要联系网站管理员续费或重新签发。

3. 检查中间证书缺失

有时服务器配置不完整,缺少中间证书,也可能导致浏览器无法正确验证有效期链。确保服务器配置了完整的证书链(Full Chain),而不仅仅是叶子证书。

Chrome 浏览器显示连接不是私密连接错误,证书日期无效是什么原因?

怎么验证是否生效

修正时间或更新证书后,关闭 Chrome 浏览器再重新打开,访问目标网址。地址栏应显示锁形图标,且点击锁形图标查看证书信息时,有效期状态应显示为“有效”。如果之前使用了“高级 - 继续访问”临时绕过,请确保清除浏览器缓存后再测试,或使用无痕模式验证。

常见坑

1. 时区设置错误

即使日期正确,如果时区相差太大,也可能导致时间戳校验失败。确保时区设置与当前所在地一致。

2. CDN 缓存旧证书

如果网站使用了 CDN,源站更新了证书但 CDN 节点仍缓存旧证书,用户访问时仍会报错。需要在 CDN 控制台刷新缓存或重新上传证书。

3. 虚拟机或容器时间不同步

在开发环境中,虚拟机或 Docker 容器的时间可能与宿主机不同步。如果在这些环境中部署服务,请确保内部时间也是准确的。

参考来源

  • Google Chrome 帮助:解决与安全相关的错误 - https://support.google.com/chrome/answer/6098869
  • OpenSSL 官方文档:x509 命令说明 - https://www.openssl.org/docs/man1.1.1/man1/x509.html