Windows-Server-2008-R2
Windows Server 2008 R2 上握手期間的 SSL 連接錯誤
**更新:**通過重新滾動證書解決了問題。
我有一個執行 HTTPS 隧道服務的 Windows 2008 R2 伺服器。該軟體使用通過 Windows 證書儲存提供的證書。該證書位於本地電腦私有證書中。它支持帶有簽名和密鑰加密的伺服器和客戶端身份驗證。
證書鏈
證書鏈看起來不錯。這是一個 Thawte SSL123 證書。
- Thawte 高級伺服器 CA (SHA1)$$ e0 ab 05 94 20 72 54 93 05 60 62 02 36 70 f7 cd 2e fc 66 66 $$
- 解凍主根 CA$$ 1f a4 90 d1 d4 95 79 42 cd 23 54 5f 6e 82 3d 00 00 79 6e a2 $$
- 解凍 DV SSL CA$$ 3c a9 58 f3 e7 d6 83 7e 1c 1a cf 8b 0f 6a 2e 6d 48 7d 67 62 $$
- 伺服器證書
問題
大多數瀏覽器在沒有任何警告的情況下接受證書。但是 Windows XP SP3 上的 IE 7 和 OSX 上的 Opera 12 只是報告連接錯誤。歌劇抱怨:
Secure connection: fatal error (552) https://www.example.com/ Opera was not able to connect to the server, because the server does not communicate via any secure protocol known to Opera.
使用連接測試
openssl s_client -connect www.example.com:443 -state
說:CONNECTED(00000003) SSL_connect:before/connect initialization SSL_connect:SSLv2/v3 write client hello A 52471:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:/SourceCache/OpenSSL098/OpenSSL098-35.1/src/ssl/s23_lib.c:182:
ssldump -aAHd host www.example.com
報告期間curl https://www.example.com/
:New TCP connection #1: localhost(53302) <-> www.example.com(443) 1 1 0.0235 (0.0235) C>SV3.1(117) Handshake ClientHello Version 3.1 random[32]= 50 77 56 29 e8 23 82 3b 7f e0 ae 2d c1 31 cb ac 38 01 31 85 4f 91 39 c1 04 32 a6 68 25 cd a0 c1 cipher suites Unknown value 0x39 Unknown value 0x38 Unknown value 0x35 TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA TLS_RSA_WITH_3DES_EDE_CBC_SHA Unknown value 0x33 Unknown value 0x32 Unknown value 0x2f Unknown value 0x9a Unknown value 0x99 Unknown value 0x96 TLS_RSA_WITH_RC4_128_SHA TLS_RSA_WITH_RC4_128_MD5 TLS_DHE_RSA_WITH_DES_CBC_SHA TLS_DHE_DSS_WITH_DES_CBC_SHA TLS_RSA_WITH_DES_CBC_SHA TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA TLS_RSA_EXPORT_WITH_DES40_CBC_SHA TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 TLS_RSA_EXPORT_WITH_RC4_40_MD5 Unknown value 0xff compression methods unknown value NULL 1 0.0479 (0.0243) S>C TCP FIN 1 0.0481 (0.0002) C>S TCP FIN
Thawte 提供了兩個基於 Java 的 SSL 檢查器。舊版 Thawte SSL 證書安裝檢查器和sslToolBox。兩者都在 Windows XP 下驗證證書,但在 OSX 和 Windows 2008 R2 下報告連接錯誤。
我沒有找出問題所在,但通過重新註冊新證書解決了它。這次使用 IIS 管理器而不是使用 Windows 證書管理器手動進行。
所以我唯一的建議是如果事情太奇怪並且尋找錯誤比重新開始需要更多的時間,那就從頭開始。