Come configurare Pi-hole con OpenVPN

Se sullo stesso server (o Raspberry Pi, in questo caso) state utilizzando sia OpenVPN (nel caso qui la guida) che Pi-hole (anche qui l’altra guida) e state riscontrando delle problematiche per quanto riguarda il DNS, beh, la soluzione è molto semplice.

Modificate questo file:

sudo nano /etc/dnsmasq.conf

E modificate questa riga con anche l’IP che vi ha assegnato il vostro router:

listen-address=127.0.0.1, 192.168.1.2, 10.8.0.1

Altrimenti, provate con solo questo:

listen-address=127.0.0.1

Ora potete riavviare i servizi o banalmente riavviare direttamente il vostro Raspberry Pi con un sudo reboot now e ora anche tutto il traffico proveniente dai client in VPN passeranno sotto Pi-hole!

Photo by Viktor Talashuk on Unsplash

Lo so che sono molto invitanti questi raspberry qua sopra, ma non sono neanche paragonabili a quelli con 8GB di RAM!
Nel caso non sapeste dove acquistarlo, beh, ho una guida anche per quello.

Come installare OpenVPN su Raspberry Pi

Ho già più volte parlato di VPN qua sul sito, un esempio è questo articolo, sopratutto incentrato su Raspberry Pi.

La soluzione che mi sento di suggerirvi di applicare sul vostro Raspberry Pi nuovo è PIVPN!

Aprite il terminale ed eseguite:

curl -L https://install.pivpn.io | bash

Seguite i passaggi e durante la procedura, quando vi verrà chiesto se utilizzare OpenVPN o WireGuard, scegliete appunto OpenVPN.

Una volta installato, per aggiungere un client, eseguite:

pivpn -a

Come disabilitare la compressione in OpenVPN

Molto semplicemente modificate il file:

sudo nano /etc/openvpn/server.conf

Commentando la riga dove c’è lo voce compression con un # davanti.

Ovviamente ho omesso di dire che c’è una falla nel sistema che comprime i pacchetti, come dimostrato da Ahamed Nafeez (https://community.openvpn.net/openvpn/wiki/VORACLE) che se volete approfondire potete leggere tutta la discussione sul forum di OpenVPN.

Nota: nelle ultime versioni di OpenVPN per iOS se avete la compressione abilitata non riuscirete ad utilizzarla. Quindi la soluzione è disattivarla dal server e rigenerare o modificare il certificato.

Come cambiare porta a OpenVPN

Se avete appena installato la vostra VPN personale (qui la guida per crearne una con un Raspberry Pi) e volete cambiare la porta di default (la 1194) ecco a voi come fare!

Per modificare la porta all’esterno della vostra rete locale nel caso usiate un indirizzo IP statico o un dominio dinamico (in modo che il certificato vi venga generato con la porta esterna corretta):

sudo nano /etc/openvpn/easy-rsa/pki/Default.txt

Per modificare invece la porta interna, quindi quella che ascolterà in locale:

sudo nano /etc/openvpn/server.conf

Riavviate poi il servizio con:

sudo service openvpn restart

Nel caso abbiate già dei certificati installati, dovrete cambiarle manualmente nel certificato (potete modificarlo essendo un file testuale) oppure rigenerarlo.

Come configurare OpenVPN su Mac

Presupponendo che abbiate creato la vostra VPN privata utilizzando questa guida (spero di avervi convinto con questo articolo), andiamo velocemente a configurare il certificato che vi ha creato su macOS.

Scaricate Tunnelblick da questo sito https://tunnelblick.net/downloads.html e installatelo. Una volta aperto, trascinate nel menù a sinistra il vostro certificato.
Cliccate per connettervi e inserite la password.

Voilà. Ora tutto il vostro traffico TCP/UDP passerà tramite la vostra VPN criptata. Semplice no?

Come e perché avere la propria VPN

Ci sono oramai migliaia di servizi di VPN, vi basta una semplice ricerca su Google per capire che il mercato è saturo e sopratutto spesso non ci si può neanche fidare, perché magari spiano quello che fate o rivendono le vostre ricerche online.

Quindi, visto che siamo nel 2018 e avere una VPN personale non è più una cosa complicata, perché no?

Ovviamente dovrete far attenzione a quello che fate, essendo voi padroni della vostra macchina, dovete controllare che non abbia accessi non consentiti, tenere un log di cosa succede, evitare che vi mandino migliaia di richieste o che vi arrivino dei tentativi o saturazioni nella porta che avete scelto, ma tolto queste normali problematiche, avrete solo da guadagnarci.

Quando vi connettete a dei Wi-Fi pubblici, non è rischioso che chi vi offre l’hotspot internet, legga tutto quello che fate? Certo oggi con https hanno più difficoltà, ma posso garantirvi che è davvero semplice capire cosa state facendo (ehmmm, vi ricordo che il dns non è criptato e ne autenticato).

Quindi che aspettate a farvi la vostra VPN personale con un Raspberry Pi?

Come creare una VPN con Raspberry Pi

Oramai creare una VPN personale (cos’è una VPN?) è diventato un gioco da ragazzi, quello che vi servirà è un semplice Raspberry Pi e una connessione a internet (cosa che spero abbiate).

Prima di tutto collegatevi in SSH al vostro piccolo Pi, fate gli aggiornamenti ed eseguite:

curl -L https://install.pivpn.io | bash

Seguite i passaggi (lasciate tutto come vi suggerisce lo script), idem lasciate la porta 1194 e andate nel vostro router a fare il redirect al vostro Pi.

Comandi utili per l’uso di PiVPN

Ora create un nuovo device facendo:

pivpn -a

Dategli il nome e andate nel percorso in cui vi ha salvato il certificato. Recuperatelo e mandatelo al dispositivo con il quale volete connettervi, quindi se è il vostro smartphone, mandatevelo in qualche modo sicuro (e non pubblicatelo da nessuna parte) e apritelo con l’app OpenVPN. Connettetevi e via!

Ecco a voi un tunnel dal vostro smartphone al vostro Raspberry Pi! Ora ovunque sarete, il vostro Pi farà le richieste e vi manderà le risposte in modo criptato. Semplicissimo no?!

Cos’è una VPN

Non sto a spiegarvi nel dettaglio come funziona una VPN o cos’è un protocollo, non è l’argomento di questo articolo, bensì voglio spiegarvi semplicemente cos’è una VPN e a cosa può servirvi.

Una VPN (al femminile perché l’acronimo sarebbe rete privata virtuale) è una macchina (computer, visto che siamo nell’ambito dell’informatica) che fa tutte le richieste web per voi e vi restituisce i risultati.

Immaginatevi di voler visitare Google, con una VPN lei fa la richiesta a Google e voi ricevete la pagina attraverso un tunnel che solo voi due conoscete. Google pensa d’aver risposto alla VPN e non saprà mai che siete stati voi fargliela.

Idem il vostro ISP, penserà che tutto il tempo, parliate solamente con la VPN, quindi non saprà che voi avete richiesto il sito di Google, vedrà solamente del traffico criptato tra voi e la VPN.

Può essere molto utile in caso non vogliate far sapere al sito che visitate la vostra identità, oppure nascondere al vostro ISP il vostro traffico web, piuttosto che ovviare a censure web come quelle in Cina o in Corea del Nord.
Oppure anche solo nel caso di contenuti che sono nascosti nella vostra nazione, tipo articoli o video con traffico ristretto ai residenti di una certa nazione, con una VPN potete ovviare a questo problema fingendo d’avere un IP dall’altra parte del mondo.

TunnelBear è una VPN semplice e veloce