SSL 對等方無法協商一組可接受的安全參數
我按照本指南的第 1B 節創建了一個證書並自行簽名,並設置 Apache 以使用該證書,但每當我嘗試安全地查看我的網站時,Firefox 都會出現此錯誤:
安全連接失敗
連接到 animuson.com 時出錯。
SSL 收到超過最大允許長度的記錄。
(錯誤程式碼:ssl_error_rx_record_too_long)
我先用4096試了一下。然後,我沒有使用指南中的 4096,而是使用了 1028(我認為這是正常使用的尺寸)。我在 CentOS 5 上使用 APache2 ……
從“/etc/httpd/conf/extra/httpd-ssl.conf”(當然壓縮在一起):
Listen 443 SSLEngine On SSLCertificateFile "/etc/httpd/conf/ssl/server.crt" SSLCertificateKeyFile "/etc/httpd/conf/ssl/server.key"
有任何想法嗎?
編輯
我從他們的預設 ssl.key 和 ssl.crt 目錄中移動了這些英里,我做了一些我不記得的其他事情,這似乎有效。它開始顯示“添加異常”頁面,我通過根證書安裝到我的瀏覽器,現在它顯示以下錯誤:
安全連接失敗
連接到 animuson.com 時出錯。
SSL 對等方無法協商一組可接受的安全參數。
(錯誤程式碼:ssl_error_handshake_failure_alert)
我不知道這意味著什麼,也不知道您可能需要什麼資訊來幫助我解決這個問題。
偉大的!因此,為了清楚起見,您正處於錯誤所在的位置
SSL_ERROR_HANDSHAKE_FAILURE_ALERT
。一種很好的調查方法是
openssl s_client -state -debug -showcerts -verify 0 -connect example.com:443
(以及各種有用的選項),並且您提供了實際的伺服器名稱,對您很有幫助。
握手錯誤是由 SSL / TLS握手期間的錯誤引起的。我們得到了很好的證書,這讓我認為問題要麼是
CertificateRequest
伺服器響應失敗,要麼是密碼套件的問題。後一個問題有它自己的一組錯誤消息,現在我考慮得更多。Firefox 的NSS 和 SSL 錯誤程式碼在這裡很方便。
SSLVerifyClient require
在 Apache 配置中確實需要客戶端提供有效的證書來向伺服器進行身份驗證,這是您確認的問題。