首页 文章

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

提问于
浏览
17

在某些移动浏览器上,例如适用于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 Certification Authority")说了"extra download" .

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

有人知道什么是错的吗?谢谢 .

4 回答

  • 5

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

    问题:证书链中缺少中间Comodo证书 . 我的SSL认证机构(Gandi.net)负责与Comodo的关系,而Gandi只给了我两张证书:基本证书和中间证书 . 两者都是.pem格式 . 我安装了两个,除了几个移动浏览器之外,它几乎适用于任何浏览器 . 实际上缺少名为“COMODO RSA认证机构”的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(这里称为"#intermediate1",而不是"COMODO RSA Certification Authority") .

    2)通过将此新证书放在第一个证书的 the end 处,将此新中间证书与我已经拥有的第一个中间证书(在Comodo网站上称为"#intermediate2")连接起来 . 我是这样做的:

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

    希望它会有所帮助!

  • 3

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

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

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

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

    The happy score
    :)

  • 0

    证书链不完整 . “额外下载”证明了这一点 .

    您必须发送链,包括ssllabs指示的缺失证书 .

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

  • 11

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

相关问题