我尝试让 Chrome 中的本地开发重新运行,但 Chrome 阻止了这一点,并显示证书无效的消息。即使它不能是证书的日期,正如您在截图中看到的那样:
https://i.stack.imgur.com/EDHew.png
我只是想知道为什么没有高级 > 选项可以继续查看网站并能够在本地开发应用程序。
还有几件事要提:
本地开发在 https://local.app.somecompany.com:4200/ 上运行。它不能只是 localhost,否则我们的身份验证 http-only cookie 将无法在 Chrome 中工作。
因此 etc/hosts 下的主机文件被调整为指向 localhost IP 地址(127.0.0.1)。
证书是根据本教程和本仓库使用 openssl 生成的
该证书适用于使用完全相同的 Chrome 版本但使用 MacOS 版本 10.14.6 的同事(我现在是 MacOS 10.15.1)
chrome 标志(chrome://flags/#allow-insecure-localhost)不会改变任何东西
也适用于我笔记本电脑上的 Firefox。
到目前为止,在网上找不到任何可以帮助我解决这个问题的东西,所以我将非常感激,如果有人有更多的想法,我可以尝试什么!?
眼镜:
操作系统:MacOS 10.15.1
铬:78.0.3904.97
仅供参考:MacOS 上的 Chrome 处理这与 Windows 不同。 MacOS 版本即使您点击 advanced
按钮也不会看到继续按钮。
在您确定此页面安全的情况下仍继续访问,这里有一个简单的方法:
错误页面中内置了一个秘密密码。只需确保已选择该页面(单击屏幕上的任意位置),然后键入 thisisunsafe。
参考:https://twitter.com/zairwolf/status/1196878125734486021
即使没有按钮允许,也有一种隐藏的方法可以绕过该错误。当然,这应该只用于您自己的站点——您完全确定该站点没有被黑客入侵,而只是本地站点,因此没有有效的 Internet 证书。
只需单击拒绝页面上的任意位置并输入“thisisunsafe”。
听起来很疯狂,但它可以绕过 chrome 对您安全的监督。 Chrome 应该因为不接受本地网络中的设备证书而被踢。这不是物联网,这是“纽约网”!
这个解决方案对我有用。
右键单击,选择检查元素
单击控制台选项卡
复制粘贴 sendCommand(SecurityInterstitialCommandId.CMD_PROCEED) 按 Enter
繁荣!它应该加载页面:)
我刚刚输入了“thisisunsafe”,它对我有用
要使 macOS Chrome 在高级下显示“继续”链接,请确保在 X509 扩展中使用 TLS Web 服务器身份验证创建证书。
这是使用该扩展创建的单线器:
openssl req \
-newkey rsa:2048 \
-x509 \
-new \
-nodes \
-keyout server.key \
-out server.crt \
-subj /CN=test1 \
-sha256 \
-days 3650 \
-addext "subjectAltName = DNS:foo.co.uk,IP:127.0.0.1,IP:192.168.1.1" \
-addext "extendedKeyUsage = serverAuth"
如果您的 MacOS openssl 没有 addext
选项,请使用以下替代形式:
openssl req \
-newkey rsa:2048 \
-x509 \
-nodes \
-keyout server.key \
-new \
-out server.crt \
-subj /CN=test1 \
-extensions v3_new \
-config <(cat /System/Library/OpenSSL/openssl.cnf \
<(printf '[v3_new]\nsubjectAltName=DNS:a.spectrocloud.com\nextendedKeyUsage=serverAuth')) \
-sha256 \
-days 3650
键是 extendedKeyUsage=serverAuth
。
serverAuth
EKU。谢谢。
-extensions v3_new
才能在 MacOS 中工作。谢谢
经过长时间的搜索,我找到了解决方案。此解决方案适用于 mac。
首先,进入设置。搜索管理证书。钥匙串访问将打开。尝试查找证书的名称,例如 localhost 是我的例子中的名称。如果您单击证书,它将显示详细信息。然后在信任部分,您必须为“使用此证书时”选择始终信任。现在再次检查浏览器。您将可以直接访问该页面。隐私错误,您的连接不是私人消息不会来。
在 MacOS Catalina 中,我通过以下方式工作:
将 PEM 证书内容复制粘贴到文本编辑器(例如 vi)中并在 finder 中将其保存为 .pem 文件(例如 localhost.pem),打开刚刚创建的证书文件并将其添加到系统钥匙串中将显示访问窗口;如下图所示,为安全套接字层 (SSL) 打开您的 localhost 证书集“始终信任”
https://i.stack.imgur.com/3jmaN.png
就是这样,刷新您的浏览器,它应该可以正常工作:)
让浏览器信任 SSL 证书
在 Chrome 中,我们可以在搜索栏中输入以下 URL:chrome://flags/#allow-insecure-localhost 并激活相关选项。
礼貌:https://www.thomasvitale.com/https-spring-boot-ssl-certificate/
只需点击 chrome 拒绝页面搜索栏上的“不安全”,然后点击证书,即可看到您的证书。单击信任选项始终信任。
所以在添加这个问题后,一位同事发现了这个thread。
似乎有两种选择可以解决这个问题:
只需在 MacOS 密钥链中安装证书。然后双击它并在“信任”下选择“始终信任”。
根据新的 MacOS Catalina 规范生成证书。
一种可能的解决方案是使用参数“--ignore-certificate-errors”启动 Chrome。
Mac 操作系统的步骤:
关闭铬。
从 Finder 中,选择“开始”>“实用程序”。
启动“终端”。
键入以下命令,然后按“Enter”:/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --ignore-certificate-errors &> /dev/null &
https://www.technipages.com/google-chrome-bypass-your-connection-is-not-private-message 的解决方案
我在多个浏览器上遇到了同样的问题。在敲了敲头之后,我查找了任何无效的证书或下方带有红十字图标的条目,并将其删除。之后,我从来没有遇到过那个错误屏幕说“你的连接不是私人的”
如果您使用的是 Mac,请按照以下步骤操作:
打开钥匙串访问
从左侧栏中选择系统根目录
导航到证书选项卡
找到任何带有红十字图标的无效证书,右键单击并点击删除
并遵循:
从左侧栏中选择系统
导航到所有项目和密码选项卡
找到任何带有红十字图标的无效条目,右键单击并点击删除
现在刷新,看看它是否适合你。
可以通过在不安全模式下启动 chrome 来简单地绕过此错误,如下所示。
google-chrome --args --disable-web-security --allow-running-insecure-content --user-data-dir=/tmp/chrome-insecure/ -ignore-certificate-errors
thisisinsane
。