我们通过 DNSimple 购买了 SSL 证书并将其安装在我们的 Heroku SSL 端点上。现在通过 SSL 导航到应用程序在 Chrome 和 Safari 上运行良好,但 Firefox 显示“此连接不受信任”错误。为什么只有 Firefox 不信任 SSL 证书?
3 回答
我们发现了问题:
Heroku 文档指向以下 bundle.pem 文件,该文件不适用于 FIREFOX: https : //knowledge.rapidssl.com/library/VERISIGN/ALL_OTHER/RapidSSL%20Intermediate/RapidSSL_CA_bundle.pem
正确的 bundle.pem 文件位于:
https
://knowledge.rapidssl.com/library/VERISIGN/INTERNATIONAL_AFFILIATES/RapidSSL/AR1548/RapidSSLCABundle.txt
,如RapidSSL 站点所示。
Heroku 文档需要更新。希望这可以节省其他人一些时间..
更新:我们向 Heroku 报告了这个问题,他们更新了他们的文档,所以这不再是一个问题。
Mozilla 在其产品中包含一个证书颁发机构 (CA) 列表,Google、Apple、Microsoft 和其他公司也是如此。如果您的证书可以追溯到其中之一,那么浏览器将信任它。如果没有,您必须添加例外,或将证书导入浏览器。
包含的 CA 列表是根据不同的浏览器制造商的心血来潮创建的。有些包含证书的根 CA,而 Mozilla 似乎没有。
您可以在此处获取 Mozilla 包含的 CA 列表。检查您的证书详细信息。如果根 CA 在此列表文件中,则它是 Mozilla 的一个错误。如果不是,您可以尝试询问他们是否会将其包含在下一个版本中。
这是 rapidssl 的问题,但不是你的问题。
你不仅应该提供server certificate
,而且应该连接你的server certificate
和INTERMEDIATE ca certificate
。
做
$ cat ca_certificate.crt >> server_.crt
并重新启动你的 nginx。
你可以在你购买证书的网站上找到ca证书。