BIND9 v9.18은 DNS-over-TLS(DoT) 및 DNS-over-HTTPS(DoH)에 대한 지원을 개선합니다. 그러나 비록 ~ 일지라도문서서버 측에서 TLS를 사용하는 방법을 설명하지만 쿼리 전달을 위해 DNS-over-TLS를 활성화하는 방법은 밝히지 않습니다. BIND9 v9.18이 지원되나요?
리피터와 함께 DoT를 사용하려면 구성 조각을 어떻게 조정해야 합니까?
options {
[…]
forwarders {
// Forward to Cloudflare public DNS resolver
1.1.1.1;
1.0.0.1;
};
[…]
}
단지 추가 port 853
하고 마법이 일어나기를 기대하는 것만으로는 충분하지 않은 것 같습니다.
답변1
이것은 DNS-over-TLS를 통한 BIND9 전달 구성에 대한 Google의 가장 인기 있는 기사이므로 BIND 9.19.13에서 OpenDNS에 대한 연결을 구성하고 테스트한 방법은 다음과 같습니다.
named.conf.dot
in을 만들고 /etc/bind/
include를 통해 참조했지만 쉽게 직접 추가할 수 있습니다.named.conf
tls OpenDNS-DoT {
ca-file "/etc/ssl/certs/IdenTrust_Commercial_Root_CA_1.pem";
remote-hostname "dns.opendns.com";
};
options {
forwarders port 853 tls OpenDNS-DoT {
// OpenDNS public
208.67.222.222;
208.67.220.220;
};
};
ISC의 Aram에 따르면,이 기능다음 안정 버전 9.20에 포함될 예정입니다.
답변2
문서forwarders
명령문 구문이 확장되었음을 나타냅니다.도착하다:
forwarders [ port <integer> ] [ tls <string> ] { ( <ipv4_address> | <ipv6_address> ) [ port <integer> ] [ tls <string> ]; ... };
이 tls <string>
섹션은 별도의 tls
명령문 블록을 참조합니다.
나는 이것을 테스트하지 않았지만 문서에 따르면 다음과 같은 코드 조각이 필요할 수 있습니다.
tls cloudflare-DoT {
ca-file "/some/where/ca-certs-applicable-for-cloudflare.pem";
// currently Cloudflare uses "DigiCert TLS Hybrid ECC SHA384 2020 CA1" as CA
dhparam-file "/some/where/dhparam.pem";
remote-hostname "one.one.one.one";
ciphers "HIGH:!kRSA:!aNULL:!eNULL:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS:!SHA1:!SHA256:!SHA384"; // or whatever you consider acceptable
prefer-server-ciphers yes;
session-tickets no;
};
options {
forwarders port 853 tls cloudflare-DoT {
1.1.1.1;
1.0.0.1; //yes, this also returns a certificate with hostname "one.one.one.one".
};
};
이 dhparam.pem
파일은 다음을 통해 생성할 수 있습니다.
openssl dhparam -out /path/to/dhparam.pem <3072_or_4096>