MS Server 2012 TLS 連接問題
我們使用眾所周知的支付系統,從我們的 RDS 伺服器 (MS Server 2012) 訪問今天已完全停止。
我不禁認為它與 cihpers 和/或 TLS/SSL 版本有關。
應用程序拋出(看起來像一個通用的 Win 錯誤)…
HttpSendRequestFailed with error 12029.
然後,如果我開車進入事件日誌,我可以找到多個顯示此內容的日誌..
A fatal alert was received from the remote endpoint. The TLS protocol defined fatal alert code is 70.
然而,奇怪的是,我可以在我的 Server 2008 R2 機器、Win 7 客戶端機器和 Win 10 機器上完美地連接到這個支付提供商。
我在這裡找到了一些修補程序
但我沒有太多的快樂,非常感謝任何幫助。
原來我需要的是“使用 TLS 1.1”和“使用 TLS 1.2”。我沒有使用瀏覽器,但我假設應用程序將這些設置用於 Web 請求,並且如其他答案中所述,TLS 1.0 作為 PCI-DSS 3.1 的一部分已關閉
看
Internet Explorer > Internet Options > Advanced > Settings
錯誤程式碼 70 是協議版本錯誤。簡而言之,客戶端嘗試使用的協議版本被辨識但不受支持。
https://www.rfc-editor.org/rfc/rfc5246#appendix-A.3
這可能不是最好的答案,但我會嘗試在 7、10 和 2008 上使用IISCrypto來查看正在使用哪些協議、密碼、雜湊和密鑰交換,並將它們與 2012 上使用的內容進行比較。
請注意,有一些設置可以為客戶端和伺服器端啟用協議/密碼。因此,您可以在伺服器端啟用 2012 的協議/密碼,但忽略將 2012 上的協議/密碼設置為客戶端。這就是 ISSCrypto 派上用場的地方,因為它可以讓您以圖形方式查看伺服器和客戶端的協議/密碼設置。
由於您提到了支付系統,我懷疑涉及 PCI-DSS 合規性,並且在 PCI-DSS 3.1 要求中您不能再使用 TLS 1.0 協議。您的 2012 上的 TLS 1.1 和 TLS 1.2 可能在伺服器端啟用但在客戶端未啟用(並且您的 2012 在這方面充當客戶端)。錯誤程式碼 70 適合這種情況。