Temat: DNS over TLS
Udało uruchomić się unbound + stubby jako serwer DNS, bez dnsmasq.
Mini how-to:
Bazowałem na:
https://forum.lede-project.org/t/adding … ound/13765
https://openwrt.org/docs/guide-user/ser … ns/unbound
https://blog.grobox.de/2018/what-is-dns … r-openwrt/
1) Instalacja unbound, unbound-anchor, stubby i getdns przez opkg:
opkg install unbound unbound-achor stubby getdns
2) Wyłączenie DNS w dnsmasq:
a) w /etc/config/dhcp w sekcji dnsmasq usunąć wszystko i dopisać port równy 0:
config dnsmasq
option port '0'
b) jak dnsmasq nie jest serwerem DNS to klienci nie wiedzą kto jest serwerem DNS
W sekcji lan (i innych jak są) dodać:
list dhcp_option '6,192.168.1.1'
3) Wygenerowanie pliku root.key dla unbound:
unbound-anchor -a "/etc/unbound/root.key"
4) Konfiguracja unbound:
W pierwszym linku zmieniają bardzo dużo parametrów, szczególnie w serwerze. Nie rozumiem ich - nie ruszam.
a) plik /etc/unbound/unbound_ext.conf
forward-zone:
name: "."
forward-addr: 127.0.0.1@5354
5354 jest numerem portu na którym jest uruchomiony stubby
b) plik /etc/unbound/unbound_srv.conf
do-tcp: yes
prefetch: yes
qname-minimisation: yes
rrset-roundrobin: yes
use-caps-for-id: yes
c) plik /etc/config/unbound:
parę zmian:
i) option dhcp_link 'dnsmasq'
ii) option query_minimize '1'
iii) option validator '1'
iv) list domain_insecure 'openwrt.pool.ntp.org'
5) Konfiguracja stubby:
resolution_type: GETDNS_RESOLUTION_STUB
dns_transport_list:
- GETDNS_TRANSPORT_TLS
dnssec_return_status: GETDNS_EXTENSION_TRUE
dnssec_trust_anchors: "/etc/unbound/root.key"
tls_authentication: GETDNS_AUTHENTICATION_REQUIRED
tls_query_padding_blocksize: 256
edns_client_subnet_private : 1
round_robin_upstreams: 1
idle_timeout: 10000
listen_addresses:
- 127.0.0.1@5354
upstream_recursive_servers:
- address_data: 1.1.1.1
tls_auth_name: "cloudflare-dns.com"
Restart zmienionych usług i powinno działać.
Flaga ad wskazuje na działanie DNSSEC.
╰─ dig com. SOA +dnssec
; <<>> DiG 9.10.6 <<>> com. SOA +dnssec
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42293
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 1280
;; QUESTION SECTION:
;com. IN SOA
;; ANSWER SECTION:
com. 460 IN SOA a.gtld-servers.net. nstld.verisign-grs.com. 1526824984 1800 900 604800 86400
com. 460 IN RRSIG SOA 8 1 900 20180527140304 20180520125304 36707 com. sacN7Afl5GjCXr2p2LMNFAagM8wmdofadJboQLSSOeHnOqgQCCHBdBec AHGjIwPq3d/wORCNhQrahDMesb2Tbx7OfkLKnvA8lX722KiUmkvpbDA2 j8ipiTVzv2XqoWFgiQG5Q0T49THvbGwWYUy3HH+uDxRLAVVjKIl8mfTS zlQ=
;; Query time: 97 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Sun May 20 16:10:40 CEST 2018
;; MSG SIZE rcvd: 268