首页 > 解决方案 > 如果未安装 ca-certificate,请避免在网站上添加异常

问题描述

我用 openssl 创建了自己的 ca 证书。我有四个文件:

我使用带有 ssl 配置的 nginx。

ssl_certificate server.crt;
ssl_certificate_key server.key;

如果我在我的计算机上安装了 ca 公用证书,我的浏览器让我可以在不添加异常的情况下访问网站,这很好。但是如果我的电脑上没有安装ca证书,我必须添加例外才能通过。我想避免添加异常并强制用户在他们的计算机上安装 ca 证书。

我用 hsts(http 严格传输安全)配置 nginx:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
ssl_stapling on;
ssl_stapling_verify on;
ssl_trusted_certificate ca.crt;

不幸的是,我再次有可能添加一个例外来通过。
我想知道是否可以这样做?

标签: sslnginxopenssl

解决方案


我意识到我的证书不适用于 chrome missing_subjectAltName。所以我用这个链接修复了它。如果我的计算机上没有安装我的 ca 证书,现在我会收到带有 chrome 的这条消息:

您现在无法访问 localhost,因为该网站使用 HSTS。网络错误和攻击通常是暂时的,所以这个页面可能会在以后工作。

这正是我想要的。但是它在 Firefox 上不起作用,让我有可能添加一个例外。

为什么 chrome 会阻止它而不是 firefox ?我怎么能在 Firefox 上做到这一点?


推荐阅读