[GUIDA] Ubuntu: come liberare la porta 53 usata da systemd-resolved
Ubuntu ha systemd-resolved settato sulla porta 53 di default. Nel caso in cui vogliate usare quella specifica porta, magari per lanciare il vostro server DNS, non potete farlo. Ricevereste un errore simile al seguente: “listen tcp 0.0.0.0:53: bind: address already in use“. In questa breve guida vediamo come liberare la porta 53.
Le istruzioni seguenti funzionano su Ubuntu 20.04 ma anche su Ubuntu 18.04 e sulle varie derivate di Ubuntu (mi riferisco a Pop!_OS, Zorin OS, Elementary OS, Linux Mint, etc). Inoltre, funziona con qualsiasi sistema con systemd 232 o superiore.
Ubuntu, liberiamo la porta 53
Per verificare che la porta 53 sia in uso date il seguente comando:
sudo lsof -i :53
Se l’output che ottenete è analogo al seguente allora la porta è effettivamente in uso:
Al contrario, se non ottenete alcun output, la porta non è in uso.
Vale la pena sottolineare che è possibile liberare la porta 53 semplicemente decommentando DNSStubListener
e impostandolo su no
in /etc/systemd/resolved.conf
. Gli altri passaggi sono per abilitare un server DNS: senza di esso, il tuo sistema non sarà in grado di risolvere alcun nome di dominio, quindi non sarai in grado di visitare siti Web etc. Procediamo per punti:
- Modificate il file
/etc/systemd/resolved.conf
con un text editor (con i privilegi di root), ad esempio potete usare nano:sudo nano /etc/systemd/resolved.conf
; - Decommentate la linea
DNS=
e la lineaDNSStubListener=
rimuovendo l’#
; - Cambiate il valore
DNS=
impostandolo a piacimento (es: 1.1.1.1 per usare i DNS di Cloudflare); - Cambiate la riga
DNSStubListener=
impostandola suno
; - Se avete usato Nano date
Ctrl + x
, poiy
e infineEnter
per salvare e chiudere.
Il file, se avete operato correttamente, apparirà così al termine delle operazioni:
[Resolve]
DNS=1.1.1.1
#FallbackDNS=
#Domains=
#LLMNR=no
#MulticastDNS=no
#DNSSEC=no
#DNSOverTLS=no
#Cache=no
DNSStubListener=no
#ReadEtcHosts=yes
Giunti a questo punto non vi resta che creare un link per /run/systemd/resolve/resolv.conf
con /etc/resolv.conf
come destinazione:
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Riavviate il vostro sistema Ubuntu based. Se tutto è andato a buon fine la porta 53 dovrebbe essere libera sul vostro sistema. Per controllare, di nuovo, usiamo il comando sudo lsof -i :53
: non dovrebbe restituire alcun output.
Annullare queste modifiche
Per annullare quanto fatto bisogna procedere a ritroso. Aprite con un editor il file
/etc/systemd/resolved.conf
. Commentate le righe DNS=
e DNSStubListener=no
dopodiché salvate le modifiche. Rimuovete il link in questo modo:sudo rm /etc/resolv.conf
Riavviate il sistema.
Seguiteci sul nostro canale Telegram, sulla nostra pagina Facebook e su Google News. Nel campo qui sotto è possibile commentare e creare spunti di discussione inerenti le tematiche trattate sul blog.