kon*_*tur 23 firefox ssl ssl-certificate
在我的本地 Apache 环境中,我有一个需要 SSL 进行开发的站点,因此我一直在使用自签名证书。到目前为止,本地站点在 Firefox 和 Chrome 中运行良好,但在今天将 Firefox 更新到版本 59 后,我无法让它接受安全异常(在 Chrome 上,自签名证书继续工作)。
Firefox 在被阻止的页面中为我提供了以下附加信息:
... 使用无效的安全证书。该证书不受信任,因为它是自签名的。错误代码:SEC_ERROR_UNKNOWN_ISSUER
没有像以前那样允许例外的选项,但是我转到了证书下的 Firefox 首选项,然后在“服务器”选项卡中,我为本地域添加了一个例外。然后证书会列在正确的本地服务器名称中,详细信息显示我的颁发者和颁发者证书设置相同,具有有效的时间跨度。
有没有人在 FF 59 上遇到过类似的问题,或者可能知道如何尝试让自签名证书在本地再次工作?
编辑:我在FF 59 发行说明中没有看到任何提及,但新版本中的某些内容导致 *.dev 域上的所有本地虚拟主机自动尝试建立 https 连接(也就是说,所有 http *.dev 的请求会自动发送到 https URL)。也许这种行为也是导致我的实际 https 虚拟主机出现这些问题的原因。
And*_*cer 17
有一个简单的方法可以解决这个问题。
about:config
false
。警告:这将完全禁用 HSTS。请查看对此答案的评论,以了解有关此方法缺点的一些讨论。我个人认为收益大于风险,但您要为自己的安全负责。
kon*_*tur 16
我仍然不完全清楚这一切是如何完全结合在一起的,但正如这个答案中 所指出的,.dev
域现在是官方 TLD。因此,浏览器似乎强制某种 HSTS 行为并强制 https 连接。对于那些 TLD,Firefox 似乎不再接受我的自签名证书。更改我的虚拟主机以使用.test
解决了这个问题,而无需更改我的自签名证书中的任何内容。
值得注意的是,在 Firefox 中,我的非 SSL 虚拟主机也从今天的版本 59 开始运行,因为 HSTS 行为似乎在我没有设置为通过 SSL 提供服务的虚拟主机上强制使用 SSL。在 Chrome 上,这仍然有效,但无论哪种方式,都可以肯定地说,远离现在正式使用的.dev
TLD 将解决许多令人头疼的问题。
Sea*_*ken 10
在页面上设置security.enterprise_roots.enabled
为为我解决了这个问题,并允许我的自签名证书在开发过程中工作。true
about:config
这里有一些关于默认启用的优点的讨论:
Set security.enterprise_roots.enabled to true by default。
尽管此标志的目的是允许 Firefox 使用机器范围的 CA 根存储作为证书颁发机构的有效来源,但这解决了我自己的用例的情况,我有一个我使用的自签名多域证书本地测试(subjectAltName's)。即使在我将证书添加到 Firefox 证书列表之后,直到我打开它才允许本地站点加载。