새로운 경고가 계속 표시됨 : 서버에서 오류 NXDOMAIN을 반환하여 잠재적 인 DNS 위반을 완화 함 DVE-2018-0001


35

방금 새로운 Ubuntu Server 18.04를 설치했습니다. 호스트 이름 hostnamectl set-hostname ****.openbayou.biz을 설정하고 /etc/hosts다음을 설정했습니다 .

127.0.0.1 localhost
[ip address] ****.openbayou.biz hostname
# The following lines are desirable for IPv6 capable hosts
[ip6 address] *****.openbayou.biz hostname
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

또한 새 파일, 오류 및 서버 변경 사항을 모니터링하기 위해 OSSEC을 설치했으며 이제 다음과 같은 경고가 표시됩니다.

Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018- 
0001, retrying transaction with reduced feature level UDP.`

이제는 반복되고 있습니다.

systemd-resolved[3195]: message repeated 4 times: [ Server returned error 
NXDOMAIN, mitigating potential DNS violation DVE-2018-0001, retrying transaction 
with reduced feature level UDP.]

온라인에서 해결책을 찾았지만 아무도이 문제를보고하지 않습니다.


당신은 포로 포털 뒤에 있습니까?
dobey

아니요, 이것은 Linode 4GB 서버입니다
Gregory Schultz

추가 한 두 줄을 주석 처리하면 차이가 있습니까? 오류가 / etc / hosts에 관한 것이라고 생각하지 않습니다. 서버 뒤에있는 인프라로 인해 문제가 발생했을 수 있습니다. github.com/systemd/systemd/pull/8608이 현재 문제인 것으로 보이며 "DVE-2018-0001"에 대한 첫 번째 검색 결과입니다. 업스트림 문제가 수정되어 릴리스 될 때까지 만족스러운 답변을 얻을 것이라고 생각하지 않습니다.
dobey

답변:


31

Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018- 0001, retrying transaction with reduced feature level UDP.

데스크톱 컴퓨터에도 같은 오류가 발생하여 서버에도 적용되는지 알 수 없습니다.

: 내 시스템은 장소에 이전 설정을 가지고 두 서비스 사이에 충돌의 결과로 보인다 resolvconfsystemd-resolved.

심볼릭 링크 /etc/resolv.conf../run/resolvconf/resolv.conf

/run/systemd/resolve/resolv.confsystemd가 관리하는 것을 가리 키도록 변경하여 해결했습니다 .

자세한 내용은 여기를 참조 하십시오 .

도움이 되었기를 바랍니다.


6
/run/systemd/resolve/stub-resolv.confUbuntu 18.10 인스턴스를 가리키고 있습니다.
datashaman

내 시스템을 언급하지 않았습니다. 최신 KDE 네온 (우분투 기반), 18.04.1, 4.15.0-39- 일반.
Panagiotis Tabakis

1
이것은 나에게도 문제를 해결했다. 고마워!
Witek

3
@datashaman 그것은 나를 위해 같은 경우는했지만 지점으로 심볼릭 링크 변경 /run/systemd/resolve/resolv.conf에서 /run/systemd/resolve/stub-resolv.conf나를 위해 고정 문제. 더 이상 오류가 표시되지 않습니다.
Karthic Raghupathi

나도 마찬가지였다. 나는 18.10에 있지만 18.04에서 마이그레이션되었습니다. /etc/resolv.conf -> /run/systemd/resolve/resolv.conf트릭을 변경했습니다 .
Igor Kupczyński

10

나는 OSSEC GitHub에이 오류에 대해 물었고 NXDOMAIN 오류를 무시하는 규칙을 작성하는 것이 좋습니다. 추가/var/ossec/rules/local_rules.xml

<rule id="234567" level="0">
 <program_name>systemd-resolved</program_name>
 <match>Server returned error NXDOMAIN</match>
 <description>Usless systemd-resolvd log message</description>
</rule>

답변에 추천 링크를 추가 하시겠습니까? 같은 문제를 가진 다른 사람들에게 유용합니다. 감사!
Leo


1
우분 토 18.04에서 작동하지 않음
ajcg

8

이 경고는 DNS 시스템에서 이름을 확인할 수 없을 때마다 systemd-resolved에 의해 기록됩니다 (예 : nslookup www.kjfoiqaefah34876asdf.com). 이것은 견딜 수 있으며 놀라지 않아도됩니다. 이것은 오류가 아니며 수정할 필요가 없습니다.

/etc/resolv.conf를 /run/systemd/resolve/resolv.conf로 재지 정하는 것은 잘못된 방법입니다. 이러한 방식으로 systemd-resolved를 건너 뛰고 잘못된 DNS 요청이있는 응용 프로그램은 systemd-resolved가 아닌 네임 서버와 직접 통신하기 때문에 더 이상 스터브. 이 방법으로 systemd-resolved는 NXDOMAIN 이벤트를 더 이상 인식하지 않으므로 더 이상 기록 할 수 없습니다.

NXDOMAIN 이벤트는 시스템 시작 중에 존재하지 않는 서버에 액세스하려고하는 패키지로 인해 발생합니다.


3
확인되지 않은 이름이 무엇인지 발견 할 수있는 방법이 있습니까?
Monica Harming 중지

4
@OrangeDogtcpdump -vv port 53 | grep NXDomain
베인

7

최근 18.04.1로 업데이트 된 Ubuntu 18.04 서버에서 동일한 것을 발견했습니다.

systemd-resolve는 NXDOMAIN 응답을받을 때마다 해당 메시지를 기록하는 것으로 보입니다. 내 경우에는 postfix가 실행 중입니다. 따라서 PTR 레코드가 설정되지 않은 임의의 서버가 연결되면 많은 NXDOMAINS가 발생합니다.

당신은 그것을 테스트 할 수 있습니다

systemd-resolve securelogin.example.com

그러면 로그 메시지가 나타납니다.

이를 염두에두면 비교적 무해한 오류 인 것처럼 보이므로 무시할 수 있습니다.


PTR 레코드를 추가했으며 지금까지 통지를받지 못했습니다. 감사!
그레고리 슐츠

아니. 아직도 받고 있어요 다음 단계는 OSSEC이 그들을 무시하도록하는 것입니다. 시스템을 거치고 우회되지 않고 Cloudflare와 관련이 있습니까? 또한 OSSEC에 업데이트가 있음을 알았습니다 (2.9.4에서 3.0.0으로 업데이트). 어떤 일이 발생하는지 업데이트하고 확인합니다.
그레고리 슐츠

시스템 작동 방식의 일부일뿐입니다. systemd-resolve가 해결되지 않은 도메인을 확인하려고하면 해당 메시지를 기록합니다.
Rwky

3

이전 답변과 Ubuntu 18.04 systemd-resolved error 와 같은 다른 웹 페이지를 읽은 후에 내 이해 는 이것이 오류보다 경고이며 내 측면에서 할 수있는 일이 없다는 것입니다.

그러므로 나는 더 이상 우리 쪽에서 어떤 일을해서는 안된다는 말에 동의합니다. 성공하면 시스템이 DNS 요청을 해결하는 일반적인 방식을 변경했을 가능성이 있습니다.

그러나 수천 개가 있으므로 (데스크톱에도 서버가 아닙니다) syslog 파일에 원하지 않습니다. 따라서 https://www.rsyslog.com/doc/v8-stable/configuration/filters.html구성 파일에 숫자 쌍 접두어를 추가 하여 디렉토리에 10-resolv.conf한 줄로 이름이 지정된 파일을 추가했습니다 .:msg, contains, "Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018-0001, retrying transaction with reduced feature level UDP" ~/etc/rsyslog.d

이름 10-resolv.conf은 중요하지 않지만 디렉토리의 다른 모든 파일 이름 앞에 알파벳 순서로 와야합니다. 이 명령 :msg, contains, <message-part> ~은 <message-part>를 포함하는 모든 메시지를 무시해야 ~한다고 명령합니다. 명령 의 물결표 는 메시지를 삭제합니다.

참고 사항 추가 :이 답변을 썼기 때문에 (다른 이유로) 일부 패키지를 설치했으며로 확인 한대로 더 이상 오류 메시지가 생성되지 않습니다 journalctl -u systemd-resolved -f. 이 메시지의 사라짐을 설명 할 수있는 하나의 설치된 패키지는 libnss-resolve입니다.


2

요약:

NXDOMAIN 오류 메시지는 도메인이 존재하지 않음을 의미합니다.

일부 ISP는 NXDOMAIN 오류 메시지에 대한 DNS 하이재킹 또는 DNS 리디렉션을 시작했습니다. DNS (Domain Name System) 이름 확인을 다른 DNS 서버 나 웹 서버로 리디렉션하는 방법입니다.

일반적으로 광고를 표시하거나 통계를 수집하는 데 사용됩니다.

이 방법은 DNS (NXDOMAIN) 응답에 대한 RFC 표준을 위반합니다.

피싱 : 악의적 인 하이재킹으로 인해 사이트 간 스크립팅 공격이 발생할 수 있습니다.

검열 : 선택한 도메인에 대한 액세스를 차단하는 DNS 서비스 제공 업체.

여기에 표시됩니다 : https://www.dnsknowledge.com/whatis/nxdomain-non-existent-domain-2/


0

메시지를 제거 할 수 있었으며 서버 이름을로 server.domain대신 변경하여 마침내 삼바 서버에 연결할 수도있었습니다 server.


0

이것은 EDNS와 관련이 있습니다. 사용의 차이 stub-resolv.confresolv.confIS options edns0.

EDNS (확장 메커니즘)는 인터넷 엔지니어링 커뮤니티에서 프로토콜의 기능을 향상 시키기에는 너무 제한적인 것으로 간주되는 크기 제한이있는 DNS (Domain Name System) 프로토콜의 여러 매개 변수 크기를 확장하기위한 사양입니다.

https://ko.wikipedia.org/wiki/Extension_mechanisms_for_DNS

이 문제에 대한 자세한 내용 : https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1766969

"옵션"을 끌 수 있습니다.


0

문제

이 오류가 발생하는 다른 상황이있을 수 있지만 다음과 같은 결과가 나왔다는 것을 분명히 알 수 있습니다.

systemctl status systemd-resolved

... systemd-resolved구성되지 않은 경우.

그리고 Azure Ubuntu 18.04 VM에는 systemd-resolved기본적으로 구성되어 있지 않습니다 (현재 20191008 기준).

해결책:

구성하십시오 systemd-resolved.

미니 systemd-resolved구성 방법 :

참고 : 다음 지침은 Ubuntu 18.04를 사용하여 준비되었습니다.

systemd-resolved를 참조 할 DNS 확인의 첫 번째 소스로 앞에 추가하여 hosts지시문을 편집하십시오 ./etc/nsswitch.confresolve

hosts:          resolve files dns

편집 /etc/systemd/resolved.conf. 몇 가지 제안 된 설정 :

[Resolve]
DNS=8.8.8.8 8.8.4.4
#FallbackDNS=
#Domains=
#LLMNR=no
#MulticastDNS=no
#DNSSEC=no
Cache=yes
DNSStubListener=yes

다시 시작 systemd-resolved:

sudo systemctl restart systemd-resolved

다음에 systemd-resolved상태를 확인할 때 오류가 지워집니다.

systemctl status systemd-resolved

이제 DNS 확인이 예상대로 작동합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.