
我發現,如果我嘗試存取家庭網路內部基於網路的服務,Chrome 將無法正確解析該 URL。一個例子是,如果我嘗試使用 FQDN 瀏覽我的 Plex 伺服器; plex.mydomain.com。僅當啟用“安全 DNS”設定時才會出現這種情況。它似乎將我的 Web 請求定向到網路外部的 DNS 伺服器。實際上,我不會將我帶到 Plex 伺服器 Web 前端,而是會重定向到 pfsense 路由器上的一個頁面,並顯示錯誤,警告我可能存在 DNS 重新綁定攻擊。
我運行自己的內部 DNS 伺服器。它只是一個 Windows 2012r2 伺服器。我內部網路上的所有內容都指向該伺服器,該伺服器配置為將請求轉發到 Google 的 DNS 伺服器以取得它不知道的記錄。
我喜歡使用安全 DNS(或 HTTPS 上的 DNS)的想法。但由於上述原因我似乎無法使用它。但我想知道,如果我將內部 DNS 伺服器配置為支援 DNSSEC,那麼可能會解決問題。我想我還需要調整我的 Chrome 設定以使用我的內部 DNS 伺服器作為安全 DNS 服務。這一切聽起來正確嗎?
有其他人觀察到這個問題嗎?
答案1
您需要在 DNS 伺服器上啟用 DNS-over-HTTPS 支援才能使其正常運作。如果您的本機 DNS 伺服器不支援 DoH,Chrome 將自動升級請求並繞過您的本機 DNS 設置,並使用 Google 首選的 DoH 伺服器。不幸的是,Microsoft DNS 目前不提供此功能。
假設您為 plex.mydomain.com 設定了公共 DNS,Chrome 會測試您的 Windows DNS 伺服器是否支援 DoH。 Chrome 發現沒有,然後使用 DoH 向 8.8.8.8 發起請求,從而解析您的公共 IP。然後,您的用戶端嘗試連線到您的公用 IP,而不是內部 IP,而 pfsense 會阻止可能被視為重新綁定攻擊的行為。如果您使用的是桌上型電腦,而不是有時需要外部連接的筆記型電腦,您可以透過將 Plex 伺服器的本機 IP 新增至主機檔案來解決此問題。通常,主機檔案中的項目永遠不會到達作業系統層級的 DNS。但考慮到 Chrome 已經用它自己的 DNS 解析器來替代,你可能會運氣不好。
有關 DoH 在 Chrome 中如何運作的更多資訊: https://www.chromium.org/developers/dns-over-https
具體來自該頁面:
- Chrome 將有一個表將非 DoH DNS 伺服器對應到其等效的 DoH DNS 伺服器。
- 根據此表,如果已知系統的遞歸解析器支援 DoH,Chrome 將升級到該解析器的 DoH 版本。換句話說,這將升級用於 DNS 解析的協議,同時保持使用者的 DNS 提供者不變。還需要注意的是,基於 HTTPS 的 DNS 並不妨礙其運營商提供家庭安全過濾等功能。
- 在某些平台上,這可能意味著 Chrome 以前使用作業系統 DNS 解析 API,現在使用自己的 DNS 實作來實作 DoH。
- 將提供群組原則,以便管理員可以根據需要停用該功能
- 最終用戶將能夠從設定頁面控制該功能(例如停用、自動升級、選擇或指定特定提供者)