为什么我在 Firefox 中遇到某些 SSL 证书问题?

为什么我在 Firefox 中遇到某些 SSL 证书问题?

尝试从 FireFox 69 访问duckduckgo.comreddit.com导致以下错误。

Google Chrome 没有这个问题,并报告证书有效。今天才开始出现这种情况。

我正在运行 Fedora 30。

错误信息截图

我也无法访问quora.com


更新:

我做了一个pkill firefox,在恢复会话后,一切似乎都已修复。这很奇怪。

答案1

总结

这意味着 Firefox 无法确保与此站点的连接是安全的,其他网站也出现了同样的问题

细节

Firefox 检测到的实际技术错误由末尾的错误代码指示,即:

MOZILLA_PKIX_ERROR_MITM_DETECTED

这意味着 Firefox 认为某些第三方正在拦截您与您正在尝试加载的网站的 HTTPS 连接。

实际上,在这种情况下会显示两种不同的错误代码:SEC_ERROR_UNKNOWN_ISSUERMOZILLA_PKIX_ERROR_MITM_DETECTED。两者都表示 Firefox 在访问网站时收到的 HTTPS 证书是由 Firefox 不信任的证书颁发机构签名的。

MOZILLA_PKIX_ERROR_MITM_DETECTEDSEC_ERROR_UNKNOWN_ISSUER(在 Firefox 61 中引入,请参阅错误 1450967- 虽然错误页面稍后出现)。如果 Firefox 在多个不同的站点上遇到相同的未知证书颁发机构,则会显示此错误,这表明问题不是出在远程站点上,而是出在你的计算机或连接上。参见例如社区讨论“MOZILLA_PKIX_ERROR_MITM_DETECTED”了解详情。

对于任何人来说真的好奇的是,Firefox 源代码中对这个问题的检查是在安全/证书验证程序/CertVerifier.cpp

怎么解决

理想情况下,您应该禁用任何拦截您的连接的软件 - 因为这通常会破坏 HTTPS 提供的安全性。

但是,如果您不想(或无法)这样做,您可以将拦截软件使用的 CA 导入 Firefox,使其信任该 CA。或者,特别是在 Windows 或 MacOS 上,如果其他浏览器在加载网站时没有显示错误,则 CA 的证书可能已安装到操作系统提供的证书存储中。大多数其他浏览器(例如 Google Chrome 和 Microsoft Edge)默认使用此存储,而 Firefox 有自己的证书存储。要让 Firefox 使用操作系统提供的证书存储,设置内部偏好 security.enterprise_roots.enabled

相关内容