移除 Chrome HSTS 的網域清單

HSTS 是 HTTP 強制安全傳輸技術 (HTTP Strict Transport Security) 是一套網際網路安全策略機制,網站可以選擇使用 HSTS 策略,來讓瀏覽器強制使用 HTTPS 與網站進行通訊。

HSTS 是 HTTP 強制安全傳輸技術 (HTTP Strict Transport Security) 是一套網際網路安全策略機制,網站可以選擇使用 HSTS 策略,來讓瀏覽器強制使用 HTTPS 與網站進行通訊,以減少連線劫持風險;簡單的說:就是強制客戶端使用 HTTPS 訪問頁面。

啟動 HSTS 方法,一是在 hstspreload.org 網站提交域名,二是在 header 響應頭裡寫入 max-age=31536000; includeSubDomains; preload 配置,可以參考我之前寫的「將域名加入 HSTS Preload List」。

hstspreload.org 網站提交域名

https://hstspreload.org/

將域名加入 HSTS Preload List

將域名加入 HSTS Preload List

昨天在配置一個網站時,不小心將 max-age=31536000; includeSubDomains; preload 寫入到 conf 配置文件,重啟 Nginx 之後,沒有 SSL 證書的子域網站全部都 GG 了,也就是說:沒有安裝 SSL 證書的子域網站,全部被強制以 HTTPS 方式開啟。

清除 HSTS 網域清單的方法:

先將根域名網站改回正確的配置

add_header Strict-Transport-Security "max-age=31536000";

Google Chrome 瀏覽器的網址列輸入:chrome://net-internals/#hsts

Delete domain security policies 的表格內輸入要清除的根域名,如圖:

清除 HSTS 網域清單

子域名也要重複上面的方法再做一次。

按完 Delete 之後,不會有任何回應,所以要確認下有沒有成功刪除 HSTS 清單。

驗證方法

Query HSTS/PKP domain 的表格內,輸入剛剛要刪除的域名,如圖:

Query 檢查 HSTS 清單

回應 Not found,表示已經正確從 HSTS 清單中刪除了你的域名。

如果回應常常一串網域資訊,表示刪除失敗。

我第一次刪除 HSTS 時,因為先刪除子域名,順序錯了造成失敗,記得,先要刪除根域名開始。

Featured Photo by david henrichs on Unsplash

預設圖片
yungke
視咖啡如命的癮君子,沒有厲害的技術,只會小打小鬧的電腦工程師。WooWP Managed WordPress hosting 與 Kinsta 合作,推出最優惠、穩定的 GCP 主機方案,了解更多>>
文章: 153

發佈留言