首先,我想指出这与Internet Exporer 11兼容。但是由于某些原因,我无法让FireFox发挥出色!
所以我已经添加了自己的rootCA安全证书,并且在Internet Explorer下可以正常运行,并且具有自签名证书的网站是受信任的。
但是在Firefox v61.0.1和v65.0上,即使已经添加了我的根证书,此外,在security.enterprise_roots.enabled设置为true(在about:config中)中,我仍然得到“您的连接是不安全”消息,我必须添加安全例外才能查看我的网站。
在带有消息和按钮以添加例外的区域中,Firefox说:
“ xx.xxx.xx.x使用了无效的安全证书。该证书仅对xx.xxx.xx.x有效。错误代码:SSL_ERROR_BAD_CERT_DOMAIN”
现在xx.xxx.xx.x是可访问互联网的IP地址,并且上一行中的两个实例都具有完全相同的IP地址,我将IP用于CN字段。
单击SSL_ERROR_BAD_CERT_DOMAIN将显示: “无法与对等方安全通信:请求的域名与服务器的证书不匹配。HTTP严格传输安全性:false HTTP公钥固定:false证书链:----- BEGIN CERTIFICATE -----..... ..“
无论如何,我猜测在其当前配置中,Mozilla FireFox认为该站点实际上是有效的,但该站点具有无效的证书,并且造成混淆的原因可能是它希望使用域名而不是IP地址。< / p>
如果是这样,有什么办法可以告诉Firefox遵守基于IP地址的ssl证书?
同样,对于我来说,当前配置与Internet Explorer完美配合。
如您所知,当ssl-cert中有某些问题需要投诉时,内置IDE svn等工具和其他源代码控制客户端确实不喜欢它。
这就是我在Windows中创建和加载自己的Root CA Authority时遇到麻烦的原因。不,请不要建议letencrypt,它需要经常更新,而且我没有传入的OPEN端口,似乎需要更新这些端口。
thx!
答案 0 :(得分:0)
万岁!成功:)我经历了我认为IP与名称混淆的问题,发现我在[alt_names]部分下的extfile使用了DNS.1 = xx.xxx.xx.x
所以我只需编辑extfile并将DNS.1 = ...更改为IP.1 = xx.xxx.xx.x
然后,我只是重新创建了Web服务器的证书。对于任何想知道的人,这是实际的命令:
openssl x509 -req -in mywebserver.csr -CA myrootCA.pem -CAkey myrootCA.key -CAcreateserial -out ./certs/mynginxwebserverIP.crt -days 2555 -sha256 -extfile myextfile.cnf
那重写了我当前的.crt文件,我要做的就是nginx -s reload和bingo!
希望能帮助某人,因为这让我发疯了!
现在它在Firefox中可以正常工作了,我得到了令人欣慰的绿色锁:) 互联网浏览器不知道/不在乎它们之间的区别,而是通过两种方式:D