使用 Firefox 瀏覽 Webinoly 架設網站時安全連線失敗

昨天在發佈了 setcookie 的文章後,社群夥伴 Alex 提到再透過 Firefox 時,會出現「MOZILLA_PKIX_ERROR_REQUIRED_TLS_FEATURE_MISSING」安全連線失敗的錯誤訊息。如圖所示:

經過查詢後發現是 OCSP 的問題。

用簡單的方式來理解,OCSP 是一種用來確認 SSL 憑證真實性的機制。然而因為造成隱私權問題,而且實際上不一定能確保傳輸的安全性,因此在 Chrome 當中並不會預設啟用這個功能。目前會預設開啟這種驗證的瀏覽器,只有 Firefox。

解決方法:添加 resolver

根據這篇文章的說法,只需要在網站的 nginx.conf 中 (以 Webinoly 為例,會在 ~/sites-available 中),加入以下的參數,就可以解決:

server {
	listen 443 ssl http2;
    ...
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_trusted_certificate /etc/letsencrypt/live/{{網站網址}}/chain.pem;

	resolver 8.8.8.8 1.1.1.1 valid=300s;
	resolver_timeout 5s;
    ...

進一步查詢 resolver 這個參數,在進行 OCSP 驗證時,會透過 8.8.8.8 或 1.1.1.1 這些公開 DNS 位址,去存取 Let’s Encrypt 上的憑證資料。

如果對 8.8.8.8 和 1.1.1.1 沒有信心,也可以自行建立 DNS Server 來解析。

坦白說目前對 resolver 這個參數還沒有很清楚,未來有更深入的研究會再回來這篇文章中更新。

參考資料

預設圖片
Eric Chuang
正職是廣告行銷人員,因為 Google Tag Manager 的關係開始踏入網站製作的領域,進一步把 WordPress 當成 PHP + HTML + CSS + JavaScript 的學習教材。此外,因為工作的關係,曾經用 Automattic 的 Underscores (_s) 替客戶與公司官網進行全客製化佈景主題開發。

發佈留言

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

Physical Address

304 North Cardinal St.
Dorchester Center, MA 02124