OpenVPN server su Raspberry Pi: come configurarlo

Come configurare un server OpenVPN sulla scheda Raspberry Pi. Utile per effettuare connessioni sicure alla rete locale in modalità remota.

Un dispositivo come il single-board computer Raspberry Pi, delle dimensioni di una carta di credito, può essere sfruttato per gli utilizzi più disparati. Il fatto di essere una scheda silenziosa perché sprovvista di componenti attivi per la dissipazione del calore e la particolarità di poter essere usata anche senza tastiera e mouse (controllandola ad esempio via SSH), rende Raspberry Pi uno strumento eccellente per configurare un server OpenVPN sicuro in pochi minuti.

Anche se il router non disponesse delle funzionalità di server VPN (OpenVPN), grazie alla Raspberry Pi sarà possibile accedere alla rete locale, alle cartelle condivise e navigare con l’IP di casa o dell’ufficio così come se si fosse fisicamente presenti.

Nell’articolo Raspberry Pi 4: come usarla senza monitor e tastiera abbiamo visto come gestire la scheda collegandosi via SSH da un normale PC Windows. Una volta effettuata la connessione, si possono seguire alcuni passaggi per impostare il server OpenVPN.

Installare OpenVPN su Raspberry Pi: come fare

1) Digitare sudo apt update e sudo apt full-upgrade per aggiornare il sistema operativo e i pacchetti installati.

2) Avviare la procedura guidata per l’installazione dell’ultima versione di PiVPN, un’eccellente soluzione per configurare un server VPN (anche OpenVPN) sulla Raspberry Pi:

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

3) Dopo aver confermato con la pressione di OK, PiVPN consiglierà caldamente l’assegnazione di un indirizzo IP statico alla Raspberry Pi. Seguendo la guida Raspberry Pi 4: come usarla senza monitor e tastiera si assegnerà anche un IP statico alla scheda.

La procedura di configurazione di PiVPN indicherà l’indirizzo IP correntemente associato alla scheda. Se si fosse certi di averlo impostato in precedenza come IP statico basterà scegliere No per proseguire quindi Yes alla comparsa del messaggio “Do you want to use your current network settings as a static address?”.

4) Come utente all’interno del quale saranno conservate le impostazioni del server OpenVPN si può lasciare selezionato pi e proseguire premendo OK.

5) Alla comparsa della schermata di scelta riprodotta in figura, spostarsi con il tasto freccia giù quindi premere la barra spaziatrice per selezionare OpenVPN.

6) Nella schermata successiva selezionare No per utilizzare le impostazioni predefinite e continuare premendo Invio.

7) Dopo l’installazione dei pacchetti necessari per il funzionamento del server OpenVPN, PiVPN chiederà di specificare la porta da usare per la connessione (di default la porta proposta è la 1194 assegnata ufficialmente dallo IANA al servizio OpenVPN).

In alcuni casi potrebbe essere utile cambiare la porta di comunicazione utilizzata, specie se il provider ne bloccasse l’utilizzo.

8) Nella schermata seguente si può impostare il server DNS da utilizzare scegliendo tra quelli proposti o impostandone uno in proprio (Custom).

9) Il passaggio successivo consente di indicare se i client si collegheranno al server OpenVPN installato e configurato sulla Raspberry Pi usando l’IP pubblico statico assegnato al router oppure se useranno un indirizzo mnemonico (utile ad esempio nel caso in cui si facesse uso del servizio DDNS).

10) Dopo la generazione dei certificati crittografici, abilitare gli unattended upgrades premendo Yes in maniera tale che PiVPN e gli altri componenti vengano mantenuti sempre aggiornati ma che l’installazione delle patch avvenga previo riavvio della Raspberry Pi.

11) Premere Yes per riavviare la Raspberry Pi.

12) A questo punto si potrà creare il primo profilo per l’utente che dovrà collegarsi da remoto al server OpenVPN. Per procedere in tal senso basta digitare quanto segue:

sudo pivpn add

La procedura prevede di specificare un nome utente e una password (da ripetere per sicurezza due volte).
Il file .ovpn per la configurazione dei client con le credenziali indicate sarà memorizzato nella cartella /home/pi/ovpns.

13) Installare un client FTP come FileZilla quindi accedere all’indirizzo IP statico della Raspberry Pi sulla porta 22 (selezionare SFTP come protocollo). Come tipo di accesso indicare Normale quindi specificare nome utente e password (di default sono rispettivamente pi e raspberry).

14) Dalla cartella \ovpns copiare il profilo utente OpenVPN per configurare il client e scaricarlo.

15) A questo punto basterà installare il client OpenVPN su qualunque dispositivo (vedere qui per Windows e Linux, qui per Android) e copiare il file .ovpn nella sua cartella.
In alternativa si può usare la scheda File sul client OpenVPN quindi trascinarvi il file .ovpn.

Come ultimo passo si potrà provare a stabilire la connessione remota (e sicura) al server OpenVPN configurato sulla Raspberry Pi.

Per aprire alle connessioni dall’esterno, bisognerà attivare il port forwarding (Port forwarding, cos’è e qual è la differenza con il port triggering) dalla porta 1194 in ingresso sul router alla stessa porta sulla Raspberry Pi.

Ti consigliamo anche

Link copiato negli appunti