Cloudflare 525 SSL handshake failed:檢查原站 TLS 與 SNI

網站顯示 Cloudflare 525 時,瀏覽器到 Cloudflare 的 TLS 可能正常,失敗的是 Cloudflare 到原站的 TLS 握手。官方文件指出,525 發生在使用 Full 或 Full (strict) 且原站握手失敗時;526 則是另一個與原站憑證驗證有關的錯誤。

先記錄錯誤與部署變更

記錄出錯主機名稱、時間與時區、Ray ID、是否間歇發生,以及最近是否更換原站憑證、IP、代理或 Web 伺服器設定。請主機商比對相同時間的 Nginx/Apache TLS 錯誤日誌,以及原站 443 監聽與防火牆。不要在公開場合貼出原站 IP、私鑰或完整連線日誌。

以 SNI 測試指定原站

有權管理原站時,可由獲准的測試機使用 OpenSSL。範例 IP 為文件保留位址,請換成實際原站 IP 與主機名稱;命令會與指定 IP 的 443 連線,同時使用 -servername 提供 SNI,並以 -verify_hostname 核對名稱。

openssl s_client -connect 192.0.2.10:443 -servername www.example.com -verify_hostname www.example.com -verify_return_error -showcerts

觀察是否完成握手、伺服器提供的憑證主體與有效期、憑證鏈,以及驗證結果。若連線逾時,先查路由及防火牆;若握手失敗,查 TLS 協定、密碼套件和原站日誌;若名稱不符,核對 SNI 對應的虛擬主機與憑證。命令輸出可能包含敏感架構資訊,分享前應遮蔽。

這是測試機到原站的路徑,不等於 Cloudflare 到原站的路徑;原站可能只允許 Cloudflare IP。Cloudflare Origin CA 憑證也可能不被測試機預設信任,需由管理者使用正確信任鏈判讀;測試機不信任不代表 Cloudflare 一定不信任。不要用忽略驗證的結果宣稱憑證有效。詳細參數見 OpenSSL 官方文件。

修正及驗收

先備份原站 TLS 設定與既有憑證鏈,確認私鑰受保護。由主機管理者針對證據修正錯誤虛擬主機、缺漏的憑證鏈或不相容的 TLS 設定,依平台程序測試設定後再重新載入。不要為排錯切換至較弱模式或關閉驗證。完成後重跑 SNI 測試,從外網連續測試原失敗網址及其他共用站台,並觀察 525 與原站日誌。若錯誤增加,依變更紀錄還原原設定及憑證,再檢查載入結果。若實際是 522 逾時,請參考522 排查。

相連文章

臉書留言

一般留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *