看到一个大警告页面上说 err_cert_date_invalid 当您尝试加载网站时,可能会感到有些惊人。
对于日常用户来说,这只是一个友好的警报,即他们试图到达的网站可能不安全。对于网站所有者,这表明您的SSL证书需要注意。
让我们仔细阅读此错误的含义,为什么会发生的原因以及访问者和网站所有者可以采取的步骤来解决它。
err_cert_date_invalid的意思是什么
SSL/TLS证书 仅在设定的时间内有效。当浏览器检查证书并看到日期范围与预期的期望不符时,它会阻止对网站的访问并显示ERR_CERT_DATE_INVALID,通常伴随着"您的连接不是私有的"短语。
这通常是有两个主要原因:
- 证书 尚未开始 (其激活日期是将来)。
- 证书 已经过期了 (其结束日期已经过去)。
浏览器将任何一种情况都视为不安全,因为如果证书在其有效窗口外被接受,则攻击者可以尝试重复使用旧证书或发布未来的证书以模仿站点。
在SSL/TLS证书上快速刷新
要了解此错误为什么重要,它有助于查看SSL/TLS证书的作用:
- 加密: 它们在您的浏览器和网站之间加密数据,以防止局外人阅读敏感信息。
- 验证方式: 他们确认网站确实是它声称的域名。例如,当您访问https://example.com时,证书证明您已连接到真实的示例,而不是假副本。
- 信任指标: 证书允许浏览器显示挂锁图标,并在地址栏中使用HTTPS,向安全连接发出信号。
每个证书都有一个 有效性窗口 由开始日期和结束日期定义。例如:
- 让我们加密证书 有效期为90天。
- 商业SSL证书最多可以持续1 - 2年。
一旦时间范围过去,证书就不再被视为安全,浏览器将用ERR_CERT_DATE_INVALID等错误标记它。
您会看到ERR_CERT_DATE_INVALID的常见原因
由于几个原因,此错误可能会弹出。有些与网站本身有关,而另一些则来自用户自己的设备:
- 已过期的SSL/TLS证书
- 最常见的原因。当证书达到其到期日期时,它会自动无效。
- 示例:如果证书有效期为2023年6月1日至2024年6月1日,您将于2024年6月2日访问该网站,则浏览器将显示此错误。
- 证书尚未有效
- 如果将来设置了证书的开始日期,则直到该日期到来才能起作用。
- 如果证书被错误地签发或使用错误的设置安装,可能会发生这种情况。
- 设备上的日期或时间不正确
- 您的浏览器将证书的有效性日期与计算机或电话系统时钟进行比较。
- 如果您的时钟设置为错误的年,月或时区,则浏览器可能会认为证书已过期或尚未有效。
- 示例:如果您的笔记本电脑将重置为1970年1月1日(一个常见的系统默认),则每个现代证书看起来都无效。
- 中间干扰的人
- 在极少数情况下,恶意演员或不安全的网络可能会试图拦截您的联系。
- 浏览器在证书详细信息中检测不匹配并显示此错误作为警告标志
- 虽然不常见,但这是您不应该简单地单击警告的原因之一。
这与其他SSL错误有何不同
浏览器显示出不同的SSL错误,具体取决于证书的问题。这是err_cert_date_invalid的比较:
- err_cert_common_name_invalid: 该证书与域名不匹配(例如,证书适用于www.example.com,但您在mail.example.com上)。
- err_cert_authority_invalid: 该证书由未经信任或未知证书授权(CA)签发。
- net :: err_cert_revoked: 该证书已被CA撤销,通常是由于安全问题。
- err_ssl_protocol_error: 表示浏览器和网站之间的安全握手发生故障,以防止安全连接。
与这些不同,ERR_CERT_DATE_INVALID专门与证书的时间有效性息息相关。这使诊断更容易,因为您知道问题是证书的日期或系统时钟。
用户端修复
如果您只是想访问网站并查看此错误,则可以在假设网站不安全之前采取一些步骤:
- 检查设备的日期和时间
- 确保您的时钟,日历和时区是准确的。
- 在Windows上,您可以将时钟设置为使用Internet时间服务器自动更新。
- 在MacOS上,在系统首选项中启用"自动设置日期和时间"。
- 更新您的浏览器和操作系统
- 过时的浏览器可能无法正确识别新证书。
- 安装更新还会刷新系统的信任证书授权列表。
- 清除SSL状态和缓存
- 浏览器有时存储旧证书数据。清除SSL缓存可以迫使新的检查。
- 在Windows上的Chrome中:转到 互联网选项→内容→清除SSL状态.
- 尝试隐身模式或其他浏览器
- 检查您的VPN
- 如果您正在使用 虚拟专用网络,您可能会在不同的时区中通过服务器路由
- 示例:如果您的设备设置为加利福尼亚的当地时间,但是您的VPN通过德国路线路线,则在德国时区看起来有效的SSL证书可能会出现在您的系统上有效或尚未有效。
如果您尝试这些步骤并仍然在多个设备上看到错误,那么几乎可以肯定的是,网站的SSL证书而不是系统的问题。
为网站所有者修复
如果管理显示此错误的网站,则需要直接处理证书。步骤包括:
- 检查您的证书的到期日期
- 您可以通过单击浏览器地址栏中的挂锁并查看证书详细信息来做到这一点。
- 在线SSL检查器(喜欢 Qualys SSL实验室)还显示证书有效性。
- 续订或重新发行证书
- 如果已过期,请要求您的证书提供商续签。
- 通过让我们加密,通常可以使用简单的续订命令来完成。
- 正确安装新证书
- 更换您的旧证书 网络服务器 并重新启动Web服务。
- 在Apache或nginx上,这意味着更新.crt和.key文件并重新加载服务。
- 验证服务器的系统时钟
- 就像客户端设备一样,服务器需要正确的日期和时间。
- 配置网络时间协议(NTP)与可靠的时间服务器同步。
- 检查中级证书
- 许多SSL设置都需要中间证书来完成信任链。
- 如果这些已过期或丢失,浏览器仍可能会出现错误。
防止未来的问题
处理过期的证书可能会感到压力很大,但预防很简单:
- 设置证书到期警报
- 许多证书机构在到期前发送提醒。
- 您还可以使用监视工具,如果证书接近其结束日期,请通知您。
- 自动续订
- 使用Let's Encrypt和Certbot,证书可以每60-90天自动续订一次。
- 自动化可防止人为错误,并避免由过期证书造成的停机时间。
- 跟踪所有证书
- 如果您运行多个网站或服务,请维持证书,其提供商和到期日期的清单。
包起来
ERR_CERT_DATE_INVALID是最常见的SSL/TLS错误之一,幸运的是,它通常是最容易诊断的错误之一。它几乎总是指向过期的证书或不正确的系统时钟。
- 对于用户: 修复程序通常归结为纠正设备日期和时间设置或更新浏览器。
- 对于网站所有者: 该修复程序通常是更新和安装有效的SSL/TLS证书。
保留证书管理的积极主动确保访问者不会被错误阻止,并有助于维持对您网站的安全性和信任。