Domain-Name-System
政府審查我們網站的 HTTPS 流量。解決方法?
我正在幫助運營一個網站,該網站因政治原因被之前試圖阻止 Telegram (RosKomNadzor) 的同一個俄羅斯機構阻止。這不是第一次發生,以前我們只會更改域,但這有其自身的影響和讀者群的損失。
他們只阻止域名,而不是 IP(無論如何我們都在使用 Cloudflare)。我們正在使用 HTTPS,但 ISP 仍然能夠以某種方式從他們的客戶端獲取有關我們的請求的 DNS 資訊。從技術上講,我們可以建議我們的讀者配置他們的
/etc/hosts
,但這不是一個可行的選擇。是否可以在我們的伺服器端加密/混淆 DNS 資訊,而無需使用者進行任何更改/安裝軟體?還是等待 DNS over HTTPS 成為我們唯一的選擇?
來自俄羅斯的愛。
不幸的是,繞過審查最好在客戶端解決,因此沒有多少伺服器端設置可以幫助解決這個問題。您可以建議您的使用者使用帶有 DNS-over-HTTPS ( RFC 8484 ) 或 DNS-over-TLS ( RFC 7858 ) 的 VPN、 Tor和/或公共 DNS 。
您假設審查方法與 DNS 有關,但您實際測試過嗎?您是否知道 ClientHello 中的伺服器名稱指示(SNI、RFC 6066、3)是未加密的,也可能用於阻止 TLS 連接?幸運的是,TLS Encrypted Client Hello ( draft-ietf-tls-esni-09 ) 正在開發中,可以提供幫助。有關該主題的更多閱讀:
- Seth Schoen: ESNI:對 HTTPS (EFF)的隱私保護升級
- Matthew Prince:加密 SNI:修復核心 Internet 錯誤之一(Cloudflare)
(我們通常不會在我們的 Q/A 文章中添加任何問候語,但您的 007 參考是金!)