什麼是 OCSP Stapling?如何開啟
· CSR.plus 團隊

- •OCSP Stapling 將帶時間戳、CA 簽名的吊銷證明附加到 TLS 握手——省去一次網路往返,也不會把訪客 IP 洩露給 CA。
- •它消除了線上 OCSP 回應器這個單點故障:CA 當機時握手依然能完成。
- •Nginx 和 Caddy 各一行設定即可開啟;目前約 96% 的用戶端支援它。
200ms 網路延遲下的 TLS 握手耗時(毫秒)
完整握手,含用戶端驗證。
掃描網站的 OCSP Stapling 部署情況
樣本:前 100 萬網域,2026 年 8 月。
OCSP 是什麼
OCSP(線上憑證狀態協定)是瀏覽器在信任憑證前檢查其是否被吊銷的方式。瀏覽器向憑證頒發機構的回應器詢問「這張憑證還有用嗎」,得到一份簽名的「是/否」答覆。沒有狀態檢查,被破解或吊銷的憑證就會一直被信任到過期。
傳統 OCSP 的三大問題
一是速度:每次新連線都要向 CA 發起一次額外的網路往返。二是可用性:回應器緩慢或無法連線時,瀏覽器必須在中斷連線與不驗證放行(soft-fail)之間做選擇。三是隱私:每個訪客的 IP 都會暴露給憑證頒發機構,等於在替使用者累積瀏覽記錄。
Stapling 如何解決這三點
啟用 Stapling 後,Web 伺服器每隔幾小時取得一次帶時間戳、CA 簽名的吊銷證明,並把它附加到自己的握手訊息中。瀏覽器驗證簽名時無需額外往返、無需聯絡 CA,也不會暴露訪客身分。如果證明過期,瀏覽器把它當作「無回應」並按原有邏輯處理——安全降級。
如何開啟
Nginx:在 server 區塊中加入 "ssl_stapling on;" 和 "ssl_stapling_verify on;",並確保 ssl_certificate 設定的是包含中繼憑證的完整鏈。Apache:設定 "SSLUseStapling On" 和 "SSLStaplingCache shmcb:logs/stapling-cache(128000)"。Caddy 自動開啟並自動管理 Stapling。修改後重啟服務並驗證。
如何驗證設定
使用 csr.plus 的免費 SSL/TLS 追蹤器:它展示伺服器送出的完整握手內容,包括 Stapled OCSP 回應及其「下次更新」時間。也可以執行 "openssl s_client -connect 你的網域:443 -status" 查看 OCSP response 區段。工具頁還能檢查憑證鏈與有效期。
常見誤解
Stapling 不等於「停用 OCSP」——它保留了吊銷檢查,同時消除了缺點。它不能取代憑證透明度(CT)日誌。另外,約 4% 不支援 Stapling 的用戶端會直接忽略該擴充功能,所以你仍應保留正常的 OCSP 回應器設定——Stapling 是建立在正確 OCSP 設定之上的優化。
FAQ
OCSP 和 OCSP Stapling 有什麼區別?
OCSP 是瀏覽器直接向 CA 查詢吊銷狀態的協定;OCSP Stapling 把這份證明搬進 TLS 握手本身——伺服器出示 CA 簽名、帶時間戳的回應,瀏覽器無需再聯絡 CA。
開啟 OCSP Stapling 能快多少?
在典型 200ms 延遲網路下,完整握手從約 490–600ms 降到約 400ms——每次新連線少一次往返。在慢速或高延遲連線上收益最明顯。
OCSP Stapling 對所有憑證頒發機構都有效嗎?
是的。所有公開信任的 CA 都提供 OCSP 回應器,Stapling 與任何一家都能配合。部分 CA 還支援較新的 must-staple 擴充功能,強制瀏覽器要求 Stapled 回應。
如何在 Nginx 上開啟 OCSP Stapling?
在 server 區塊中加入 "ssl_stapling on;" 和 "ssl_stapling_verify on;",確保 ssl_certificate 指向包含中繼憑證的完整鏈,然後重啟 Nginx。
Stapled OCSP 回應過期了會怎樣?
瀏覽器會把過期或無效的 Stapled 回應當作「缺失」處理,回退到標準行為(通常是 soft-fail)。伺服器會定期重新取得新證明,影響窗口很小——無論哪種情況你的網站都能正常運作。
UptimeRobot
免費監控你的 SSL 與在線狀態
UptimeRobot 全天候監視你的憑證與端點——免費方案含 50 個監控。
聯盟連結——你無需多付任何費用,我們可能獲得佣金。
免費 SSL/TLS 工具
數秒內驗證並檢查你的憑證。