为什么浏览器使用或显示过期的 SSL 证书?

为什么浏览器使用或显示过期的 SSL 证书?

我们其中一个网站的 SSL 证书(Let's Encrypt 的)(https://edu.electrosuisse.ch) 昨天早上已过期。几天前它已使用 Let's Encrypt 的服务进行了更新。然而,已经获得旧证书的浏览器似乎仍在使用已过期的证书,且没有显示任何警告。[Shift] + Reload 无法解决此问题。

如果您以“私人模式”打开浏览器窗口,则将使用新窗口。但这也不会更新常规浏览器窗口的证书。

(在线 SSL 检查工具也显示新的 SSL 证书。)

Firefox 的行为与 Chrome/Edge Chromium 相同。

因此似乎没有任何问题,但是有人知道为什么浏览器会表现得如此吗?

(不幸的是,搜索引擎只会提供与证书过期等问题相关的结果。)

信息显示于常规的浏览器窗口

有效性

不早于:2020 年 11 月 27 日星期五 04:43:23 GMT

不晚于:2021 年 2 月 25 日星期四 04:43:23 GMT

信息显示于私人的浏览器窗口

有效性

不早于:2021 年 1 月 26 日星期二 07:47:26 GMT

不晚于:2021 年 4 月 26 日星期一 07:47:26 GMT

答案1

浏览器可能会从缓存或与服务器现有的开放 TLS 会话中获取页面,这意味着它们永远不会看到新证书,该证书仅在 TLS 中收到握手阶段。关闭所有浏览器窗口以终止现有会话(并可选择重新启动计算机),然后检查问题是否仍然存在。

旧答案

Chrome 将 SSL 证书存储(缓存)在浏览器历史记录中。Chrome 不会每次都重新获取证书,而是从缓存中读取证书。在隐私模式下,不会使用历史记录,也不会保存任何内容,因此会获取新证书

来源:这个答案在 ServerFault 上。

这是预期的行为(或Chromium 中的错误,取决于你问谁),该报告于 2012 年报告(并作为重复报告关闭这个问题)。 Internet Explorer 具有类似行为

相关内容