BIND DNS 伺服器新增了對 DNS-over-HTTPS 的實驗性支持

BIND DNS 伺服器的開發人員宣布增加對 DNS over HTTPS(DoH,DNS over HTTPS)和 DNS over TLS(DoT,DNS over TLS)技術的伺服器支持,以及用於安全的 XFR-over-TLS 機制。在伺服器之間傳輸DNS 區域的內容。 DoH 可在版本 9.17 中進行測試,DoT 支援自版本 9.17.10 以來一直存在。 穩定後,DoT 和 DoH 支持將向後移植到穩定的 9.17.7 分支。

DoH 中使用的 HTTP/2 協定的實作是基於 nghttp2 函式庫的使用,該函式庫包含在組件相依性中(將來計劃將該庫轉移到多個可選依賴項)。 支援加密 (TLS) 和未加密的 HTTP/2 連線。 透過適當的設置,單一命名程序現在不僅可以服務傳統的 DNS 查詢,還可以服務使用 DoH (DNS-over-HTTPS) 和 DoT (DNS-over-TLS) 發送的查詢。 客戶端 (dig) 的 HTTPS 支援尚未實作。 XFR-over-TLS 支援適用於入站和出站請求。

透過將 http 和 tls 選項新增至 Listen-on 指令,可以啟用使用 DoH 和 DoT 的請求處理。 要支援未加密的 DNS-over-HTTP,您應該在設定中指定「tls none」。 鍵在“tls”部分中定義。 DoT 的預設網路連接埠 853、DoH 的預設網路連接埠 443 以及 DNS-over-HTTP 的 80 可透過 tls-port、https-port 和 http-port 參數覆寫。 例如: tls local-tls { key-file "/path/to/priv_key.pem"; 證書檔案“/path/to/cert_chain.pem”; }; http local-http-server { 端點 { “/dns-query”; }; }; 選項 { https-連接埠 443; 監聽埠 443 tls local-tls http myserver {any;}; }

在 BIND 中 DoH 實現的功能中,整合被視為一種通用傳輸,它不僅可以用於處理向解析器發送的客戶端請求,還可以在伺服器之間交換資料、透過權威 DNS 伺服器傳輸區域時以及處理其他DNS 傳輸支援的任何請求時。

另一個功能是將TLS 的加密作業移至另一台伺服器的能力,這在TLS 憑證儲存在另一系統上(例如,在具有Web 伺服器的基礎架構中)並由其他人員維護的情況下可能是必要的。 實現對未加密 DNS-over-HTTP 的支持,以簡化偵錯並作為內部網路中的轉送層,在此基礎上可以在另一台伺服器上組織加密。 在遠端伺服器上,nginx 可用於產生 TLS 流量,類似於為網站組織 HTTPS 綁定的方式。

讓我們回想一下,DNS-over-HTTPS 可用於防止透過提供者的 DNS 伺服器洩漏有關所請求主機名稱的資訊、打擊 MITM 攻擊和 DNS 流量欺騙(例如,在連接到公共 Wi-Fi 時)、反擊在DNS 等級進行封鎖(DNS-over-HTTPS 無法取代VPN 來繞過在DPI 層級實施的封鎖)或在無法直接存取DNS 伺服器時(例如,透過代理程式工作時)組織工作。 如果在正常情況下 DNS 請求直接傳送到系統設定中定義的 DNS 伺服器,那麼在 DNS-over-HTTPS 的情況下,確定主機 IP 位址的請求將封裝在 HTTPS 流量中並傳送到 HTTP 伺服器,其中解析器透過Web API 處理請求。

「DNS over TLS」與「DNS over HTTPS」的不同之處在於使用標準DNS 協定(通常使用網路連接埠853),封裝在使用TLS 協定組織的加密通訊通道中,並透過經過認證的TLS/SSL 憑證進行主機有效性檢查由認證機構。 現有的DNSSEC標準僅使用加密來驗證客戶端和伺服器,但不能保護流量不被攔截,也不能保證請求的機密性。

來源: opennet.ru

添加評論