【问题标题】:Comodo SSL: ERR_CERT_AUTHORITY_INVALID on Chrome mobile and Opera mobile (Android)Comodo SSL:在 Chrome 移动设备和 Opera 移动设备 (Android) 上的 ERR_CERT_AUTHORITY_INVALID
【发布时间】:2016-08-17 17:50:56
【问题描述】:

在某些移动浏览器上,例如适用于 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 上进行了分析,它显示其中一个证书(名为“COMODO RSA 证书颁发机构”)的“额外下载”,而我安装了从 Gandi 获得的所有证书。

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

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

【问题讨论】:

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


    【解决方案1】:

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

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

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

    【讨论】:

    • 好的,但问题是我不知道如何获得这个证书以及如何安装它
    • 你有什么服务器?例如,提供给 nginx 和 apache 的链是不同的。
    • 我有一个 Apache 服务器
    • 其实我不是由 Gandi 托管,而是 AlwaysData。我很确定我的证书安装是正确的,因为过去我已经在 Alwaysdata 上安装了 Gandi 证书,一切都很好。唯一的区别是它不是 Comodo EV 证书...感谢您的跟进!
    【解决方案2】:

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

    问题:我的证书链中缺少中间 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-----
    

    希望对您有所帮助!

    【讨论】:

    • 我的建议:始终检查您在 ssllabs.com/ssltest 上的 SSL 设置。并在更新证书后再次。发现这样的错误并警告您其他潜在的安全问题,这些问题可能 1)影响您的流量的安全性和 2)防止浏览器中的错误(恕我直言)一直在不断推动更好的安全设置并发出警告,在最坏的情况下阻止不跟上的网站的案例。
    • 只是想说声谢谢。在经历了很多挫折之后,这个回复帮助了我。
    【解决方案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 上也得到了这个不错的结果:

    :)

    【讨论】:

      【解决方案4】:

      如果问题仍然存在,则在创建捆绑包后,在我的情况下,.pem 末尾有一些额外的空格,Chrome 显示为不安全,并且在 Firefox 上运行良好。删除它们后一切正常,希望这对某人有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-03-13
        • 1970-01-01
        • 1970-01-01
        • 2021-04-20
        相关资源
        最近更新 更多