doh-proxy 可以與私人 DNS 伺服器一起使用嗎?

doh-proxy 可以與私人 DNS 伺服器一起使用嗎?

我有一個 DNS 伺服器在我們的專用網路內運行,IP 位址為 10.10.0.10。 DNS 伺服器將 URL 解析為也在我們網路內部的私人 IP。所有 URL 的 SSL 均由 .BIZ 網域的通配符憑證處理。但最近 Chrome 和 Firefox 在最近的更新中開始啟用 DNS-over-HTTPS。由於我們的 DNS 伺服器不符合 DOH 標準,因此使用者無法導航到我們的 URL,除非他們在瀏覽器中停用 DOH 功能。

理想情況下,我希望我們的用戶在瀏覽器中啟用 DOH,並且仍然依賴本機 DNS 伺服器將 URL 解析為我們的私人 IP。為了實現這一目標,我查看了代理伺服器。我在 IP 10.10.0.20 上啟動了 Centos-7 虛擬機,安裝了 doh-proxy,並開啟了連接埠 443。

/usr/local/bin/doh-proxy --upstream-resolver=10.10.0.10 --certfile=/etc/pki/public/mycompany.bundle.biz.crt --keyfile=/etc/pki/private/mycompany.biz.pem

使用 netstat 我驗證連接埠 443 正在偵聽。然後,我修改了 VPN 配置,將 DNS 設定從 10.10.0.10 更改為 10.10.0.20(新的 doh-proxy 伺服器)。然而,在瀏覽器中啟用 DOH 的情況下,我仍然無法導航到我們的 URL。

我是否誤解了 doh-proxy 背後的意圖?

答案1

我不認為您誤解了 背後的意圖doh-proxy,它似乎是常規 DNS 解析器伺服器的 DoH 前端,為 DoH 用戶端查詢所述解析器伺服器創建了一種方式。
如果這個特定的實現由於某種原因被證明不適合,還有其他幾個這樣的代理解決方案。

然而,我相信您可能誤解/忽視的是,要配置 DoH,客戶端需要知道 DoH 伺服器的 URL(例如https://dns.quad9.net/dns-queryhttps://dns.google/dns-query等),只有 IP 位址對於設定 DoH 沒有任何作用。

而且,讓事情變得困難的是,衛生部目前沒有適當的發現機制。 (這是圍繞 DoH 的許多爭議背後的根本原因,尤其是 Mozilla 的方法。)

此時「預設啟用 DoH」的工作原理範例:

  • Firefox 設定為了解要使用的 DoH 伺服器(Mozilla 代表其使用者選擇 DoH 服務,而不考慮作業系統設定)。
  • Chrome 根據以 DNS 服務的已知 IP 位址為關鍵的映射表選擇性地從普通 DNS 升級到 DoH,例如8.8.8.8 -> https://dns.google/dns-query(Google 維護了一個已知DNS 服務的映射表,並且僅當映射表方便時才會進行DoH升級)查詢作業系統配置為純 DNS 指定的相同 DNS 服務)。

總而言之,經營自己的 DoH 服務很容易,但讓客戶使用它卻不一定容易。

您需要做的是以某種方式告訴客戶端使用 https://dns.example.com/dns-query(如果我們假設這是您的代理的正確URL)作為其DoH 端點,這最簡單的形式可能意味著在客戶端上進行手動配置(每個應用程序,不少於) 。
您當然可以找到自動設定一組已知應用程式的方法,但目前還沒有可與 DHCP 為普通 DNS 提供位址相媲美的既定發現方法。

相關內容