O novo alerta continua aparecendo: o servidor retornou o erro NXDOMAIN, atenuando a possível violação de DNS DVE-2018-0001

37

Acabei de instalar um novo Ubuntu Server 18.04. Defino meu nome de host hostnamectl set-hostname ****.openbayou.bize defino /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

Também instalei o OSSEC para monitorar novos arquivos, erros e alterações no meu servidor e agora estou recebendo estes alertas:

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

Agora está se repetindo:

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.]

Procurei online uma solução e ninguém está relatando esse problema.

Gregory Schultz
fonte
Você está por trás de um portal cativo?
Dobey
Não, este é um servidor Linode de 4 GB
Gregory Schultz
Se você comentar as duas linhas adicionadas, isso faz alguma diferença? Eu não acho que os erros sejam sobre o seu / etc / hosts. Eles estão acontecendo devido à infra-estrutura em que o servidor está por trás e provavelmente fazendo algo errado. O github.com/systemd/systemd/pull/8608 parece ser o problema que você está tendo e foi o primeiro resultado de pesquisa para "DVE-2018-0001". Acho que você não receberá uma resposta satisfatória até que o problema do upstream seja corrigido e lançado.
Dobey

Respostas:

33

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

O mesmo erro aconteceu com a minha máquina desktop, não sei se também se aplica ao servidor.

Parece que meu sistema tinha a configuração antiga no local, resultando em um conflito entre dois serviços: resolvconfe systemd-resolved.

O link simbólico /etc/resolv.confapontou para../run/resolvconf/resolv.conf

Alterá-lo para apontar para o /run/systemd/resolve/resolv.confqual é gerenciado pelo systemd, corrigi-lo para mim.

Leia mais aqui .

Espero que tenha ajudado.

Panagiotis Tabakis
fonte
6
O meu está apontando para /run/systemd/resolve/stub-resolv.confuma instância do Ubuntu 18.10.
Datashaman 11/1118
Esqueci de mencionar meu sistema. Último KDE Neon, (baseado no Ubuntu), 18.04.1, 4.15.0-39-genérico.
Panagiotis Tabakis
11
Isso corrigiu o problema para mim também. THX!
Witek
3
@datashaman Foi o mesmo caso para mim, mas alterando o link simbólico para o ponto /run/systemd/resolve/resolv.confde /run/systemd/resolve/stub-resolv.confcorrigido o problema para mim. Não vejo mais esse erro.
Karthic Raghupathi
O mesmo funcionou para mim. Estou no 18.10, mas migrou do 18.04. Mudar o /etc/resolv.conf -> /run/systemd/resolve/resolv.conffez o truque.
Igor Kupczyński
10

Perguntei no OSSEC GitHub sobre esse erro e eles recomendaram a criação de uma regra para ignorar os erros do NXDOMAIN. adicionar à/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>
Gregory Schultz
fonte
você se importa de adicionar o link à recomendação na sua resposta? Seria útil para outras pessoas com o mesmo problema. obrigado!
Leo
11
não funciona no ubunto 18.04
ajcg 26/03
9

Este aviso é registrado por resolvido pelo sistema, sempre que um nome não puder ser resolvido pelo sistema DNS (por exemplo, nslookup www.kjfoiqaefah34876asdf.com). Isso pode ser tolerado e não há motivo para se alarmar. Isso não é erro e nada precisa ser corrigido.

Redirecionar /etc/resolv.conf para /run/systemd/resolve/resolv.conf está errado, porque dessa maneira systemd-resolved é ignorado e o aplicativo com a solicitação DNS com defeito fala diretamente com o servidor de nomes e não com o systemd-resolved esboço mais. Dessa forma, systemd-resolved não percebe mais os eventos NXDOMAIN e, portanto, não pode mais registrá-los.

Os eventos NXDOMAIN são causados ​​por pacotes, que tentam acessar servidores não existentes durante a inicialização do sistema.

Hermann Klein
fonte
4
Existe alguma maneira de descobrir quais são os nomes não resolvidos?
Pare de prejudicar Monica
5
@OrangeDogtcpdump -vv port 53 | grep NXDomain
bain
7

Notei a mesma coisa em um servidor Ubuntu 18.04 que foi atualizado recentemente para 18.04.1.

Parece que a resolução do sistema registra essa mensagem sempre que obtém qualquer resposta NXDOMAIN. No meu caso, tenho o postfix em execução. Portanto, recebo muitos NXDOMAINS quando servidores aleatórios se conectam sem o registro PTR definido.

Você pode testá-lo com

systemd-resolve securelogin.example.com

Então você deve ver a mensagem de log aparecer.

Com isso em mente, parece ser um erro relativamente inócuo e você pode ignorá-lo.

Rwky
fonte
Adicionado registro PTR e não recebeu nenhum aviso (até o momento). Obrigado!
Gregory Schultz
Não. Ainda os pegando. Pense que o próximo estágio é fazer com que o OSSEC os ignore. Seria algo relacionado ao Cloudflare, uma vez que ele atravessa seus sistemas e não é ignorado? Além disso, vejo que o OSSEC possui uma atualização (na 2.9.4, atualização para 3.0.0). Irá atualizar e ver o que acontece.
Gregory Schultz
É apenas parte de como o systemd funciona. Se systemd-resolve tentar resolver um domínio que não resolva, ele registra essa mensagem.
Rwky
3

Meu entendimento, depois de ler as respostas anteriores e outras páginas da Web, como o erro NXDOMAIN do Ubuntu 18.04, resolvido pelo sistema, é que isso é mais um aviso do que um erro e não há nada que eu possa fazer do meu lado.

Portanto, concordo com aqueles que dizem que não devemos tentar fazer algo do nosso lado para que essas mensagens não sejam mais produzidas. Se tivermos sucesso, é provável que tenhamos alterado a maneira normal como o sistema resolve as solicitações de DNS.

No entanto, como tenho milhares deles (também estou em uma área de trabalho - não é um servidor), não os quero no meu arquivo syslog. Portanto, seguindo https://www.rsyslog.com/doc/v8-stable/configuration/filters.html e número par prefixo para arquivos de configuração , eu adicionei um arquivo nomeado 10-resolv.confcom uma única linha :msg, contains, "Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018-0001, retrying transaction with reduced feature level UDP" ~no diretório /etc/rsyslog.d .

O nome 10-resolv.confnão é importante, mas deve preceder todos os outros nomes de arquivos no diretório em ordem alfabética. O comando :msg, contains, <message-part> ~diz que todas as mensagens que contêm <parte da mensagem> devem ser ignoradas: o til ~no comando diz para descartar a mensagem.

Nota adicionada: como escrevi esta resposta, instalei alguns pacotes (por outros motivos) e a mensagem de erro não é mais produzida conforme verificado journalctl -u systemd-resolved -f. Um pacote instalado que pode explicar o desaparecimento desta mensagem é libnss-resolve.

Dominic108
fonte
2

Resumo:

A mensagem de erro NXDOMAIN significa que um domínio não existe.

Alguns ISPs iniciaram o seqüestro de DNS ou o redirecionamento de DNS para mensagens de erro NXDOMAIN. É a prática de redirecionar a resolução de nomes DNS (Sistema de Nomes de Domínio) para outros servidores DNS ou servidores Web.

Comumente usado para exibir anúncios ou coletar estatísticas.

Essa prática viola o padrão RFC para respostas DNS (NXDOMAIN).

Phishing: ataques de script entre sites podem ocorrer devido a seqüestros maliciosos.

Censura: provedores de serviços DNS para bloquear o acesso aos domínios selecionados.

Mostrado aqui: https://www.dnsknowledge.com/whatis/nxdomain-non-existent-domain-2/

Hóspede
fonte
0

Consegui me livrar da mensagem e, finalmente, também consegui me conectar ao meu servidor samba, alterando o nome do servidor para em server.domainvez de apenas server.

rosch
fonte
0

Isso parece relacionado ao EDNS. A diferença entre usar stub-resolv.confe resolv.confé options edns0.

Mecanismos de extensão para DNS (EDNS) é uma especificação para expandir o tamanho de vários parâmetros do protocolo DNS (Domain Name System) que tinham restrições de tamanho que a comunidade de engenharia da Internet considerou muito limitada para aumentar a funcionalidade do protocolo.

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

Mais detalhes nesta edição: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1766969

Parece que você pode simplesmente desativar essa "opção".

Carson Reinke
fonte
0

Problema

Embora possa haver outras circunstâncias em que esse erro ocorrerá, posso definitivamente dizer que já o vi vomitar na saída de:

systemctl status systemd-resolved

... quando systemd-resolvednão está configurado.

E uma VM do Ubuntu 18.04 do Azure não está systemd-resolvedconfigurada pronta para uso (a partir de hoje, 20191008).

Solução:

Configure systemd-resolved.

Como fazer com a mini systemd-resolvedconfiguração:

NOTA : As instruções a seguir foram preparadas usando o Ubuntu 18.04

Edite a hostsdiretiva /etc/nsswitch.confanexando o resolveque define o systemd-resolved como a primeira fonte de resolução de DNS que será consultada:

hosts:          resolve files dns

Edit /etc/systemd/resolved.conf. Algumas configurações sugeridas:

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

Reiniciar systemd-resolved:

sudo systemctl restart systemd-resolved

Quando você verificar systemd-resolvedo status da próxima vez , o erro agora deve ser limpo:

systemctl status systemd-resolved

E a resolução do DNS agora deve se comportar da maneira esperada.

F1Linux
fonte