Blog Linux Avante

Ubuntu: como liberar a porta 53, usada por systemd-resolved

6 de julho de 2020

Port systemd-resolvidos 53 Ubuntu

O Ubuntu tem escuta resolvida pelo sistema na porta 53 por padrão. Caso queira rodar seu próprio servidor DNS, você não pode porque a porta 53 já está em uso, então você obterá um erro semelhante a este: "listen tcp 0.0.0.0:53: bind: address already in use" .

Este artigo explica como impedir que o systemd-resolved use a porta 53 no Ubuntu. As instruções foram testadas no Ubuntu 20.04, mas também devem funcionar em outras versões do Ubuntu, por exemplo, Ubuntu 18.04, o próximo Ubuntu 20.10, bem como distribuições Linux baseadas no Ubuntu como Pop!_OS, Zorin OS, Elementary OS, Linux Mint e assim por diante. Basicamente, isso funciona em qualquer sistema com a versão 232 do systemd ou mais recente.

Para ver se a porta 53 está em uso em seu sistema, use:

Comandos para usar no terminal

sudo lsof -i: 53

Exemplo com saída, mostrando que systemd -olved está usando a porta 53 em um sistema Ubuntu 20.04 padrão:

$ sudo lsof -i :53

COMMAND   PID            USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
systemd-r 610 systemd-resolve   12u  IPv4  19377      0t0  UDP localhost:domain 
systemd-r 610 systemd-resolve   13u  IPv4  19378      0t0  TCP localhost:domain (LISTEN)

Caso você não obtenha nenhuma saída, significa que a porta 53 não está em uso.

Como impedir que o systemd-resolved use a porta 53 no Ubuntu

É importante notar que você pode liberar a porta 53 simplesmente descomentando DNSStubListener e definindo-o como no em /etc/systemd/resolved.conf. As outras etapas são para habilitar um servidor DNS. Sem ele, seu sistema não será capaz de resolver nenhum nome de domínio, então você não poderá visitar sites no navegador da web, etc.

1. Edite as configurações

Edite /etc/systemd/resolved.conf com um editor de texto (como root), por exemplo abra-o com o editor de texto do console Nano:

Comandos para usar no terminal

sudo nano /etc/systemd/resolved.conf

E retire o comentário (remova # do início da linha) a linha DNS= e a linha DNSStubListener=. Em seguida, altere o valor DNS= neste arquivo para o servidor DNS que você deseja usar (por exemplo, 127.0.0.1 para usar um proxy local, 1.1.1.1 para usar o DNS Cloudflare, etc.) e também altere o valor DNSStubListener= de sim para não.

É assim que o arquivo deve ficar depois que você fez essas alterações (estou usando 1.1.1.1 como o servidor DNS aqui, que é o DNS Cloudflare):

[Resolve]
DNS=1.1.1.1
#FallbackDNS=
#Domains=
#LLMNR=no
#MulticastDNS=no
#DNSSEC=no
#DNSOverTLS=no
#Cache=no
DNSStubListener=no
#ReadEtcHosts=yes

Para salvar o arquivo usando o editor de texto Nano, pressione Ctrl + x, digite y e pressione Enter.

2. Crie um link simbólico

Crie um link simbólico para /run/systemd/resolve/resolv.conf com /etc/resolv.conf como destino:

Comandos para usar no terminal

sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

Aqui, -s é para criar um link simbólico e não físico, e -f é para remover quaisquer arquivos de destino existentes (portanto, remove /etc/resolv.conf se existir).

3. Reinicie seu sistema

A porta 53 agora deve estar livre em seu sistema Ubuntu, e você não deve mais receber erros como "listen tcp 127.0.0.1:53: bind: endereço já em uso".

Você pode verificar se a porta 53 está em uso ou não executando sudo lsof -i: 53. Se a porta 53 não estiver em uso, este comando não deve mostrar nenhuma saída.

Você pode gostar:

Como desfazer as mudanças

Deseja desfazer as alterações seguindo as instruções neste artigo? É isto que você deve fazer.

1. Comece editando /etc/systemd/resolved.conf com um editor de texto (como root), por exemplo abra-o com o editor de texto do console Nano:

Comandos para usar no terminal

sudo nano /etc/systemd/resolved.conf

E comente (adicione # antes da linha) DNS= e DNSStubListener=no e salve o arquivo. Para salvar o arquivo usando o editor de texto Nano, pressione Ctrl + x, digite y e pressione Enter.

2. Remova o link simbólico /etc/resolv.conf:

Comandos para usar no terminal

sudo rm /etc/resolv.conf

3. Reinicie seu sistema.

Confira a versão original desse post em inglês
Propaganda
Blog Comments powered by Disqus.