我正在针对本地主机进行开发。今天早上,在我使用提琴手后,我开始在 chrome 上收到此错误(在 Firefox 中正常工作)
https://i.stack.imgur.com/83l43.png
现在 localhost 只有在 fiddler 运行时才能在 chrome 中工作。我已经确保在 fiddler 关闭时纠正了 fiddler 所做的代理重定向。
我还尝试将证书导入到我信任的根目录并重新启动浏览器(以及机器)。
解决此问题的一种非常快速的方法是,当您查看“您的连接不是私人的”屏幕时:
输入
badidea
输入 thisisunsafe
(感谢 The Java Guy 找到新密码)
当 Chrome 不允许通过点击设置例外时,这将允许安全例外,例如对于这个 HSTS 案例。
显然,这仅推荐用于本地连接和本地网络虚拟机,但它的优点是适用于用于开发的 VM(例如,在端口转发的本地连接上),而不仅仅是直接的 localhost 连接。
注意:Chrome 开发人员过去曾更改过此密码,并且可能会再次更改。如果 badidea
停止工作,如果您知道新密码,请在此处留言。我会尝试做同样的事情。
编辑:截至 2018 年 1 月 30 日,此密码似乎不再有效。
如果我能找到一个新的,我会在这里发布。同时,我将花时间使用此 stackoverflow 帖子中概述的方法设置自签名证书:
How to create a self-signed certificate with openssl?
编辑:截至 2018 年 3 月 1 日和 Chrome 版本 64.0.3282.186,此密码再次适用于 .dev 网站上与 HSTS 相关的块。
编辑:截至 2018 年 3 月 9 日和 Chrome 版本 65.0.3325.146,badidea
密码不再有效。
编辑 2:自签名证书的问题似乎在于,随着安全标准的全面收紧,它们会引发自己的错误(例如,nginx 拒绝加载包含默认情况下,权限链中的自签名证书)。
我现在要采用的解决方案是将所有 .app 和 .dev 开发站点上的顶级域替换为 .test 或 .localhost。 Chrome 和 Safari 将不再接受与标准顶级域(包括 .app)的不安全连接。
当前的标准顶级域列表可在此 Wikipedia 文章中找到,包括特殊用途域:
Wikipedia: List of Internet Top Level Domains: Special Use Domains
这些顶级域似乎不受新的仅限 https 的限制:
。当地的
.localhost
。测试
(任何自定义/非标准顶级域)
有关更多信息,请参阅从 codinghands 到原始问题的答案和链接:
当您之前访问过 https://localhost 时,它不仅通过安全通道(https 而不是 http)访问了它,它还使用特殊的 HTTP 标头告诉您的浏览器:Strict-Transport-Security(通常缩写为 HSTS),它应该只在以后的所有访问中使用 https。
这是 Web 服务器可以用来防止人们被降级为 http 的安全功能(无论是有意还是被某些邪恶的一方)。
但是,如果您随后关闭了 https 服务器,并且只想浏览 http,则您不能(根据设计 - 这就是此安全功能的重点)。
HSTS 还会阻止您接受和跳过过去的证书错误。
要重置此设置,以便不再为 localhost 设置 HSTS,请在 Chrome 地址栏中键入以下内容:
chrome://net-internals/#hsts
您可以在其中删除“localhost”的此设置。
您可能还想找出是什么设置了这个以避免将来出现这个问题!
请注意,对于其他网站(例如 www.google.com),这些是“预加载”到 Chrome 代码中的,因此无法删除。当您在 chrome://net-internals/#hsts 查询它们时,您会看到它们列为 static
HSTS 条目。
最后请注意,Google 已开始为整个 .dev 域预加载 HSTS:https://ma.ttias.be/chrome-force-dev-domains-https-via-preloaded-hsts/
单击 chrome 窗口中的任意位置并在 chrome 中输入 thisisunsafe
(而不是之前的 badidea
)。
此密码将来可能会更改。这是来源
根据该行,在浏览器控制台中键入 window.atob('dGhpc2lzdW5zYWZl')
,它将为您提供实际的密码。
这次密码是 thisisunsafe
。
thisisunsafe
对我有用。伙计们,打字不是复制和粘贴!!!!
我在使用私有主机名的 XAMPP 上运行的网站遇到了这个问题。事实证明,不是那么私密!它们都是 domain.dev
,Google 有 now registered as a private gTLD,并且正在域级别强制 HSTS。将每个虚拟主机更改为 .devel
(呃),重新启动 Apache,现在一切正常。
.dev
切换到 .devel
可以绕过限制。
.test
可能是切换到开发环境的最正确的一个。
.dev
localhost 域上表现得那样......上帝,谁知道......
我最近在尝试使用 CloudFlare Origin CA 访问域时遇到了同样的问题。
我发现在 Chrome(Windows 构建)上解决/避免 HSTS 证书异常的唯一方法是遵循 https://support.opendns.com/entries/66657664 中的简短说明。
解决方法:
将标志 --ignore-certificate-errors
添加到 Chrome 快捷方式,然后重新打开它并浏览您的网站。
提醒:仅用于开发目的。
https://i.stack.imgur.com/OE685.png
我看到这里有很多有用的答案,但我仍然发现了一篇方便且有用的文章。 https://www.thesslstore.com/blog/clear-hsts-settings-chrome-firefox/
我遇到了同样的问题,那篇文章帮助我了解它到底是什么以及如何处理那个 HTH :-)
遇到类似的错误。重置 chrome://net-internals/#hsts 对我不起作用。问题是我的虚拟机的时钟被歪斜了几天。重置时间确实解决了这个问题。 https://support.google.com/chrome/answer/4454607?hl=en
我遇到同样的错误,隐身模式也有同样的问题。我通过清除 Chrome 历史记录来解决此问题。
我为这个问题困扰了很长时间。我无法打开像 GitHub 这样的网站。我几乎在网上尝试了所有答案,但没有人工作。也尝试重新安装chrome。我从我们的网络人员那里找到了解决方案,并且成功了。注册表中有一个修复程序,它将永久解决此错误。
按 Windows+R 键打开运行对话框类型:regedit 并按回车键打开注册表 在树视图左键单击以下路径 HKEY_LOCAL_MACHINE > SOFTWARE > POLICIES > Microsoft > SystemCertificate > Authroot 现在双击右侧的 DisableRootAutoUpdate 并进行设置在出现的对话框中设置为 0(零)重新启动您的 PC 以应用注册表更改,您将不会再收到此错误
上面的解决方案适用于 Windows 8。在以后的版本中几乎相同,但我不确定 XP 和 vista 等早期版本。所以这需要检查。
此策略机制仅保证与网站的安全 HTTPS 交互(而不是 HTTP)。 HTTP Strict Transport Security 首字母缩写词代表 HTTP Strict Transport Security。使协议保持最新可防止对 this one 等安全协议的攻击。
HSTS 响应的 HSTS 中的漏洞最初是在 2009 年 BlackHat Federal 的一次名为“在实践中击败 SSL 的新技巧”的演讲中发现的。 Marlinspike 的工具 SSLStrip 演示了有问题的漏洞。
使用该工具将安全的 HTTPS 连接转换回不安全的 HTTP 连接。解决方案是使用 HSTS 与始终建议使用 HTTPS 连接的浏览器进行通信。通过使用 HSTS,cookie 将不再被 Firesheep 等通过 cookie 窃取登录凭据的漏洞拦截。
badidea
的thisisunsafe
插入。这已被新版本更改thisisunsafe
版本(没有物理键盘)?顺便说一句,我设法通过在设备上安装 Fiddler 根证书来覆盖它。