【问题标题】:Positive SSL trusted in Chrome for desktop but not for Android正向 SSL 在 Chrome 中受信任,但在 Android 中不受信任
【发布时间】:2015-05-12 11:32:11
【问题描述】:

我刚刚购买了一个正向 SSL 证书,但它不适用于 Android 版 Chrome,我收到了 NET::ERR_CERT_AUTHORITY_INVALID。不过,桌面版 Chrome 一切正常。

这就是我配置 apache2 服务器的方式:

# File /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
   ServerName example.com
   Redirect permanent / https://example.com/
</VirtualHost>

<VirtualHost *:443>

        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html

        ServerName example.com
        SSLEngine on
        SSLCertificateFile  /root/ssl/certificate/example.com.crt
        SSLCertificateKeyFile  /root/ssl/example.com.key
        SSLCertificateChainFile /root/ssl/certificate/intermediates.crt
        # In version 2.4.8 or newer
        #SSLCACertificateFile /root/ssl/certificate/intermediates.crt

        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

这就是我创建intermediates.crt的方式:

cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt > intermediates.crt

我错过了什么?

【问题讨论】:

  • 不可能说没有 URL 或 *.crt 文件的实际内容。

标签: android apache google-chrome ssl


【解决方案1】:

我认为中间体是错误的,但仔细查看 Comodo 网站,您的配置似乎是正确的——正确的证书按正确的顺序排列。

您是否尝试过通过SSL Labs Server Test 运行您的网站?

【讨论】:

    【解决方案2】:

    在尝试了几乎所有组合之后,我找到了解决方案。我必须使用所有文件创建捆绑包:我的证书、两个中间文件和根。

    cat example.com.crt \
        COMODORSADomainValidationSecureServerCA.crt \
        COMODORSAAddTrustCA.crt \
        AddTrustExternalCARoot.crt > intermediates.crt
    

    【讨论】:

    • 根据 Apache 文档,SSLCertificateChainFile 并不意味着包含服务器证书,尽管显然 it can。如果您有 Apache 2.4.8 或更高版本,您可以直接使用带有SSLCertificateFile 的连接文件,跳过SSLCertificateChainFile。无论如何,你do not need to include the root certificate。我不确定最终为您解决了什么问题,但SSL Labs Server Test 可以帮助确定证书链的问题。
    猜你喜欢
    • 2012-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-15
    • 1970-01-01
    相关资源
    最近更新 更多