다음 설정을 사용하여 시스템에서 DNSSEC를 완전히 활성화하려고 했습니다.
dnscrypt-proxy
127.0.0.1에서 설치, 시작 및 실행require_dnssec = true
- systemd 구문 분석은 다음과 함께 실행됩니다
DNSSEC=yes
.DNS=127.0.0.1
- 오직
nameserver 127.0.0.1
에만/etc/resolv.conf
- NetworkManager DHCP 구성 세트 8.8.8.8 및 8.8.8.4를 DNS 서버로 통해 알고 있는 WiFi 네트워크에 연결합니다.
/run/systemd/resolve/resolv.conf
8.8.8.8 및 8.8.8.4는 127.0.0.1 아래에 나열됩니다.
resolvectl status
프로그램
DNSSEC setting: yes
DNSSEC supported: yes
Current DNS Server: 127.0.0.1
DNS Servers: 127.0.0.1
전역 섹션에 있지만
DNSSEC setting: yes
DNSSEC supported: yes
Current DNS Server: 8.8.8.8
DNS Servers: 8.8.8.8
8.8.8.4
내 인터페이스 섹션에(왜?)
tcpdump
웹 브라우저, 발굴 또는 기타 일반적인 사용을 사용하면 udp:53에서 전혀 활동이 표시되지 않습니다. 이는 내 로컬 dnscrypt-proxy가 내 시스템의 모든 DNS 요청을 처리하고 있음을 의미한다고 생각합니다. 또한 위에서 언급한 구성 설정으로 인해 항상 DNSSEC를 사용할 것이라고 가정합니다.
그러나 일기에는 다음과 같은 내용이 포함되는 경우도 있습니다.
Nov 30 09:10:41 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question v.dropbox.com IN SOA: failed-auxiliary
Nov 30 09:10:41 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question bolt.v.dropbox.com IN DS: failed-auxiliary
Nov 30 09:10:41 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question bolt.v.dropbox.com IN SOA: failed-auxiliary
Nov 30 09:10:41 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question bolt.v.dropbox.com IN A: failed-auxiliary
Nov 30 09:10:43 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question v.dropbox.com IN SOA: failed-auxiliary
Nov 30 09:10:43 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question d.v.dropbox.com IN A: failed-auxiliary
Nov 30 09:10:43 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question v.dropbox.com IN SOA: failed-auxiliary
Nov 30 09:10:43 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question d.v.dropbox.com IN A: failed-auxiliary
Nov 30 09:10:43 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question d2e801s7grwbqs.cloudfront.net IN SOA: failed-auxiliary
Nov 30 09:10:43 tuxifaif systemd-resolved[179937]: DNSSEC validation failed for question d2e801s7grwbqs.cloudfront.net IN A: failed-auxiliary
resolvectl query v.dropbox.com
동일한 DNSSEC 유효성 검사 오류가 발생합니다.dig v.dropbox.com
아주 잘 작동dig v.dropbox.com @8.8.8.8
또한 잘 작동합니다(물론 두 줄의 출력이 생성됩니다tcpdump
).
나도 확인했다https://dnsleaktest.com, 이는 많은 172.253.xx 서버가 내가 웹 브라우저에 입력한 도메인 이름을 확인하라는 요청을 받고 있음을 알려줍니다. 해당 IP는 Google 소유인 것으로 보입니다.
그렇다면 이것은 무엇을 의미합니까? 이 시스템에서 진행 중인 (DNSSEC가 아닌) 쿼리가 있습니까?
어떤 통찰력이라도 감사하겠습니다!
답변1
dnscrypt-proxy
and 를 모두 systemd-resolved
사용하는 경우에는 이런 일이 발생하지 않습니다 127.0.0.1:53
. systemd-resolved
권장사항에 따라 비활성화 해야 합니다.dnscrypt-프록시 위키/etc/resolv.conf
을 클릭하고 네트워크 관리자가 수행한 변경 사항을 잠급니다 . 따라서 단계는 다음과 같습니다.
- 장애가 있는
systemd-resolved
:
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved
address:port
: 과dnscrypt-proxy
동일한 쌍을 사용하는 다른 것이 있는지 확인하십시오sudo ss -lp 'sport = :domain'
. 있는 경우 비활성화하십시오.dnscrypt-proxy
수신 중이고127.0.0.1:53
갖고resolv.conf
있는nameserver 127.0.0.1
경우 항목options edns0
(DNS 보안 확장을 활성화하는 데 필요함) 아래에 추가하여 다음과 같이 되도록 합니다.nameserver
resolv.conf
nameserver 127.0.0.1
options edns0
/etc/resolv.conf
변경을 위해 파일 잠금 :sudo chattr +i /etc/resolv.conf
.- 재부팅할 수도 있습니다
dnscrypt-proxy
.
전반적으로 요점은 다음을 확인하는 것입니다.
- 그냥
dnscrypt-proxy
사용 중127.0.0.1:53
resolv.conf
같은 주소를 갖고 있어dnscrypt-proxy
resolv.conf
다른 소프트웨어(예: 네트워크 관리자)의 변경 사항에 영향을 받지 않습니다.
또한 dnsleak 테스트 결과 Google IP가 나온다고 해서 해당 DNS Resolver 서비스가 Google에서 운영되는 것은 아닙니다. 이러한 서버는 Google이 소유하지만 다른 법인에서 운영할 수 있습니다. 원하지 않으면 다른 파서를 선택할 수 있습니다dnscrypt-proxy 공개 확인자 목록. dnssec
선택한 파서가 이를 지원하는지 확인하세요 . 저는 개인적으로 로그 없음, 필터 없음, Google 이외의 dnssec 지원 dnscrypt.eu 확인자를 사용합니다.
인용하다: