在一些移动浏览器上,比如Chrome,当我连接到https网站时,我会遇到一个ERR_CERT_AUTHORITY_INVALID错误。我并不是每个移动浏览器(比如Firefox)都有这个问题,在PC上也没有问题。
我的证书是Comodo扩展验证证书。我正在与Gandi.net签约,这是一个法国SSL认证机构,甘地负责获取Comodo EV证书并将其交给我。甘地给了我一个基础PEM证书+一个中级PEM证书。都是我装的。
我在https://www.ssllabs.com/ssltest/analyze.html上做了分析,上面写着“额外下载”其中一个证书(名为"COMODO RSA证书颁发机构“),同时我安装了从甘地获得的所有证书。
我试图查看这个线程,但是它没有帮助:“仅移动铬上无效”
有人知道怎么回事吗?谢谢。
发布于 2016-04-30 08:25:25
对于那些对此感兴趣的人来说,我是如何解决这个问题的。
问题:我的证书链中缺少一个中级Comodo证书。我的SSL证书颁发机构(Gandi.net)负责与Comodo的关系,而Gandi只给了我两个证书:一个基本证书+一个中间证书。两者均采用.pem格式。我安装了这两种浏览器,除了几个移动浏览器之外,几乎所有浏览器都安装了这两个浏览器。实际上,一个名为"COMODO证书颁发机构“的Comodo中间证书丢失了。
分两个步骤解决:
1)在这里找到包含所有Comodo证书的存储库,https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/620/0/which-is-root-which-is-intermediate。我从这个页面复制.PEM格式的https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/977/108/extended-validation-sha-2 (这里称为“#mediate1”,而不是"COMODO证书颁发机构“)。
2)将这个新的中间证书与我已经拥有的第一个中间证书(在Comodo网站上称为“#mediate2”)连接起来,方法是将这个新证书放在,即第一个证书的末尾。我是这样做的:
-----BEGIN CERTIFICATE-----
intermediate#2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
intermediate#1
-----END CERTIFICATE-----
希望能帮上忙!
发布于 2017-03-15 14:23:29
我在nginx下托管我的站点,我的android应用程序也有同样的问题。上面的接受答案向我介绍了我的解决方案:
当我获得证书(my-domain.crt)时,我创建了一个边界crt文件,该文件是通过将我的证书与ComodoRSADomainCA和ComodoRSAAddTrustCA PEM内容组合而生成的。
cat my-domain.crt ComodoRSADomain.crt ComodoRSAAddTrustCA.crt > ssl-boundle.crt
当我将ssl-boundle.crt链接到nginx时,客户端没有任何交换数据的问题。而且我在ssllabs上得到了一个很好的结果
:)
发布于 2016-04-24 10:39:46
证书链不完整。“额外下载”证明了这一点。
您必须发送链,包括ssllabs指示的缺失证书。
请注意,连接大多数情况下都能工作,因为浏览器在证书上保留了缓存。
https://stackoverflow.com/questions/36821931
复制相似问题