🔗 憑證鏈驗證器

檢測憑證鏈完整性,診斷缺少的中繼憑證問題

📚 使用教學

步驟 1:取得憑證

您可以透過以下方式取得網站的憑證鏈:

🌐 方法 1:使用瀏覽器匯出

⌨️ 方法 2:使用 OpenSSL 命令

# 取得完整憑證鏈
openssl s_client -connect example.com:443 -showcerts < /dev/null 2>/dev/null | \\
  sed -n '/BEGIN CERTIFICATE/,/END CERTIFICATE/p' > cert-chain.pem

步驟 2:貼上憑證鏈

步驟 3:解讀結果

💡 提示:如果您只有葉證書,可以使用 SSL/TLS 線上檢測器 自動檢查網站的完整憑證鏈配置。

❓ 常見問題

Q1: 什麼是中繼憑證(Intermediate Certificate)?

SSL/TLS 憑證鏈通常有三層結構:

  • 🌐 葉證書(Leaf Certificate):安裝在網站伺服器上的憑證,包含網域名稱
  • 🔐 中繼憑證(Intermediate Certificate):由憑證授權機構(CA)的中繼 CA 簽發,連接葉證書和根憑證
  • 🏛️ 根憑證(Root Certificate):由頂層 CA 自己簽發,已內建在所有瀏覽器和作業系統中

中繼憑證的作用是建立信任鏈,證明您的憑證是由受信任的 CA 簽發的。

Q2: 為什麼會缺少中繼憑證?

常見原因包括:

  • 伺服器配置錯誤:安裝憑證時只上傳了葉證書,沒有包含中繼憑證
  • 憑證檔案不完整:從 CA 下載時只下載了主要憑證
  • 自動更新問題:使用 Let's Encrypt 等自動化工具時配置錯誤
  • 憑證合併錯誤:多個憑證檔案沒有正確合併

Q3: 缺少中繼憑證會造成什麼問題?

即使網站能正常運作,缺少中繼憑證也可能導致:

  • 瀏覽器顯示「不安全」警告:特別是舊版瀏覽器或行動裝置
  • 📱 行動裝置無法連線:iOS/Android 設備可能無法驗證憑證
  • 🤖 API 呼叫失敗:某些程式庫和工具無法建立 HTTPS 連線
  • 效能下降:瀏覽器需要額外時間從網路下載中繼憑證
  • 🔒 安全性降低:某些嚴格的安全政策會直接拒絕連線

Q4: 如何修復缺少中繼憑證的問題? ⭐

這是最重要的問題!以下提供三種解決方法:

方法 1:從 CA 官網下載中繼憑證 📥

  1. 找到您的憑證是由哪個 CA 簽發的(查看憑證中的「Issuer」欄位)
  2. 到 CA 官網搜尋「Intermediate Certificate」或「Certificate Chain」
  3. 下載對應的中繼憑證檔案(通常是 .pem 或 .crt 格式)
  4. 將中繼憑證合併到伺服器的憑證檔案中

常見 CA 的中繼憑證下載連結:

方法 2:使用線上工具自動取得 🔧

方法 3:重新配置伺服器 ⚙️

Nginx 配置範例:

# 將葉證書和中繼憑證合併到一個檔案
# fullchain.pem = 葉證書 + 中繼憑證
ssl_certificate /path/to/fullchain.pem;
ssl_certificate_key /path/to/privkey.pem;

Apache 配置範例:

SSLCertificateFile /path/to/cert.pem
SSLCertificateKeyFile /path/to/privkey.pem
SSLCertificateChainFile /path/to/chain.pem

手動合併憑證檔案:

# 將葉證書和中繼憑證合併
cat cert.pem intermediate.pem > fullchain.pem

Q5: 如何驗證修復是否成功?

修復後,使用以下方式驗證:

  1. 使用本工具重新檢查:重新匯出憑證鏈並驗證,應該看到綠色的「憑證鏈有效」✅
  2. 使用 SSL Labs:到 SSL Labs 輸入您的網域,檢查評級(應該是 A 或 A+)
  3. 使用瀏覽器開發者工具
    • 開啟開發者工具(F12)
    • 切換到「Security」或「安全性」標籤
    • 檢查憑證鏈是否完整
  4. 使用 OpenSSL 驗證
    openssl s_client -connect yourdomain.com:443 -showcerts

Q6: 根憑證需要安裝到伺服器嗎?

不需要!根憑證已經內建在所有主流瀏覽器和作業系統中。

您只需要安裝:

  • ✅ 葉證書(您的網站憑證)
  • ✅ 中繼憑證
  • ❌ 根憑證(不需要,也不建議安裝)

實際上,如果您在伺服器配置中包含根憑證,反而會增加不必要的傳輸量。

Q7: 我的資料會被上傳到伺服器嗎?

不會!所有憑證驗證都在您的瀏覽器本地執行,使用 JavaScript 和 forge.js 函式庫進行解析和驗證。

您的憑證資料:

  • ✅ 完全保留在您的瀏覽器中
  • ✅ 不會傳送到任何伺服器
  • ✅ 不會被記錄或儲存
  • ✅ 可以安全地分析敏感憑證

Q8: 自簽憑證(Self-Signed Certificate)可以驗證嗎?

可以!本工具可以驗證自簽憑證的結構和簽章。

但請注意:

  • ⚠️ 自簽憑證不會被標記為「受信任」,因為它沒有由公認的 CA 簽發
  • ✅ 如果是完整的自簽憑證鏈(包含自建的中繼和根 CA),工具會正確顯示層級結構
  • 💡 自簽憑證適合內部測試、開發環境或企業內網使用
  • 🔒 對外公開的網站,建議使用免費的 Let's Encrypt 憑證

Q9: Let's Encrypt 的憑證會有中繼憑證問題嗎?

通常不會!Let's Encrypt 的自動化工具(如 Certbot)會自動處理:

  • ✅ 自動下載完整的憑證鏈
  • ✅ 自動合併憑證檔案(fullchain.pem)
  • ✅ 自動配置到伺服器

如果遇到問題,可能是:

  • 手動安裝時只複製了 cert.pem 而不是 fullchain.pem
  • 伺服器配置指向錯誤的檔案
  • Certbot 版本過舊

解決方法:確保使用 fullchain.pem 而不是 cert.pem

Q10: 憑證鏈的順序重要嗎?

在伺服器配置中,順序非常重要

  • 正確順序:葉證書 → 中繼憑證 → (不含根憑證)
  • 錯誤順序:中繼憑證 → 葉證書(瀏覽器可能無法驗證)

但在本工具中,順序不重要!工具會自動識別憑證類型並正確排序。

🔒 所有驗證都在本地執行,您的憑證資料絕對安全。 查看所有工具 | 憑證解析器 | SSL 檢測器