Domain-Name-System
需要 HTTPS 連接的頂級域 (TLD) 列表,例如 .dev
我知道
.dev
頂級域要求所有站點僅支持加密的 HTTPS 連接,不允許任何 HTTP 連接。還有其他這樣的頂級域名嗎?
如果更多頂級域開始使用HTTP 嚴格傳輸安全(HSTS,RFC 6797)強制執行 HTTPS,那麼對此的直接回答最終將變得過時。從技術上講,這是送出到預載入列表的 TLD 的 HSTS 政策。它始於Google的新頂級域名,
HSTS 預載入列表可以包含通過HSTS 網站添加的單個域或子域甚至頂級域 (TLD) 。TLD 是域名的最後一部分,例如
.com
、.net
或.org
。Google 運營著 45 個 TLD,包括.how
和.soy
. 2015 年,當我們添加.foo
和開始.dev
。甚至對未來保護整體的可能性也有了初步的想法
.gov
:進一步縮小:技術上可以為整個頂級域(例如“
.gov
”)預載入 HSTS,就像 Google 第一次使用.gov
可以到達那裡。要了解目前情況,必須查閱Chromium HSTS 預載入列表。
Chromium 的GitHub 鏡像上也提供了預載入列表;特別是原始版本最適合
curl
orwget
。該列表是帶有註釋行的非標準JSON 。可以jq
在刪除評論後使用 eg對其進行分析sed
。在這裡,
jq
給出了預載入列表中的所有域名,並將其grep
縮減為TLD:cat transport_security_state_static.json \ | sed 's/^\s*\/\/.*//' \ | sed '/^$/d' \ | jq -r '.entries[]|select(.include_subdomains==true)|"\(.name)"' \ | grep -P "^\.?[a-z]*\.?$"
要搜尋公共後綴而不是 TLD:
cat transport_security_state_static.json \ | sed 's/^\s*\/\/.*//' \ | sed '/^$/d' \ | jq '.entries[]' \ | jq 'select((.policy=="public-suffix") and (.include_subdomains==true))' \ | jq -r '"\(.name)"'