In questo articolo vedremo come configurare un server VPN per una connessione alla nostra LAN privata grazie ad un Raspberry Pi  ]

Come per tutto ciò che riguarda RPi, il primo passo è assicurarsi che il tuo dispositivo sia aggiornato quindi per prima cosa digitiamo

sudo apt update

sudo apt upgrade

Se il tuo dispositivo ha già un accesso ad internet mediante una connessione Ethernet cablata o Wi-Fi allora potrai configurare attraverso la medesima interfaccia di rete una connessione VPN, colleghiamoci al nostro Raspberry  ] tramite SSH o apriamo il terminale se siamo direttamente sul RPi ed iniziamo installando PiVPN , digitando il comndo

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

 

 

Attendiamo il download

premiamo su ok

ed ancora ok, il programma ci mostrerà la configurazione corrente del nostro raspberry e se non vogliamo cambiare interfaccia puntando all'altro indirizzo selezioniamo yes

 

 

ci verra chiesto ora di accettare e scegliere l'utente locale con il quale si potranno configurare gli accessi e gli utenti VPN

nel mio caso scelgo l'utente pi, per selezionare un utente diverso possiamo spostarci con le frecce selezionare con la barra spaziatrice e poi il tasto tab per spostarci sull'ok

una volta selezionato ci verra chiesto se attivare o meno gli aggiornamenti automatici, su questo punto vi lascio decidere in autonomia, io sono abbastanza restio agli aggiornamenti in automatico perché preferisco prendermi il tempo di valutare i vantaggi e gli svantaggio di ogni singolo aggiornamento, ma se non seguite in modo assiduo le news per valutare con una certa solerzia vi consiglio di attivarlo. In fine non ci resta che riavviare il sistema

selezioniamo ora il protocollo UDP

 

la porta che intendiamo utilizzare per la connessione VPN, che dovrà poi essere la porta che apriremo sul router e nattata verso l'ip del nostro Rpi in questo caso 192.168.10.2

 confermiamo

se non abbiamo già client che utilizzano VPN di versioni precedenti selezioniamo yes sulla domanda successiva, 

e lasciamo i parametri consigliato di default

 

per la richiesta successiva è necessario valutare se utilizzare un servizio di DDNS o utilizzare il proprio indirizzo ip pubblico...

e bisogna scegliere a quale DNS appoggiarsi, io preferisco openDNS voi potete scegliere tranquillamente quello che più vi è "simpatico"

selezionate no per la ricerca nel vostro dominio, in alternativa potreste indicare il dominio della vostra rete lan per consentire di risolvere più rapidamente i nomi interni alla LAN

ed in fine riavviamo ip nostro RPi

Creiamo il nostro file di configurazione per i client OpenVPN

Dopo aver riavviato nuovamente Raspberry Pi  ], eseguiamo il comando

pivpn add

per creare un file .ovpn che dovrà essere trasferirto sui nostri nostri clienti. Questo file contiene una chiave generata che viene utilizzata per accedere al nostro server VPN, può essere utilizzato il medesimo file per ogni dispositivo oppure puoi generarne diversi uno per ogni client con il comando 'pivpn add'.

una volta lanciato il comando ci verrà richiesto di inserire 

  • il nome del client per il quale stiamo generando il file, questo nome come abbiamo detto non influenza l'utilizzo del file su client diversi da quello per il quale lo abbiamo generato ma se utiliziamo file diversi per diversi client avremo la possibilità di individuare la chiave da eliminare per negare l'accesso al client che intendiamo escludere dalla VPN

a questo punto nella cartella ovpns che è stata creata nella home dell'utente pi troveremo il file contenente le importazioni e le chiavi per la connessione al nostro server VPN, questo file dovremo copiarlo con FileZilla  o tramite il comando scp link esterno se avete un Mac o se avete un sistema Microsoft anche WinSCP , allo stesso modo se intendiamo revocare un certificato possiamo digitare

pivpn revoke

Questo comando ci mostrerà l'elenco dei certificati autorizzati e ci verra richiesto il nome di quello da revocare.

Poterci connettere alla nostra VPN abbiamo bisogno di un tool client, utilizzando un mac io ho scelto tunnelblick , una volta scaricato basterà un doppio click sul file .ovpns per configurare il client e successivamente potrete lanciare il programma e cliccare su connetti

A questo punto dal server in qualsiasi momento potremo controllare i client connessi tramite il comando 

pivpn -c

che ci mostrerà l'elenco dei client connessi.