Installare Pi Hole su Raspberry Pi


Pi Hole, o meglio Pi-Hole, è uno strumento che si pone come blocco delle pubblicità (ad blocker) in una rete.
Non è facile spiegare le funzionalità di questo strumento se non con un esempio.
Le televisioni collegate ad Internet trasmettono informazioni sull’utilizzo periodicamente al produttore, agli sviluppatori delle app installate e a terze parti. Oltre a queste informazioni talvolta mostrano anche delle pubblicità e dei sondaggi.
L’obiettivo di Pi Hole è quello di contrastare queste azioni perchè spesso il proprietario del TV o del dispositivo “intelligente” non vorrebbe essere monitorato e trova che le continue pubblicità siano fastidiose.

Scopriamo come installare Pi Hole su Raspberry Pi.
Il Raspberry Pi che andremmo ad utilizzare è un vecchio Raspberry Pi 1 B (con 512 MB di RAM), le esigue risorse di ram non permettono un uso in multitasking del vecchio Raspberry che verrà dedicato a Pi Hole.
Scarichiamo l’immagine di Raspberry Pi OS da https://www.raspberrypi.com/software/operating-systems/#raspberry-pi-os-32-bit, scegliamo l’immagine lite (senza desktop).
Se usiamo Windows possiamo usare un tool come Win32DiskImager per scrivere l’immagine su una scheda SD (da almeno 8 GB). Se invece usiamo Linux non è necessario un tool non integrato col nostro sistema, infatti si può usare un banalissimo:

xz --decompress 2022-09-22-raspios-bullseye-armhf-lite.img.xz | sudo dd of=/dev/sdb bs=4M status=progress conv=fsync

dove 2022-09-22-raspios-bullseye-armhf-lite.img.xz è il file scaricato di Raspberry Pi OS e /dev/sdb è il device associato alla vostra SD card.

Terminata la scrittura della SD card, scolleghiamola e inserimo la scheda nel Raspberry Pi e avviamo il sistema dandogli corrente.
Tipicamente Raspberry Pi acquisisce un indirizzo IP automaticamente se la vostra rete dispone di un server che distribuisce IP (un DHCP server), qualora non ci fosse è necessario collegare tastiera e monitor per configurare Raspberry Pi.
L’account da usare per collegarsi viene creato al primo avvio, potete scegliere un username che desiderate.

Se avete anche voi un Raspberry Pi vecchio è meglio abbassare la memoria assegnata alla scheda video da 64 MB a 16 MB in modo da avere più RAM per Pi-Hole. Questa cosa si può fare usando il comando “sudo raspi-config“.

E’ necessario assegnare un IP statico, ossia che non cambia, al vostro Raspberry Pi perchè tale IP va impostato come DNS server sui vostri dispositivi oppure potete impostare questo indirizzo nel vostro router cosicchè se il vostro router fa anche da DNS server, Pi Hole diventerà il DNS server del vostro router e non sarà necessario modificare il DNS su tutti i vostri dispositivi casalinghi a mano.

Per assegnare un IP statico è sufficiente modificare il file /etc/dhcpcd.conf insendo queste righe:
interface eth0
static ip_address=192.168.1.100/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1

dove 192.168.1.1 è l’indirizzo IP del vostro router (che agisce come gateway) e 192.168.1.100 è l’indirizzo statico che assegnerete a Pi-Hole.
Ora riavviate il Raspberry Pi perchè in seguito procederemo all’installazione di Pi Hole.

L’installazione di Pi Hole è assai banale, è sufficiente lanciare questo comando:

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

Nell’interfaccia di configurazione che apparirà vi verrà chiesto quali DNS usare per risolvere gli indirizzi. Scegliamo OpenDNS.
Al termine verrà mostrata la password per l’interfacia grafica di Pi Hole, mi raccomando annotiamocela.
Per accedere all’interfaccia grafica di Pi Hole è sufficiente usare questo indirizzo su un browser:
http://192.168.1.100/admin dove 192.168.1.100 è l’ip statico che abbiamo scelto per il Raspberry Pi.

Se l’interfaccia si apre correttamente, in generale l’installazione ha avuto buon fine. Ora possiamo impostare 192.168.1.100 (ossia l’ip del Raspberry Pi) come DNS del nostro router oppure dei nostri dispositivi casalighi come TV, prese intelligenti ed altro.

Come funziona Pi-Hole?

Pi Hole nei fatti agisce come un DNS server che consente di risolvere indirizzi Internet come cdn.samsungcloudsolution.com in 95.101.22.226. In questo modo quando il vostro TV vuole risolvere il nome cdn.samsungcloudsolution.com, Pi hole gli risponderà 95.101.22.226.
Supponiamo che alcuni network pubblicitari usino dei particolari indirizzi per veicolare la pubblicità. Per esempio ad.doubleclick.net (al momento 142.251.1.149) è usato per le pubblicità di Double Click, in questo caso Pi Hole invece che rispondere con l’ip 142.251.1.149 risponde con 0.0.0.0 nei fatti dicendo che ad.doubleclick.net non è risolvibile e quindi il banner pubblicitario non viene scaricato.

Pi Hole ha dei limiti proprio nella suo metodo di funzionamento. Non è propriamente un Ad blocker come si definisce per il semplice fatto che non tutti i siti porpalano le pubblicità su uno specifico indirizzo Internet diverso da quello dove veicolano i contenuti: il caso più significativo è Youtube. Infatti se intendete usare Pi Hole per bloccare le pubblicità di Youtube farete un buco nell’acqua. In questo caso è più efficiente un tool come uBlock Origin, Adblock Plus ma che difficilmente si può installare su televisori.

Allora perchè è utile Pi Hole?

Usate Netflix sul vostro TV? Io mai, eppure l’app di Netflix frequentemente raccoglie dati ma non è l’unica in quanto Mediaset e altre come Amazon, Google sono lì a raccogliere informazioni sul mio televisore e tutti gli apparecchi come smartphone, prese intelligenti…

Monitoriamo la qualità dell’aria con Raspberry Pi!

La lotta al riscaldamento globale e al cambiamento climatico passa anche per l’informatica, la sensoristica e la robotica!
Grazie al Raspberry Pi Zero Wireless, la sensor board Enviro Plus (Pimoroni Enviro+) e il rilevatore di particelle PMS5003 è possibile costruire la propria stazione di raccolta di dati sull’inquinamento ambientale.

Questo articolo si rifà ai tutorial di Pimoroni:

L’ideale è quello di riutilizzare un Raspberry Pi che abbiamo a disposizione purchè si scelga un modello versione 2 in su, perchè bisogna sfruttare la GPIO da 40 pin e non quella 26 pin, presente su Raspberry Pi 1.
Se non possedete nessun Raspberry Pi compatibile, potete acquistare la versione Raspberry Pi Zero Wireless con i pin saldati in modo da dover soltanto innestare il modulo sensore Enviro Plus.
La sensor board Enviro Plus, prodotta e commercializzata dalla britannica Pimoroni, mette a disposizione diversi sensori per la raccolta dei dati tra cui temperatura, pressione, umidità, luce, prossimità, rumore, riduzione del monosido di carbonio, ossidazione del diossido di azoto, ammoniaca, idrogeno, etanolo e idrocarburi.
Aggiungendo al Pimoroni Enviro+, il rilevatore di particolato PMS5003 è possibile rilevate anche le famose PM 10 e altre microparticelle.

Procuriamoci una scheda microSD da 16 GB, anche 8GB sono sufficienti, e carichiamo il software Raspbian. E’ sufficiente prelevare la versione Raspbian Buster Lite che non mette a disposizione un desktop ed è più compatta.
L’immagine può essere scritta sulla microSD utilizzando un software come balena Etcher. Se non disponete di un adattatore miniHDMI per collegare un monitor al vostro Raspberry Pi Zero Wireless, potete seguire la procedura di questo video.

Una volta che il Raspberry Pi è raggiungibile via rete (wireless o LAN) è necessario installare alcuni software e componenti nonchè installare gli ultimi aggiornamenti del sistema operativo.

sudo apt update
sudo apt upgrade

sudo apt install git spidev

sudo pip install requests

A questo punto si può clonare, ossia copiare, da Internet la cartella degli script già pronti sul proprio Raspberry Pi.

git clone https://github.com/pimoroni/enviroplus-python
cd enviroplus-python
sudo ./install.sh

Al termine dell’installazione è necessario riavviare il Raspberry Pi.

sudo reboot

Una volta riavviato il Raspberry Pi si possono lanciare gli script in Python già predisposti che si trovano nella propria home:

cd enviroplus-python/examples
ls

Per ulteriori informazioni, rimando al tutorial:
https://learn.pimoroni.com/tutorial/sandyj/getting-started-with-enviro-plus

Se vogliamo contribuire al database di raccolta dati sulla qualità dell’aria Luftdaten, possiamo registrarci seguendo le note dell’articolo https://learn.pimoroni.com/tutorial/sandyj/enviro-plus-and-luftdaten-air-quality-station

Se ci sono dubbi, fatemi sapere!

Condividere una share sul RaspBerry Pi


In questa guida potrete trovare come attivare la condivisione di una cartella del RaspBerry Pi con un computer Windows. In questo modo è possibile caricare o scaricare file sul RaspBerry Pi ad una velocità molto sostenuta.

Poiché agli utenti non verrà richiesto un utente e la password, questo tutorial è pensato per implementato in una rete LAN in cui tutti gli host devono essere attendibili.

Continua a leggere

Installare MLDonkey su Raspberry Pi


MLDonkey è un’applicazione di filesharing che concedono l’accesso alla vasta Emule p2p network. Emule è una grande rete p2p . MLDonkey è nato come clone di eDonkey2000 ed è stato scritto per Linux. A differenza di eMule o aMule, MLDonkey utilizza pochissime risorse ed è adatto ad essere utilizzato su Raspberry Pi. Per installare MLDonkey su Raspberry Pi, basta seguire queste istruzioni.

Continua a leggere

Configurare un IP fisso per il Raspberry Pi

Il Raspberry Pi è un computer di dimensioni carta di credito che si collega al televisore e una tastiera. Si tratta di un piccolo computer che può essere utilizzato in modi molto differenti. C’è chi lo usa come centro multimediale per guardare film o ascoltare musica, chi lo adopera per imparare a programmare o ad utilizzare Linux.

Raspbian è un sistema operativo (OS) libero basato su Debian ottimizzato per l’hardware Raspberry Pi. Raspbian fornisce più di un semplice OS: viene distribuito con oltre 35.000 pacchetti software pre-compilati in un bel formato per una facile installazione sul Raspberry Pi.

L’impostazione iniziale prevede che Raspberry Pi prenda un indirizzo di rete automatico tramite DHCP. Tuttavia questa soluzione potrebbe non essere la migliore per un uso intensivo del dispositivo.

Continua a leggere