Comodo SSL:Chrome移动版和Opera移动版(Android版)上的ERR_CERT_AUTHORITY_INVALID

时间:2016-04-24 10:28:21

标签: android google-chrome ssl https ssl-certificate

在某些移动浏览器上,例如适用于Android的Chrome移动版,当我连接到我的https网站时,我收到ERR_CERT_AUTHORITY_INVALID错误。 我在每个移动浏览器(如Firefox)上都没有这个问题,并且在PC上没有问题。

我的证书是Comodo扩展验证证书。 我正在与法国SSL认证机构Gandi.net签约,Gandi负责获得Comodo EV证书并将其交给我。 Gandi给了我一个基础PEM证书+一个中级PEM证书。我安装了两个。

我在https://www.ssllabs.com/ssltest/analyze.html上进行了分析,并在我安装了从Gandi获得的所有证书时,为其中一个证书(名为“COMODO RSA证书颁发机构”)说“额外下载”。

我试图调查这个帖子,但它没有帮助: SSL cert "err_cert_authority_invalid" on mobile chrome only

有人知道出了什么问题吗?感谢。

4 个答案:

答案 0 :(得分:11)

对于那些感兴趣的人,我是如何解决这个问题的。

问题:证书链中缺少中间Comodo证书。我的SSL认证机构(Gandi.net)负责与Comodo的关系,而Gandi只给了我两张证书:基本证书+中间证书。两者都是.pem格式。我安装了两个,除了几个移动浏览器之外,它几乎适用于任何浏览器。实际上缺少名为“COMODO RSA认证机构”的Comodo中间证书。

分两步解决:

1)在此https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/620/0/which-is-root-which-is-intermediate找到包含所有Comodo证书的存储库。我从此页面https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/977/108/extended-validation-sha-2复制粘贴的.PEM格式(在此处称为“#intermediate1”,而不是“COMODO RSA证书颁发机构”)。

2)将这个新的中间证书与我已经拥有的第一个中间证书(在Comodo网站上称为“#intermediate2”)连接起来,将新证书放在第一个证书的结束。我是这样做的:

-----BEGIN CERTIFICATE-----
intermediate#2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
intermediate#1
-----END  CERTIFICATE-----

希望它会有所帮助!

答案 1 :(得分:5)

我在nginx下托管我的网站,我的Android应用程序也遇到了同样的问题。以上accepted answer指导我解决问题:

当我拿到证书( my-domain.crt )时,我创建了一个boundle crt文件,该文件是通过将我的证书与ComodoRSADomainCAComodoRSAAddTrustCA PEM内容相结合而生成的/ p>

cat my-domain.crt ComodoRSADomain.crt ComodoRSAAddTrustCA.crt > ssl-boundle.crt

当我将 ssl-boundle.crt 链接到nginx时,客户端在交换数据方面没有任何问题。而且我在ssllabs上得到了这个不错的结果:

The happy score:)

答案 2 :(得分:3)

证书链不完整。 "额外下载"证明这一点。

您必须发送包含ssllabs指示的缺失证书的链。

请注意,连接工作大部分时间都在工作,因为浏览器会在证书上保留缓存。

答案 3 :(得分:0)

如果问题仍然存在,创建捆绑后,在我的情况下,.pem结尾处有一些额外的空格,Chrome显示为不安全,而且Firefox运行良好。在我删除它们之后一切顺利,希望这有助于某人。