Premessa
Installare e configurare OpenVPN con Pi-hole su Raspberry Pi è davvero molto semplice, ma cos’è esattamente una VPN?
OpenVPN è un protocollo VPN (Virtual Private Network) che consente di connettersi alla tua rete di casa o dell’ufficio in maniera totalmente sicura visto che utilizza dei tunnel cifrati e riservati.
In questo modo è come se tu navigassi all’interno della tua rete e potrai raggiungere ad esempio stampanti, server, nas o altri dispositivi che sono collegati in quel momento.
Per installare questa versione di OpenVPN, devi prima aver installato Pi-hole sul tuo Raspberry Pi/Debian/Ubuntu.
Se non l’hai fatto vai alla guida dedicata per Installare e configurare Pi-hole su Raspberry Pi/Debian/Ubuntu
Lista della spesa
• Raspberry PI > https://amzn.to/2UG5B4V
• Un servizio DNS dinamico che ti permetta di collegarti alla tua rete se il tuo fornitore telefonico non ti fornisce un IP pubblico statico.
Se non l’hai c’è una guida apposta che ti spiega passo passo come fare per Installare e configurare DDclient per avere un DNS dinamico con FreeDNS
Installazione OpenVPN
Sei arrivato al punto focale della guida, installare e configurare OpenVPN con Pi-hole su Raspberry Pi/Debian/Ubuntu.
Accedi in ssh nella macchina dove hai installato Pi-hole.
Se stai lavorando su una disto Debian devi prima loggarti come “root” ed eliminare “sudo” da tutti i prossimi comandi
Scarica il file di installazione di OpenVPN
wget https://git.io/vpn -O openvpn-install.sh
ora cambia i permessi al file per renderlo avviabile da shell
sudo chmod u+x <meta charset="utf-8">openvpn-install.sh
e avvia l’installazione
sudo ./<meta charset="utf-8">openvpn-install.sh
Inserisci il dominio che hai creato precedentemente su FreeDNS con la guida Installare e configurare DDclient per avere un DNS dinamico con FreeDNS, nel mio caso “batmanhost.mooo.com” e premi Invio.
Se invece hai un IP fisso pubblico lasciare invariata questa opzione o ricopialo semplicemente
lascia invariata questa opzione, batti Invio
lascia invariata questa opzione, batti Invio
lascia invariata questa opzione, vengono presi i server DNS che hai selezionato quando hai installato Pi-hole, batti Invio
qui devi specificare il nome da dare al primo certificato OpenVPN che verrà generato
I certificati vengono generati per dispositivi, infatti non è possibile accedere contemporaneamente con lo stesso certificato da 2 dispositivi diversi. Io qui ho creato ad esempio “iPhonePippo”
ora batti Invio per far terminare il processo di installazione di OpenVPN
Finito!
L’installazione è completata e come vedi OpenVPN ha creato il file “.ovpn” che puoi trovare nel percorso che ti indica (Es. “/root/iPhonePippo.ovpn”).
Non ti resta che recuperarlo, trasferirlo nel tuo computer, tablet o telefono.
Prima di connetterti devi fare però un altro paio di operazioni, ora hai solo installato, devi configurare ad hoc OpenVPN.
Configurazione Pi-hole per OpenVPN
Per poterti connettere al server OpenVPN anche dall’interno della tua rete è necessario aggiungere il tuo dominio del dns dinamico ai record host di PI-hole, in questi due modi
Collegati al pannello di controllo di Pi-hole e dal menu di sinistra vai su Local DNS > DNS Records e inserisci:
Domain: il dominio che hai creato du FreeDNS (o il tuo IP pubblico)
IP Address: l’IP del tuo Pi-hole
Connessione VPN e navigazione LAN
Se, oltre a connetterti in VPN alla tua rete di casa/ufficio, vuoi riuscire anche a navigare tra i dispositivi che sono connessi in modo da raggiungerli anche quando sei fuori (server, altri computer, ecc…), c’è da fare una piccola modifica al file di configurazione di OpenVPN.
Per prima cosa devi impostare Pi-hole in grado di accettare tutte le interfacce che si connettono alla tua rete, anche quelle connesse in VPN e lo puoi fare direttamente da terminale digitando:
sudo pihole -a -i all
ora dobbiamo modificare un file, aprilo sul terminale con
sudo nano /etc/openvpn/server/server.conf
cerca la stringa “push “dhcp-option DNS iltuoip”“
e sostituiscila con
push "route 10.0.0.0 255.255.255.0"<br>push "dhcp-option DNS 10.0.0.4"
sostituendo i valori secondo questa logica
- il primo ip (10.0.0.0) deve corrispondere alla tua rete, quindi se ad esempio hai come rete 10.0.0.1, come nel mio caso, dovrai inserire 10.0.0.0, mentre se hai 192.168.0.1, dovrai inserire 192.168.0.0, ecc…
- il secondo ip (192.168.1.2) corrisponderà all’ip del tuo raspberry dov’è installato Pi-hole + OpenVPN
Salva il tutto premendo sulla tastiera “CTRL + O” > “Invio” e poi “CTRL + X“.
Sei a posto! Ora, quando ti connetterai alla tua VPN, sarai in grado anche di raggiungere tutti i dispositivi connessi in quel momento (server, altri computer, ecc…)
Gestione OpenVPN
Se vuoi aggiungere/rimuovere certificati o disinstallare OpenVPN, non devi fare altro che digitare
sudo ./openvpn-install.sh
ricordandoti di dare il comando nello stesso percorso dove hai scaricato il pacchetto inizialmente (ricordi il comando wget…?), in questo modo ti appariranno le quattro opzioni
- Add a new client: aggiungere nuovi certificati
- Remove an existing client: rimuovere un certificato esistente
- Remove OpenVPN: disinstallare OpenVPN
- Exit: annullare