|
憑證安裝教學 - Linux (Apache與nginx) 跨簽憑證設定
發佈人 Adwin Xie, lastmodifiedby Seric Hsu 發表於 06 8月 2026 10:51 上午
|
|
|
※溫馨提醒※ 部分憑證商(如 Certum)為了因應 CA/Browser Forum 調整,有頒發新的 CA 憑證,已加強憑證的安全性, 針對舊版系統相容性問題,會額外提供「跨簽憑證(Cross-Sign)」,讓憑證鏈改走跨簽的根/中繼 CA。 在動手操作前,請您務必注意下列幾個要點: 1. 請確保您手上已備妥網站憑證檔(.crt)與對應私鑰檔(.key) 2. 請確保您已從憑證商下載跨簽用的中繼/根憑證檔案,並確認檔名為跨簽版本(而非預設版本),如有疑問請洽憑證商確認 3. 操作過程需要 sudo (root) 權限,且Apache伺服器需已安裝 mod_ssl 4. 請務必先看完教學說明後,再參照教學說明一步步操作 [重要] 本文將以 Certum 憑證商為例! 一、在動手操作前,建議先備份現有的網站設定檔,以防操作失誤時可以快速還原:
若您的發行版路徑不同(例如 CentOS/RHEL 為 /etc/httpd/conf.d),請依實際路徑備份。 二、如不清楚網站設定檔存放位置,可參考以下指令查看設定檔位置,參考上述指令備份設定檔後,再進行修改 Apache: sudo grep -rn '/etc/apache2/' -e 'example.com.tw' 2>/dev/null || sudo grep -rn '/etc/httpd/' -e 'example.com.tw' 2>/dev/null(請將example.com.tw 更換為實際使用網域) Nginx: sudo grep -rn '/etc/nginx/' -e 'example.com.tw' (請將example.com.tw 更換為實際使用網域) 三、確認跨簽憑證鏈的正確組合順序。跨簽憑證鏈通常由下而上排列如下: Certum跨簽憑證可參考 https://www.certum.eu/en/cert_expertise_root_certificates/ 官方列表下載 Subordinate CAs Cross Certificates 內容(請以憑證類型及金鑰加密模式下載對應跨簽憑證), 請務必以憑證商官方文件為準,確認跨簽用的中繼憑證檔名,避免誤用預設(非跨簽)版本的中繼憑證,否則跨簽將不會生效。 將網站憑證與跨簽中繼/根憑證,依上述順序合併成一個完整的憑證鏈檔案(合併時請以正確檔名操作):
合併時請注意,檔案之間不可有多餘空行分隔錯誤,且每張憑證都需保留完整的 -----BEGIN CERTIFICATE----- 至 -----END CERTIFICATE----- 區塊,缺漏將導致憑證鏈驗證失敗。
四、編輯該網站的 SSL 虛擬主機設定檔(例如 /etc/apache2/sites-available/your_domain-ssl.conf),將憑證路徑指向合併後的完整鏈檔:
Apache 2.4.8(含)以後版本,可直接將完整鏈放入 SSLCertificateFile,不需要再單獨設定 SSLCertificateChainFile。若您的版本較舊,請將網站憑證與鏈憑證分開設定。
五、儲存設定檔後,請先檢查語法是否正確:
CentOS/RHEL 系統請改用 sudo httpd -t(nginx 則為sudo nginx -t) 確認畫面顯示 Syntax OK 後,再進行下一步。
六、最後重新啟動 Apache(Nginx) 服務,使變更生效:
CentOS/RHEL 系統請改用 sudo systemctl restart httpd。 常見問題 Q1. 憑證鏈張數不正確? A1. 請確認合併檔案時,是否誤用了非跨簽版本的中繼憑證,或憑證區塊有缺漏。 Q2. 重新啟動後仍顯示舊憑證鏈? A2. 部分用戶端裝置的憑證信任快取時間較長,可能需要稍待一段時間,或依裝置說明清除信任快取。
| |
|
|
