Tropic Host

AdGuard Home su un VPS: installazione e blocco della pubblicità

7 min di lettura
Tropic
AdGuard Home su un VPS: installazione e blocco della pubblicità

H1: Come installare e configurare AdGuard Home su un VPS

AdGuard Home è un server DNS gratuito che blocca le richieste verso domini pubblicitari, tracker e altre risorse indesiderate. È possibile instradare attraverso di esso le richieste DNS di computer, telefoni, televisori e altri dispositivi, gestendo il filtraggio da un unico pannello. Di seguito vedremo l’installazione su un VPS Ubuntu o Debian, la configurazione iniziale, il collegamento dei client e la protezione di un server pubblico.

Cosa serve

Per uso personale sono generalmente sufficienti 1 vCPU, 512 MB–1 GB di RAM e alcuni gigabyte di spazio libero. Servono inoltre un indirizzo IP statico, l’accesso SSH e i privilegi di root o sudo.

AdGuard Home utilizza:

  • 3000/TCP per la procedura guidata di configurazione iniziale;
  • 53/UDP e 53/TCP per il DNS normale;
  • una porta scelta dall’utente per l’accesso permanente al pannello.

La porta 53 non deve essere aperta senza restrizioni a tutta Internet. Esamineremo separatamente una configurazione sicura.

Installazione di AdGuard Home su Ubuntu o Debian

Connettiti al VPS tramite SSH e installa curl:

sudo apt update
sudo apt install -y curl

Esegui lo script di installazione ufficiale:

curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sudo sh -s -- -v

Lo script rileverà l’architettura del server, scaricherà la versione stabile, la installerà in /opt/AdGuardHome e creerà un servizio di sistema. Puoi verificarne lo stato con il comando:

sudo /opt/AdGuardHome/AdGuardHome -s status

Apri quindi nel browser:

http://SERVER_IP:3000

Se la pagina non è raggiungibile, controlla il firewall del sistema e le regole nel pannello del provider di hosting.

Configurazione iniziale

Nella procedura guidata devi scegliere gli indirizzi e le porte del pannello di amministrazione e del server DNS.

Per il pannello puoi mantenere la porta 3000 e selezionare l’indirizzo IP del VPS come interfaccia. Crea un nome utente separato e una password robusta: dal pannello è possibile accedere al registro delle richieste, ai filtri e alle impostazioni dei client.

Per il DNS, seleziona l’IP del server e la porta standard 53. Se è già occupata, non sostituirla con una porta casuale: la maggior parte dei dispositivi si aspetta che il DNS normale utilizzi proprio la porta 53. La soluzione a questo conflitto è descritta più avanti.

Al termine della procedura guidata, la pagina principale mostrerà le statistiche delle richieste, il numero di blocchi, i client attivi e i domini più richiesti.

Come funziona il filtraggio DNS

Prima di connettersi a un sito o a un servizio, il dispositivo richiede l’indirizzo IP del dominio. AdGuard Home confronta il dominio con le liste di regole. Una richiesta verso una rete pubblicitaria o un tracker viene bloccata, mentre una richiesta consentita viene inoltrata a un server DNS upstream.

Questo approccio offre un filtraggio centralizzato per tutta la rete e funziona non solo nei browser, ma anche in molte applicazioni mobili e sulle Smart TV. Sono inoltre disponibili il registro delle richieste, regole per singoli dispositivi, ricerca sicura e blocco programmato dei servizi.

AdGuard Home non decifra HTTPS e non modifica il codice delle pagine. Blocca quindi le richieste di dominio, ma non può rimuovere ogni elemento pubblicitario.

Impostazioni principali dopo l’installazione

Server DNS upstream

Apri Impostazioni → Impostazioni DNS. Qui vengono specificati i server ai quali AdGuard Home inoltra le richieste consentite. All’inizio puoi mantenere i valori proposti e successivamente scegliere resolver affidabili con DNS-over-HTTPS o DNS-over-TLS.

Il DNS upstream crittografato protegge il tratto dal VPS al resolver esterno. La connessione dal dispositivo al VPS deve essere protetta separatamente tramite DoH, DoT o VPN.

Liste di blocco

Il filtro di base è già attivo. Non aggiungere subito decine di grandi liste: si sovrappongono e aumentano il rischio di falsi blocchi. Aggiungi una lista alla volta per uno scopo specifico e controlla il registro delle richieste.

Se un sito o un’applicazione smette di funzionare dopo una modifica, trova il dominio bloccato nel registro e aggiungi un’eccezione mirata.

Regole personalizzate

Nelle regole personalizzate puoi bloccare o consentire un singolo dominio:

||ads.example.com^
@@||needed.example.com^

La prima riga blocca il dominio, mentre la seconda aggiunge un’eccezione.

Servizi, pianificazione e client

AdGuard Home può bloccare completamente singoli servizi e applicare una pianificazione. Se aggiungi i dispositivi come client permanenti, puoi assegnare regole diverse a un computer, al tablet di un bambino e a un televisore.

Come collegare i dispositivi

L’installazione del server da sola non modifica il DNS sui dispositivi. L’indirizzo di AdGuard Home deve essere indicato sul router o su ogni client.

Tramite il router

Apri le impostazioni del router e trova la sezione DHCP, LAN o DNS. Indica l’indirizzo IP di AdGuard Home come server DNS, salva la configurazione e riconnetti i dispositivi alla rete.

Non aggiungere un DNS pubblico come secondo indirizzo se il filtraggio deve essere obbligatorio. Alcuni dispositivi utilizzano entrambi gli indirizzi e possono aggirare AdGuard Home. Per la tolleranza ai guasti è preferibile distribuire una seconda istanza.

Su un singolo dispositivo

Per una prova, puoi modificare il DNS soltanto su un computer o un telefono:

  • Windows — proprietà della scheda di rete e impostazioni IPv4/IPv6;
  • macOS — impostazioni della connessione attiva;
  • Android e iOS — impostazioni della rete Wi-Fi corrente;
  • Smart TV — impostazioni di rete manuali.

Una normale configurazione Wi-Fi non si applica quando si utilizzano i dati mobili. Per far funzionare il filtraggio su qualsiasi rete, serviranno DoH, DoT o una VPN.

Puoi verificare il server con il comando:

nslookup example.org SERVER_IP

La richiesta dovrebbe comparire nel registro di AdGuard Home.

Configurazione sicura su un VPS pubblico

Gli scanner automatici individuano rapidamente un resolver DNS aperto. Client non autorizzati possono utilizzarlo o coinvolgerlo in attacchi DNS, generando carico aggiuntivo e il rischio di segnalazioni relative all’indirizzo IP.

Per una prova, consenti l’accesso soltanto dal tuo IP pubblico. Se UFW non è installato, aggiungilo prima con sudo apt install -y ufw.

sudo ufw allow OpenSSH
sudo ufw allow from YOUR_IP to any port 3000 proto tcp
sudo ufw allow from YOUR_IP to any port 53 proto udp
sudo ufw allow from YOUR_IP to any port 53 proto tcp
sudo ufw enable

Consenti prima SSH, altrimenti potresti perdere l’accesso al VPS. Se il tuo IP cambia spesso, collega i dispositivi tramite WireGuard, Tailscale o un’altra VPN.

Per l’uso permanente da reti diverse, è preferibile configurare un dominio, un certificato TLS e un DNS sicuro:

  • 443/TCP per DNS-over-HTTPS;
  • 853/TCP per DNS-over-TLS;
  • limitazioni dei client e della frequenza delle richieste nelle impostazioni di AdGuard Home.

Anche il pannello di amministrazione deve essere protetto da un firewall o da una VPN. Il registro contiene i domini visitati dai dispositivi, quindi conservalo soltanto per il tempo necessario.

Errore «la porta 53 è già occupata»

Su Ubuntu, la porta 53 è spesso occupata da systemd-resolved. Puoi controllare i processi in ascolto con:

sudo ss -lntup | grep ':53'

Se il servizio è in ascolto soltanto su 127.0.0.53, prova prima ad associare AdGuard Home all’indirizzo IP specifico del VPS invece che a tutte le interfacce.

Se il conflitto persiste, disattiva il listener stub DNS locale:

sudo mkdir -p /etc/systemd/resolved.conf.d

printf '[Resolve]\nDNS=127.0.0.1\nDNSStubListener=no\n' | \
sudo tee /etc/systemd/resolved.conf.d/adguardhome.conf

sudo mv /etc/resolv.conf /etc/resolv.conf.backup
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
sudo systemctl reload-or-restart systemd-resolved
sudo /opt/AdGuardHome/AdGuardHome -s restart

Non chiudere la sessione SSH finché non hai verificato che il server risolva nuovamente i nomi di dominio e che AdGuard Home sia in funzione.

Aggiornamento e backup

Puoi eseguire l’aggiornamento dal pannello o con il comando:

cd /opt/AdGuardHome
sudo ./AdGuardHome --update

Prima di modifiche importanti, salva il file /opt/AdGuardHome/AdGuardHome.yaml e la directory /opt/AdGuardHome/data/. Contengono impostazioni, client, filtri e dati operativi.

Quale VPS scegliere per AdGuard Home

Per una famiglia o un piccolo team sono generalmente sufficienti 1 vCPU e 1 GB di RAM. Se insieme ad AdGuard Home verranno eseguiti anche una VPN, un sistema di monitoraggio o altre applicazioni, prevedi memoria aggiuntiva.

Un VPS di tropic.host è adatto a questa attività: puoi installare Ubuntu o Debian, ottenere un indirizzo IP dedicato e mantenere il server DNS disponibile 24 ore su 24 senza dipendere da un computer domestico. Quando lo esponi a Internet, utilizza sempre un firewall, un DNS sicuro o una VPN.

Limiti di AdGuard Home

Il filtraggio DNS non sostituisce un blocco pubblicitario nel browser, un antivirus o un firewall. Non può rimuovere in modo affidabile la pubblicità caricata dallo stesso dominio dei contenuti principali. Per questo motivo, a livello DNS non è possibile eliminare in modo affidabile gli annunci video di YouTube e Twitch o i contenuti sponsorizzati all’interno dei social network senza compromettere il funzionamento dei servizi stessi.

Dopo il blocco possono rimanere spazi vuoti nella pagina. Un’estensione del browser può nascondere gli elementi della pagina e quindi può essere utilizzata insieme ad AdGuard Home. Alcune applicazioni usano inoltre un proprio DNS crittografato e possono aggirare le impostazioni di sistema.

In breve

AdGuard Home blocca centralmente una parte significativa della pubblicità e dei tracker su computer, telefoni e altri dispositivi. Si installa su un VPS in pochi minuti e non richiede molte risorse.

Dopo l’installazione, configura i client e i filtri, proteggi il pannello e non lasciare la porta 53 aperta a tutta Internet. Per l’accesso da reti mobili ed esterne, utilizza una VPN, DNS-over-HTTPS o DNS-over-TLS.

FAQ

AdGuard Home è gratuito?

Sì. AdGuard Home è distribuito gratuitamente e non richiede un abbonamento. Si paga soltanto il dispositivo o il VPS sul quale viene eseguito.

AdGuard Home blocca la pubblicità su YouTube?

No. Pubblicità e video possono essere caricati dagli stessi domini, quindi il blocco DNS comprometterebbe il funzionamento di YouTube stesso.

Il filtraggio funziona tramite rete mobile?

Sì, se configuri DNS-over-TLS, DNS-over-HTTPS, un profilo compatibile o una VPN. La modifica del DNS nelle impostazioni Wi-Fi vale soltanto per quella rete.

Quanta RAM è necessaria?

Per uso personale sono generalmente sufficienti 512 MB–1 GB di RAM. Potrebbe essere necessaria memoria aggiuntiva con molti client, filtri estesi o altri servizi in esecuzione.

Cosa fare se un sito non si apre dopo aver attivato il filtro?

Apri il registro delle richieste, ripeti l’azione che causa il problema e individua il dominio bloccato. Aggiungi un’eccezione mirata invece di disattivare tutto il filtraggio.