Продолжает появляться новое предупреждение: Сервер вернул ошибку NXDOMAIN, устраняющую потенциальное нарушение DNS DVE-2018-0001

Я только что установил новый сервер Ubuntu 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-loopbackff02::1 ip6-allnodesff02::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.]

Я искал решение в Интернете, и никто не сообщает об этой проблеме.

Это предупреждение регистрируется systemd-resolved всякий раз, когда имя не может быть разрешено системой DNS (например, nslookup www.kjfoiqaefah34876asdf.com). С этим можно мириться, и это не повод для беспокойства.Это не ошибка, и ничего не нужно исправлять.

Перенаправление /etc/resolv.conf к /run/systemd/resolve/resolv.conf это неправильно, потому что таким образом systemd-resolved пропускается, и приложение с ошибочным DNS-запросом обращается непосредственно к серверу имен, а не к systemd-resolved больше не заглушка. Таким образом systemd-resolved больше не замечает события NXDOMAIN и, следовательно, больше не может их регистрировать.

События NXDOMAIN вызываются пакетами, которые пытаются получить доступ к несуществующим серверам во время запуска системы.

ВАЖНО: Решение, размещенное здесь, скрывает проблемное сообщение, обходя важную часть вашей системы (демон DNS resolver). Это может привести к сбою 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

Надеюсь, это помогло.

Я спросил на GitHub OSSEC об этой ошибке и они рекомендовали написать правило для игнорирования ошибок 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>

Проблема

Хотя могут быть и другие обстоятельства, при которых возникнет эта ошибка, я могу определенно сказать, что я видел, как ее вырвало на выходе:

systemctl status systemd-resolved

...когда systemd-resolved не настроен.

И еще Лазурь Виртуальная машина Ubuntu 18.04 не имеет systemd-resolved настроен из коробки (по состоянию на сегодняшний день, 20191008).

Решение:

Конфигурировать systemd-resolved.

Мини systemd-resolved Настройка HowTo:

записка: Следующие инструкции были подготовлены с использованием Ubuntu 18.04

Редактировать hosts директива в /etc/nsswitch.conf добавляя resolve который устанавливает systemd-resolved в качестве первого источника разрешения DNS, к которому будут обращаться:

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=noCache=yesDNSStubListener=yes

Перезапуск systemd-resolved:

sudo systemctl restart systemd-resolved

Когда вы в следующий раз проверите systemd-resolvedстатус, ошибка теперь должна быть устранена:

systemctl status systemd-resolved

И разрешение DNS теперь должно вести себя ожидаемым образом.

Я заметил то же самое на сервере Ubuntu 18.04, который недавно был обновлен до 18.04.1.

Похоже, что systemd-resolve регистрирует это сообщение всякий раз, когда получает какой-либо ответ NXDOMAIN. В моем случае у меня запущен постфикс. Таким образом, я получаю много NXDOMAINS, когда подключаются случайные серверы, для которых не установлена запись PTR.

Вы можете протестировать его с помощью

systemd-resolve securelogin.example.com

Затем вы должны увидеть сообщение журнала.

Имея это в виду, это может показаться относительно безобидной ошибкой, и вы можете игнорировать ее.

Мое понимание после прочтения предыдущих ответов и других веб-страниц, таких как Ubuntu 18.04 systemd-устранена ошибка NXDOMAIN заключается в том, что это скорее предупреждение, чем ошибка, и я ничего не могу с этим поделать со своей стороны.

Поэтому я согласен с теми, кто говорит, что мы не должны пытаться что-то сделать со своей стороны, чтобы эти сообщения больше не появлялись. Если нам это удастся, вполне вероятно, что мы изменили обычный способ, которым система разрешает DNS-запросы.

Однако, поскольку у меня их тысячи (я также нахожусь на рабочем столе - это не сервер), я не хочу, чтобы они были в моем файле системного журнала. Поэтому, следуя 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> ~ говорит, что все сообщения, содержащие "часть сообщения", должны игнорироваться: тильда ~ в команде сказано отбросить сообщение.

Добавлено примечание: С тех пор, как я написал этот ответ, я установил некоторые пакеты (по другим причинам), и сообщение об ошибке больше не выдается, как указано в journalctl -u systemd-resolved -f. Одним из установленных пакетов, который может объяснить исчезновение этого сообщения, является libnss-resolve.

Резюме:

ДОМЕН NXDOMAIN сообщение об ошибке означает, что домен не существует.

Некоторые интернет-провайдеры начали захват DNS или перенаправление DNS для сообщений об ошибках NXDOMAIN.Это практика перенаправления разрешения имен Системы доменных имен (DNS) на другие DNS-серверы или веб-серверы.

Обычно используется для показа рекламы или сбора статистики.

Эта практика нарушает стандарт RFC для ответов DNS (NXDOMAIN).

Фишинг: Межсайтовые скриптовые атаки могут возникать из-за злонамеренного захвата.

Цензура: поставщики услуг DNS блокируют доступ к выбранным доменам.

Появился здесь: https://www.dnsknowledge.com/whatis/nxdomain-non-existent-domain-2/

По-видимому, он больше не ссылается на 127.0.0.53, но у меня не было никаких проблем с ним после повторного подключения.

Я думаю, что в этом есть сообщение об ошибке. Во всяком случае, это сработало очень хорошо после повторного подключения.

Шаги:

# systemctl status systemd-resolved# unlink /etc/resolv.conf# ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf# systemctl restart systemd-resolved# systemctl status systemd-resolved

Я смог избавиться от сообщения, и, кстати, я также смог наконец подключиться к своему серверу samba, изменив имя сервера на server.domain вместо того, чтобы только server.

В моем случае Google Cloud не любит CloudFlare DNS. После выполнения следующей команды из бейн выше

sudo tcpdump -vv port 53 | grep NXDomain

Когда я открываю свой домен в браузере, я получаю:

>dns.google.domain ....: [udp sum ok] .... NXDomain q: PTR? ... ns: .... SOA ....cloudflare.com. dns.cloudflare.com. ....

Возможно, так же обстоит дело и с другими поставщиками VPS-CDN.

Перенос DNS на ваш VPS / облачный провайдер может помочь.

Вы находитесь за пленным порталом?

Нет, это сервер Linode 4GB

Если вы закомментируете две добавленные вами строки, будет ли это иметь значение? Я не думаю, что ошибки связаны с вашим /etc/hosts. Они происходят из-за того, что инфраструктура, за которой стоит сервер, вероятно, делает что-то не так. resolved: Mitigate DVE-2018-0001, by retrying NXDOMAIN without EDNS0. by xnox · Pull Request #8608 · systemd/systemd · GitHub похоже, это проблема, с которой вы столкнулись, и это был первый результат поиска для “DVE-2018-0001”. Я не думаю, что вы получите удовлетворительный ответ, пока проблема с исходным кодом не будет исправлена и выпущена.

Я получил эту ошибку, когда моя страна заблокировала торренты