Come bloccare la pubblicità, facile con Pi-hole!


Informatica / venerdì, Gennaio 17th, 2020

Ogni sito web, dalla testata giornalistica famosa, ai mega portali fino al semplice BLOG personale, richiedono tempo e spesso denaro per la stesura degli articoli.

Per ripagarsi degli sforzi o almeno il costo del server web, si è spesso fatto uso dei banner pubblicitari più o meno invadenti, da quelli a bordo pagina fino a quelli a tutto schermo con finto pulsante di chiusura per costringere gli utenti, che volevano semplicemente leggere un articolo, a sorbirsi immagini, video e phishing estremo.

L’unica pubblicità, a mio parere ben accetta, nonchè utile e gradita, sono i link all’interno del testo che puntano ai prodotti consigliati dall’autore, fornendogli una percentuale sulle vendite, denominate affiliazioni.

Plugin come Adblock plus si sono fatti strada sempre più nei computer degli utenti, abbastanza da infastidire chi utilizza questa forma di pubblicità e cosi creare script di blocco, in grado di rilevare se l’utente ha adblock attivo e di obbligarlo a disattivarlo per riuscire a leggere l’articolo.

Cos’è Pi-hole:

Se sei un felice possessore di un RaspberryPi o anche un GNU/linux compatibile, potrai usare Pi-hole, ecco la lista di compatibilità e requisiti .
Pi-hole è un software che, con un solo comando e poche risorse, è in grado di installare un server DNS (Domain Name System) nella rete aziendale o casalinga, in grado di bloccare tutte le richieste di pagine pubblicitarie eseguite da ogni dispositivo in rete, smartphone compresi, senza bisogno di modificarli.

Quando si apre un sito internet, il computer richiede al server (solitamente rappresentato dal router ADSL), come trovare tutte le parti che compongono il sito web richiesto, testo, immagini, video e banner.
Pi-hole intercetta la richiesta delle pubblicità e le blocca, mostrando cosi le pagine web ripulite ed anche le APP degli smartphone.

I programmatori di Pi-hole, finanziano il loro lavoro richiedendo una donazione volontaria e la vendita di gadget nel loro sito ufficiale, mentre di qui, trovate il BLOG con le loro news.

Pi-hole una volta installato, tramite il comando che dicevamo prima, attiva una moderna e semplice interfaccia di gestione e per chi preferisce i comandi da shell o le API.

Installazione:

L’installazione di Pi-hole è semplicissima, basta digitare da shell come utente root questo comando

sudo curl -sSL https://install.pi-hole.net | bash

per correttezza, gli sviluppatori avvertono che lanciare comandi del genere è pericoloso, perché non conosci lo script memorizzato nel sito web che stai lanciando, consigliano quindi di leggere prima la seguente guida. Mentre per verificare cosa verrà mandato in esecuzione, è sufficiente aprire il link dello script.

Clicca l’immagine per vedere il processo completo di installazione

La prima fase verifica i permessi di root e controlla se i pacchetti sono aggiornati, successivamente installa e configura tutti i pacchetti necessari.

In questo menù chiede quali server DNS usare per completare le richieste legittime, io suggerisco di scendere fino a custom, impostare come primario l’ip interno del router ADSL, per permettere di risolvere i nomi dei dispositivi nella rete locale e secondario quello di Google.

Questo tornerà necessario più che altro se successivamente si utilizzerà Pi-hole come server DHCP al posto del router, cosa comunque opzionale.

Essendo un server DNS deve avere un ip fisso, quindi chiede che venga impostato insieme al relativo gateway, cioè il router ADSL.
Consiglio di usare un ip alto, magari uno che finisca con 222 o più, tanto per essere abbastanza sicuri da non andare in conflitto con altri apparecchi, ovviamente sta a voi scegliere quello idoneo alla vostra rete.

Una volta scelto se installare l’interfaccia web, verrà nel caso proposto il link per aprirla con relativa password.

Gestione Web:

Aprendo da un qualsiasi browser l’url dell’interfaccia web, si potranno bloccare o sbloccare i domini scelti, nelle sezioni whitelist e blacklist.
La pagina query log ci permette di controllare agilmente tutte le richieste fatte e se necessario bloccare o sbloccare determinati domini pubblicitari.
Il menù disable, permette, in caso di problemi, di disattivare i blocchi permanentemente o solo per pochi minuti.
La sezione tools è dedicata alla parte più tecnica del server, aggiornamenti liste, log e debug.
Il menù settings offre la possibilità di abilitarlo come server DHCP, attenzione che in una rete non possono coesistere più server DHCP attivi contemporaneamente.

Gestione da shell:

Il comando pihole eseguito come root, ha queste funzioni.
Utilizzo: pihole [opzione]
aggiungi -h dopo -w (whitelist), -b (blacklist), -c (chronometer), oppure -a (admin) per maggiori informazioni
opzione:
-w, whitelist Whitelist domini
-b, blacklist Blacklist domini (precisi)
-wild, wildcard Blacklist domini con wildcards
-d, debug Avvia il debug
in automatico con il flag ‘-a‘.
pihole -d -a
-f, flush Elimina il log ‘pihole.log’
-t, tail Scrive le ultime righe di ‘pihole.log’
-up, updatePihole Aggiorna i componenti di Pi-hole
-r, reconfigure Reconfigure or Repair Pi-hole
-g, updateGravity Aggiorna la lista dei server
-c, chronometer Mostra le statistiche in tempo reale
-h, help Mostra questo help dialog
-v, version Scrive la versione del software
-q, query Controlla le liste in cerca di un dominio preciso
pihole -q domain -exact‘ solo domini completi
-l, logging Abilita/disabilita i log con on e off
-a, admin Opzioni per l’interfaccia web

uninstall Rimuove Pi-hole
status Visualizza se il filtro è attivo o no
enable Abilita Pi-hole
disable Disabilita Pi-hole
restartdns Riavvia dnsmasq

Configurare il DHCP locale:

Il server DHCP è un servizio che assegna, alla connessione di un dispositivo i dati necessari per collegarsi in rete, la maggior parte delle volte è lo stesso router adsl.

Per utilizzare Pi-hole in modo pratico e semplice è necessario entrare nel menù di configurazione del router, o server DHCP locale ed aggiungere come server DNS l’ip di Pi-hole, in modo che ogni smartphone e pc connessi in rete lo usino in automatico.

Per farlo di norma il suo menù si trova sotto la voce DHCP >  DNS , per maggior aiuto vi rimando al post dedicato sul forum.


Posso dire che nelle ADSL domestiche italiane di solito l’ip del router è 192.168.1.1 con utente e password admin, in alternativa basta fare richiesta al vostro gestore adsl.

Test:

E’ giunto il momento di fare un po’ di test, apriamo la dashboard web o lanciamo il comando pihole -c, colleghiamo un pc o uno smartphone in rete (attenzione, prima scollegalo e ricollegalo alla rete cosi da prendere i nuovi dati), ora apri uno dei siti più impestati di pubblicità tipo libero.it e se le query bloccate aumentano, allora potrai goderti siti più veloci e senza pubblità alcuna.