Какую проблему решает: протокол UDP, используемый для DNS-запросов, не использует шифрование.
Для начала запретим NetworkManager изменять конфиги:
$ sudo -e /etc/NetworkManager/conf.d/99-dns.conf
[main]
dns=none
Перезапустим NetworkManager для применения настроек:
$ sudo systemctl restart NetworkManager
Для проверки:
$ sudo NetworkManager --print-config
В /etc/resolv.conf
или /etc/resolv.conf.d/head
пропишем:
nameserver 127.0.0.53
NetworkManager не умеет делать запросы через TLS, поэтому нужно использовать для этого проксирующий DNS-сервер systemd-resolved
. 127.0.0.53
- это используемый им адрес по умолчанию.
Пропишем кастомный DNS-сервер:
$ sudo mkdir /etc/systemd/resolved.conf.d/
$ sudo -e /etc/systemd/resolved.conf.d/99-dns-over-tls.conf
[Resolve]
DNS=1.1.1.1
FallbackDNS=1.0.0.1
DNSSEC=yes
DNSOverTLS=yes
Запустим сервис:
$ sudo systemctl enable --now systemd-resolved.service
Проверим настройки:
$ systemd-resolve --status
Global
Protocols: +LLMNR +mDNS +DNSOverTLS DNSSEC=yes/supported
resolv.conf mode: foreign
DNS Servers: 1.1.1.1
Fallback DNS Servers: 1.0.0.1
Link 2 (enp4s0)
Current Scopes: DNS LLMNR/IPv4 LLMNR/IPv6 mDNS/IPv4 mDNS/IPv6
Protocols: +DefaultRoute +LLMNR +mDNS +DNSOverTLS DNSSEC=yes/supported
Current DNS Server: 192.168.0.1
DNS Servers: 192.168.0.1
Default Route: yes
Link 3 (docker0)
Current Scopes: none
Protocols: -DefaultRoute +LLMNR +mDNS +DNSOverTLS DNSSEC=yes/supported
Default Route: no
Проверим используется ли резолвер. В выводе должен быть SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
$ dig example.com
; <<>> DiG 9.20.6 <<>> example.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32802
;; flags: qr rd ra ad; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;example.com. IN A
;; ANSWER SECTION:
example.com. 98 IN A 23.192.228.84
example.com. 98 IN A 23.192.228.80
example.com. 98 IN A 23.215.0.136
example.com. 98 IN A 96.7.128.175
example.com. 98 IN A 96.7.128.198
example.com. 98 IN A 23.215.0.138
;; Query time: 128 msec
;; SERVER: 127.0.0.53#53(127.0.0.53) (UDP)
;; WHEN: Mon Feb 24 13:23:29 MSK 2025
;; MSG SIZE rcvd: 136