Centos

CentOS 7 Cloudflare 完整 SSL 521 錯誤?

  • March 23, 2019

好的,所以我正在嘗試使用 WHMCS,為了在 https 上執行,我必須在 CloudFlare 中將我的 SSL 設置為 Full。如果網站沒有崩潰,那就太好了。如果我直接連接到IP,它工作正常,但是當我通過域名連接時它不起作用。我收到 521 伺服器錯誤。

我正在使用 CentOS 7 並安裝了 firewalld。我將 CloudFlare 擁有的 IP 地址列入白名單。

firewall-cmd --get-active-zones
public
sources: 173.245.48.0/20 103.21.244.0/22 103.22.200.0/22 103.31.4.0/22 141.101.64.0/18 108.162.192.0/18 188.114.96.0/20 197.234.240.0/22 198.41.128.0/17 162.158.0.0/15 104.16.0.0/12 172.64.0.0/13 131.0.72.0/22

這些是 Cloudflare 網站上列出的所有 IP。我嘗試重新啟動防火牆、重新啟動 Apache,甚至重新啟動伺服器,但仍然收到 521 錯誤。我錯過了什麼?我已經嘗試了他們幫助頁面上的所有內容,可以在這裡看到:https: //support.cloudflare.com/hc/en-us/articles/200171916-Error-521-Web-server-is-down

CloudFlare 目前提供四種 TLS/SSL 設置: - Off - Flexible - Full - Full Strict

鑑於您評論說當您切換到靈活時它可以工作,這讓我認為您沒有在自己的伺服器上設置證書。靈活意味著 cloudflare 通過未加密的 http 連接到您的伺服器。

由於您聲明 WHMCS 需要 Full,因此該模式下的 cloudflare 通過 https 連接到您的伺服器,但因此需要您伺服器上的證書:“

$$ .. $$在啟用完整 SSL 選項之前,將您的源 Web 伺服器配置為允許埠 443 上的 HTTPS 連接,並提供自簽名 SSL 證書、Cloudflare Origin CA 證書或從證書頒發機構購買的有效證書。” 本文對此進行了解釋:https: //support.cloudflare.com/hc/en-us/articles/200170416-End-to-end-encryption-with-Cloudflare-Part-3-SSL-options

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