dnssec 上的 DLV 是否已棄用?
我正在嘗試使用綁定設置一個遞歸 DNS,它也有自己的區域。
現在我想升級它以使用 dnssec 但據我了解,如果我沒有域名,我必須使用 DLV。
但是,我能找到的少數指南說您需要註冊,而
dlv.isc.org
這些指南並不存在。我正在閱讀的一本關於 DNSSEC 的書告訴我 DLV 將被棄用,所以這就是我想知道的原因。(如果您知道任何分步指南來設置它也將不勝感激)
當
dlv.isc.org
伺服器不再執行時,您仍然可以通過dnssec-lookaside選項在 Bind 9 配置中設置另一個 DNSSEC Lookaside 伺服器。如果example.com
無法驗證密鑰,則備份伺服器的名稱將附加到其上,並且將根據備份伺服器的受信任密鑰重新開始驗證。我沒有測試,但我相信這不會解決您的問題:私有域lan.
現在可以被積極驗證為不存在,因此不會執行備份查詢。那麼可以做些什麼來保護一個
lan.
區域呢?這取決於用途:
- 您想要用作區域的驗證遞歸解析器和權威伺服器的 DNS 伺服器
lan.
不需要任何額外的配置(我假設dnssec-validation
已經啟用):
- 它將
lan.
從區域文件中為區域提供服務並返回不帶標誌AD
的答案,- 當對其他域的查詢進入時,它將執行遞歸查詢,驗證結果,並且只有當它們有效時才返回帶有
AD
標誌的答案。如果域不驗證SERVFAIL
將發出。
- 使用您的 DNS 伺服器的存根解析器依賴於您的 DNS 伺服器的驗證行為,因此它們將
lan.
毫無問題地解析。但是,由於存根解析器和伺服器之間的通信是未加密的,因此可以在傳輸過程中修改結果。您可以使用 TSIG 簽名或 TLS 來保護它。- 驗證存根解析器要求您將受信任的錨點添加到它們的配置中。
我懷疑你想在每台客戶端機器上設置一個 Bind9 伺服器作為驗證存根解析器(有更好的選擇,如systemd-resolved、dnsmasq或unbound),但如果是這種情況,你需要先檢索密鑰對於您的
lan.
區域:piotr@akela:~$ dig lan. DNSKEY +short 257 3 13 nnbo5DS5vyxB0OjUd7GbcrmXY7TgdGstk4xqXpu2wvXyoFa0YRqjLcHM QJGMguTrKJVYklMNRQXrStvawSF5eg==
然後,您需要將密鑰添加為受信任的,僅允許遞歸查詢
localhost
並將請求轉發到“真實”DNS 伺服器(假設它是 on192.168.0.1
):options { directory "/var/cache/bind"; listen-on { localhost; }; listen-on-v6 { localhost; }; recursion yes; allow-query { localhost; }; forwarders { 192.168.0.1; }; }; trusted-keys { lan. 257 3 13 "nnbo5DS5vyxB0OjUd7GbcrmXY7TgdGstk4xqXpu2wvXyoFa0YRqjLcHM QJGMguTrKJVYklMNRQXrStvawSF5eg=="; };
最後,您只需要添加
localhost
為唯一的 DNS 伺服器/etc/resolv.conf
:nameserver ::1;
編輯:systemd-resolved配置更簡單:只需將您的 DNSKEY 添加到名為
/etc/dnssec-trust-anchors.d/<your_name>.positive
:lan. IN DNSKEY 257 3 13 nnbo5DS5vyxB0OjUd7GbcrmXY7TgdGstk4xqXpu2wvXyoFa0YRqjLcHM QJGMguTrKJVYklMNRQXrStvawSF5eg==
並強制 DNSSEC 進入
/etc/systemd/resolved.conf
:DNSSEC=yes