רמי
SUBJECT: Resolvectl (Systemd): System-wide настройка защищенного верифицированного соединения (DNSOverTLS, DNSSEC, ECH: Encrypted Client Hello) с корневыми DNS-серверами и обеспечение кеширования DNS-запросов без установки стороннего ПО
AUTHOR: Rami Rosenfeld
DATE: 07/02/24
TIME: 00.00
LANG: ru, en
LICENSE: GNU FDL 1.3
TAGS: gnu, gnome, software, opensource, linux, system, man, manual, bash, privacy, security, rhel, centos, mate, xfce, lxde, spin, de, systemd, systemctl, selinux, firewalld, dnf, rpm, ostree, flatpak, siverblue, dns, dnsovertls, dnssec, ech
Моя любимая systemd, рожденная безумным гением Леннартом Поттерингом, не перестает удивлять и радовать своей простотой, удобством и логичностью построения. Обратите особое внимание: всего несколько правок в конфигурационном файле - и мы активируем DNSOverTLS, DNSSEC и Encrypted Client Hello для всей операционной системы (а также кэширование DNS-запросов)!
ВАЖНО! Encrypted Client Hello будет обеспечено только(!) для тех прикладных приложений, которые его поддерживают! Подробнее см.:
=> Firefox: Настройка Encrypted Client Hello (Quad9)
nano /etc/systemd/resolved.conf
DNS=9.9.9.11 149.112.112.11 2620:fe::11 2620:fe::fe:11 FallbackDNS=1.1.1.3 1.0.0.3 2606:4700:4700::1113 2606:4700:4700::1003 #Domains= DNSSEC=yes DNSOverTLS=yes #MulticastDNS=no #LLMNR=resolve Cache=no-negative #CacheFromLocalhost=no #DNSStubListener=yes #DNSStubListenerExtra= #ReadEtcHosts=yes #ResolveUnicastSingleLabel=no StaleRetentionSec=86400
ОПЦИИ:
ВАЖНО! Изменения в сетевых настройках ОС произойдут только после перезагрузки NM или всего компьютера (для чистоты эксперимента - настоятельно рекомендую последнее).
systemd-analyze cat-config systemd/resolved.conf
resolvectl status
Global Protocols: LLMNR=resolve -mDNS +DNSOverTLS DNSSEC=yes/supported resolv.conf mode: stub Current DNS Server: 9.9.9.11 DNS Servers: 9.9.9.11 149.112.112.11 2620:fe::11 2620:fe::fe:11 Fallback DNS Servers: 1.1.1.3 1.0.0.3 2606:4700:4700::1113 2606:4700:4700::1003 Link 2 (enp3s0) Current Scopes: none Protocols: -DefaultRoute LLMNR=resolve -mDNS +DNSOverTLS DNSSEC=yes/supported Link 3 (wlp2s0) Current Scopes: DNS LLMNR/IPv4 Protocols: +DefaultRoute LLMNR=resolve -mDNS +DNSOverTLS DNSSEC=yes/supported Current DNS Server: 192.168.nnn.nnn DNS Servers: 192.168.nnn.nnn
$ resolvectl query go.dnscheck.tools
go.dnscheck.tools: 2604:a880:400:d0::256e:b001 -- link: wlp2s0 142.93.10.179 -- link: wlp2s0 -- Information acquired via protocol DNS in 1.4529s. -- Data is authenticated: yes; -- Data was acquired via local or encrypted transport: yes -- Data from: network
resolvectl reset-statistics
resolvectl statistics
DNSSEC supported by current servers: yes Transactions Current Transactions: 0 Total Transactions: 0 Cache Current Cache Size: 61 Cache Hits: 0 Cache Misses: 0 DNSSEC Verdicts Secure: 0 Insecure: 0 Bogus: 0 Indeterminate: 0
resolvectl show-cache
(...) Scope protocol=dns org IN DS 26974 8 2 4fede294c53f438a158c (...) . IN DNSKEY 257 3 RSASHA256 AwEAAaz/tAm8y (...) -- Key tag: 30903 fedoraproject.org IN A 34.221.3.152 fedoraproject.org IN A 67.219.144.68 (...)
resolvectl flush-caches
resolvectl monitor
→ Q: detectportal.firefox.com IN A ← S: success ← A: detectportal.firefox.com IN CNAME detectportal.prod.mozaws.net → Q: dns11.quad9.net IN A ← S: success ← A: dns11.quad9.net IN A 149.112.112.11 ← A: dns11.quad9.net IN A 9.9.9.11
$ delv site.name @9.9.9.11
fully validated site.name. 28800 IN A 81.125.249.17 site.name. 28800 IN RRSIG A 8 2 86400 2024
Синтаксис команды:
delv domain-name-here – The domain name to be looked up.
delv @dns-server-name domain-name-here – The name or IP address of the name server to query.
delv @dns-server-name domain-name-here type – State what type of DNS query is required. For example, A, AAAA, MX, TXT and so on.
Если при исполнении "короткой" команды "delv site.name" возникает ошибка:
;; broken trust chain resolving 'site.name/A/IN': 127.0.0.53#53 ;; resolution failed: broken trust chain
резолвер 127.0.0.53:53 не сконфигурирован правильно для валидации DNSSEC. Поэтому используйте полную версию команды (с указанием конкретного DNS-сервера), например:
delv site.name @1.1.1.3
delv site.name @9.9.9.11
=> DNSSEC Resolver Test | Quad9 | Cloudflare Security Check
Дополнительно см.:
=> Quad9: Сетевые настройки DNS | Firefox: Настройка Encrypted Client Hello (Quad9)
🄯 Rami Rosenfeld, 2024. GNU FDL 1.3.
text/gemini; lang=en
This content has been proxied by September (ba2dc).