Windows-Server-2008-R2

Comodo PositiveSSL + Windows 2008R2 / IIS7.5:僅在 Android 上出錯

  • September 17, 2015

我有一個 SSL 證書,它可以在所有主要的桌面瀏覽器(IE、Chrome、FF)以及 Windows Phone 和 iOS 上正確使用,但在 Android 上。

我想我已經按正確的順序安裝了我的證書,因為它在伺服器上顯示了證書層次結構:

(root) AddTrust External CA \ (intermediate) Comodo RSA Certification Authority \ Comodo RSA Domain Validation Secure Server CA \ myunluckydomainnameexample.com

我知道,只有 AddTrust 在 Android 的根 CA 列表中,所以應該是中間 CA 的問題。如何在我的 Windows 2008 R2 上進一步調查它?

我找到了 openssl 工具:

       $ openssl s_client -connect myunluckydomainnameexample.com:443

CONNECTED(00000003)
   depth=1 C = GB, ST = Greater Manchester, L = Salford, O = COMODO CA Limited, CN = COMODO RSA Domain Validation Secure Server CA
   verify error:num=20:unable to get local issuer certificate
   verify return:0
   ---
   Certificate chain
    0 s:/OU=Domain Control Validated/OU=PositiveSSL/CN=skaelede.hu
      i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
    1 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
      i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
   ---
   Server certificate
   -----BEGIN CERTIFICATE-----

我已經將它的輸出與一個已知的工作站點進行了比較,https://ssllabs.com它給出了以下輸出:

$ openssl s_client -connect ssllabs.com:443
CONNECTED(00000003)
depth=2 C = GB, ST = Greater Manchester, L = Salford, O = COMODO CA Limited, CN = COMODO RSA Certification Authority verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
0 s:/OU=Domain Control Validated/OU=PositiveSSL/CN=www.ssllabs.com
  i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
1 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
  i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
2 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
  i:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
---
Server certificate
-----BEGIN CERTIFICATE-----

..我在這裡缺少哪個證書?

證書儲存中的過多修改似乎會導致證書鏈處於不確定狀態,這無法通過重新啟動 IIS 來解決。在伺服器上按計劃重新啟動後,CA 鏈中的所有更改都生效,並且從那時起它按預期工作。

順序需要是 1) 伺服器 CRT 2) 域/EV/WildC CRT 3) 2nd CA

我剛剛解決了這個問題(Chrome Android 上的 nogo),這是我使用域證書修復它的方法。

解壓縮我在電子郵件中收到的 zip 文件

unzip www_mysite_com.zip

使用所有 CA 創建一個證書包,但跳過根目錄COMODORSAAddTrustCA.crt

cat www_mysite_com.crt COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt > www.mysite.com.bundle.crt 

我正在使用 nginx,所以我的 crt 行如下所示:

ssl_certificate     /etc/nginx/ssl/www.mysite.com.bundle.crt;

效果很好,我終於在 Android 上使用了 chrome。

問候

引用自:https://serverfault.com/questions/627143