我刚刚安装了新的 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.]
我在网上寻找解决方案,但没有人报告此问题。
答案1
每当 DNS 系统无法解析名称时(例如 nslookup),systemd-resolved 就会记录此警告www.kjfoiqaefah34876asdf.com)。这是可以容忍的,没有理由感到恐慌。这不是错误,不需要修复任何东西。
重定向/etc/resolv.conf
到/run/systemd/resolve/resolv.conf
是错误的,因为这种方式systemd-resolved
会被跳过,并且带有错误 DNS 请求的应用程序将直接与名称服务器对话,而不再与存根对话systemd-resolved
。这种方式systemd-resolved
不再会注意到 NXDOMAIN 事件,因此无法再记录它。
NXDOMAIN 事件是由程序包在系统启动期间尝试访问不存在的服务器引起的。
答案2
重要提示:此处发布的解决方案通过绕过系统的重要部分(DNS解析器守护程序)来隐藏有问题的消息。它可能会导致将来的DNS故障(例子)。有关正确处理错误消息的方法,请参阅这个答案。
Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018-
0001, retrying transaction with reduced feature level UDP.
同样的错误也发生在我的台式机上,我不知道它是否也适用于服务器。
看来我的系统中还保留着旧的配置,导致两个服务之间发生冲突:resolvconf
和systemd-resolved
。
符号链接/etc/resolv.conf
指向../run/resolvconf/resolv.conf
将其更改为指向/run/systemd/resolve/resolv.conf
由 systemd 管理的位置,就为我修复了这个问题。
阅读更多在 Ubuntu 论坛上
希望有所帮助。
答案3
我在 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>
答案4
我在最近更新到 18.04.1 的 Ubuntu 18.04 服务器上注意到了同样的情况。
似乎 systemd-resolve 每次收到任何 NXDOMAIN 响应时都会记录该消息。就我而言,我运行的是 postfix。因此,当随机服务器连接且未设置 PTR 记录时,我会收到大量 NXDOMAINS。
你可以用以下方法测试
systemd-resolve securelogin.example.com
然后你就会看到日志消息出现。
考虑到这一点,这似乎是一个相对无害的错误,你可以忽略它。