所有部署指南 部署

配置 Cloudflare 源站證書

當你使用 Cloudflare 作為 CDN/代理時,訪客連線到 Cloudflare 的邊緣伺服器。但 Cloudflare 和你的源站伺服器之間的連線呢?如果源站沒有證書,該連線可能是未加密的——這就違背了 HTTPS 的意義。

Cloudflare SSL 模式詳解

模式訪客 → CloudflareCloudflare → 源站安全性
OffHTTPHTTP❌ 無加密
FlexibleHTTPS ✅HTTP ❌⚠️ 虛假安全感
FullHTTPS ✅HTTPS(未驗證)⚠️ 已加密但不驗證證書
Full (Strict)HTTPS ✅HTTPS(已驗證)✅✅ 推薦

“Flexible” 模式是危險的。 你的訪客看到鎖頭圖示,但 Cloudflare→源站的連線是明文 HTTP。網路路徑上的任何人都能讀取流量。始終使用 Full (Strict)

使用 Let’s Encrypt 證書配置 Full (Strict)

最佳方案:在源站安裝一個真正的、公開信任的證書,然後啟用 Full (Strict)。

第一步:獲取 Let’s Encrypt 證書

使用 GetHTTPS 為你的域名獲取免費證書。你需要臨時禁用 Cloudflare 代理(DNS 設定中的灰色雲朵)以便 HTTP-01 驗證到達你的源站,或者使用 DNS-01 驗證(無論代理狀態都可用)。

DNS-01 方式(無需更改代理):

  1. 在 GetHTTPS 中,選擇 DNS-01 驗證
  2. 在 Cloudflare DNS 中新增 _acme-challenge TXT 記錄
  3. 完成驗證並下載證書

HTTP-01 方式:

  1. 在 Cloudflare DNS 中,將橙色雲朵 → 灰色雲朵(僅 DNS)
  2. 在 GetHTTPS 中完成 HTTP-01 驗證
  3. 獲取證書後,重新啟用橙色雲朵(代理模式)

第二步:安裝到源站伺服器

按照正常流程將證書安裝到 NginxApache

第三步:在 Cloudflare 中啟用 Full (Strict)

  1. 前往 Cloudflare 控制面板 → 你的域名
  2. SSL/TLSOverview
  3. 選擇 Full (Strict)

Cloudflare 現在會在連線之前驗證你的源站是否擁有有效的受信任證書。

替代方案:Cloudflare Origin CA 證書

Cloudflare 提供自己的 Origin CA 證書——免費證書,僅被 Cloudflare 信任,瀏覽器不直接信任。

如何獲取

  1. Cloudflare 控制面板 → SSL/TLSOrigin Server
  2. 點選 Create Certificate
  3. 選擇金鑰型別(RSA 或 ECDSA)和有效期(最長 15 年)
  4. 下載證書和私鑰
  5. 安裝到源站伺服器

與 Let’s Encrypt 的優劣對比

Cloudflare Origin CALet’s Encrypt (透過 GetHTTPS)
被誰信任僅 Cloudflare所有瀏覽器(公開信任)
有效期最長 15 年90 天
需要自動續簽不需要(有效期長)需要(每 60-90 天)
脫離 Cloudflare 可用
瀏覽器直接訪問❌(顯示錯誤)
費用免費免費

使用 Cloudflare Origin CA 的情況:你的源站始終在 Cloudflare 後面,且你希望零續簽管理。

使用 Let’s Encrypt 的情況:你可能會繞過 Cloudflare(維護、遷移),需要直接訪問源站,或者需要一個在任何地方都能工作的證書。

驗證 Full (Strict) 是否正常工作

設定完成後,測試連線是否完全加密:

  1. Cloudflare 控制面板 → SSL/TLSOverview 應顯示”Full (Strict)”
  2. 訪問你的網站 → 訪客應該看到 Cloudflare 的證書
  3. 直接檢查源站(繞過 Cloudflare):
    curl -I --resolve yourdomain.com:443:YOUR_ORIGIN_IP https://yourdomain.com
    這應該返回一個有效的 HTTPS 響應,帶有你的 Let’s Encrypt(或 Origin CA)證書。

常見問題

為什麼不直接用 Flexible 模式?

Flexible 模式加密了訪客→Cloudflare 的連線,但從 Cloudflare 到源站的流量是明文 HTTP。這意味著:

  • 你的 ISP、主機提供商或 Cloudflare 邊緣與你伺服器之間網路上的任何人都能讀取所有流量
  • 你的訪客看到鎖頭圖示,以為自己是安全的,但後端連線並不安全
  • 這對登入頁面、支付表單或任何敏感資料來說尤其危險

源站證書需要與域名完全匹配嗎?

對於 Full (Strict) 模式,是的——源站證書必須對 Cloudflare 連線的域名有效。example.com 的 Let’s Encrypt 證書可以工作。自簽名證書或其他域名的證書則不行。

可以使用萬用字元證書作為源站證書嗎?

可以。源站上的 *.example.com 萬用字元證書 可以配合 Full (Strict) 用於透過 Cloudflare 代理的任何子域名。

源站證書過期會怎樣?

Cloudflare 的 Full (Strict) 模式會檢查證書有效性。如果你的源站證書過期,Cloudflare 無法建立安全連線,你的網站會顯示 526 錯誤(Invalid SSL Certificate)。設定過期監控來防止這種情況。

相關文章

比較 2026-05-07
Let's Encrypt vs Cloudflare SSL:該用哪個?
Let's Encrypt 給你一張你擁有的憑證。Cloudflare 作為 CDN 代理管理 SSL。從隱私、控制權和使用場景比較兩種方案。
部署 2026-05-08
如何在 Nginx 上安裝 SSL 證書
在 Nginx 上安裝 SSL 證書的分步指南。涵蓋檔案上傳、完整 server 塊配置、TLS 最佳實踐、HTTP/2、HSTS、重新導向設定、測試以及 6 個常見錯誤的排查方法。
快速開始 2026-05-08
如何獲取免費 SSL 證書(分步指南)
5 分鐘從 Let's Encrypt 獲取免費 SSL 證書 — 無需安裝軟體、無需註冊賬號。涵蓋 4 種方法、兩種驗證方式、6 個平臺的安裝教程和故障排除。
在瀏覽器中取得免費 SSL 憑證
無需安裝,無需帳號。私鑰始終留在你的裝置上。
取得憑證