SSL 不适用于 Android 手机

SSL 不适用于 Android 手机

我从 Namecheap 购买了 Comodo SSL。现在,SSL 在桌面上运行良好,但在手机上却收到“此连接不是私密的”提示。在 Android 上的 Chrome 上

这是我的虚拟主机文件:

server {
       listen         80;
       server_name    www.-------------.com;
       return         301 https://www.-------------.com$request_uri;
}

server {

    listen 443 ssl;

    root /var/www/-------------.com/html;
    index index.html index.htm;

    ssl_certificate /etc/nginx/ssl/ssl-bundle.crt;
    ssl_certificate_key /etc/nginx/ssl/navarrarpg_com.key;

    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;

    ssl_prefer_server_ciphers on;
    ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;

    server_name www.-------------.com;

    location / {
        try_files $uri $uri/ =404;
    }
}

以下是我收到的四个文件:

  • 添加信任外部CARoot.crt
  • COMODORSAAddTrustCA.crt
  • COMODORSADomainValidationSecureServerCA.crt
  • -------------_com.crt

当然,然后我使用该命令将它们全部捆绑在一起,以使用另一个命令获取捆绑的证书和密钥。

现在,当我去https://www.digicert.com/help/然后我输入我的地址...它说我安装正确。

我检查了我的证书安装以确保我的链正确:

  • Comodo RSA 认证机构
    • Comodo RSA 域验证安全服务器 CA
      • -------------.com

我使用了以下命令:

cat -------------_com.crt COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > ssl-bundle.crt

摘自本指南:https://gist.github.com/bradmontgomery/6487319获取 ssl 捆绑证书。

为什么我的网站无法安全地显示在 Android 手机上,但却可以显示在桌面上?

NET::ERR_CERT_AUTHORITY_INVALID我的手机出现错误

答案1

证书链中的一个证书结尾为AddTrust 外部 CA 根您的服务器提供的内容缺少 (02faf3e291435468607857694df5e45b68851868)。

具体来说,中级证书COMODO RSA 认证机构(f5ad0bcc1ad56cd150725b1c866c30ad92ef21b0)不包含在您所提供内容中。

还可以看到,实际的锚点被不必要地包含进去了。也许这两个证书以某种方式被调换了?

例如SSL 实验室报告

答案2

我最近在 namecheap/comodo 证书方面也遇到了同样的问题!(但是天啊,要 1.99 美元)

事实证明它只是花了很长时间来传播(?)...我不知道如何验证 SSL 证书。

所有桌面浏览器都运行良好,Safari 移动版很好,甚至 Tor 浏览器也喜欢它们,但 Chrome 移动版给我带来了问题,说证书不是由经过验证的人员签名的。

查看我的连锁店https://kek.host

几个小时后(比其他浏览器长得多),我在 Chrome 移动版中看到了绿条 :)

相关内容