web analytics

[GUIDA] Ubuntu: come liberare la porta 53 usata da systemd-resolved

ubuntu 19.04 eol

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:

ubuntu porta 53 systemd-resolve

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 linea DNSStubListener= 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 su no;
  • Se avete usato Nano date Ctrl + x, poi y e infine Enter 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.

sharing-caring-1Seguiteci 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.