domenica 27 novembre 2016

Installare client VPN su distribuzione debian Lite per Raspberry Pi

L'avventura di oggi e' stata quella di installare il Client VPN su una distribuzione fresca fresca di Debian-Lite appena scaricata dal sito originale .
L'operazione è molto semplice, ma come sempre, c'è sempre qualcosa da sapere per portarla a termine con esito positivo.
La distribuzione Lite distribuita dal sito originale infatti non contiene tutti i pacchetti necessari perchè tutto funzioni subito, ma per ottenere il risultato dobbiamo installare alcuni pacchetti indispensabili.
Dopo i classici:
    1  sudo apt-get update
    2  sudo apt-get upgrade
Installiamo il programma principale OpenVpn che sarà quello che gestisce l'operazione:
    3  sudo apt-get install openvpn

Nella distribuzione completa già questa operazione e' sufficiente per far partire tutto, ma nella Lite, manca un componente essenziale, il Driver per Tun/Tap.
Per andare verso il buon fine il comando precedente deve essere sostituito da questo più completo che installa tutto il necessario ed anche qualcosa di più che ci servirà in seguito per proseguire nel progetto (git e zip)

    4  sudo apt-get install openvpn openssl module-init-tools zip dos2unix git
Poi con facciamo partire il driver necessario
    5  command modprobe tun
 
A questo punto un bel reboot che non guasta!

    6  sudo reboot
Poi ci spostiamo nella cartella che contiene le chiavi per la registrazione corretta in rete. (queste chiavi devono essere state preventivamente fornite dal server VPN, si tratta di 4 file che contengono le chiavi crittografate ed il file di configurazione di OpenVpn in questo caso le mie sono contenute in una cartella dal nome "client15"
    7  cd client15/

Con il comando successivo facciamo partire il programma OpenVpn in modo che vada a leggere il file di configurazione e con quello assuma le chiavi necessarie, con l'aggiunta del comando "&" , mandiamo l'operazione in back ground, in maniera da non occupare la finestra di terminale ed essere costretti ad aprirne un'altra.
    8  sudo openvpn --config client.ovpn &
A questo punto, se le chiavi sono state riconosciute dal sistema e tutto è  andato nel verso giusto, siamo entrati nella VPN di cui avevamo le chiavi.
Conoscendo alcuni indirizzi interniu della rete sara' facile vedere se tutto e' OK, anche soltanto pingando il server, per esempio
    9  ping 10.8.0.1

Con ifconfig  possiamo vedere tutte le caratteristiche della nostra configurzione di rete
   10 ifconfig


Questo è quello che mi risponde il comando sulla mia Raspberry Pi che sto utilizzando per gli esperimenti:
pi@EasyMeteo01:~ $ ifconfig
eth0      Link encap:Ethernet  HWaddr XXXXXXXXXXXXX
          inet addr:192.168.22.160  Bcast:192.168.22.255  Mask:255.255.255.0
          inet6 addr: fe80::cf20:4124:4cb8:cb7f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:25261 errors:0 dropped:8 overruns:0 frame:0
          TX packets:11598 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:20997554 (20.0 MiB)  TX bytes:1178247 (1.1 MiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.0.58  P-t-P:10.8.0.57  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:1000 errors:0 dropped:0 overruns:0 frame:0
          TX packets:813 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:68543 (66.9 KiB)  TX bytes:110167 (107.5 KiB)

pi@EasyMeteo01:~ $

In grassetto ho evidenziato la nuova configurazione che ho creato con l'operazione descritta sopra, il server mi ha assegnato l'IP  inet addr:10.8.0.58 

Per far partire la connessione alla accenzione del pc, possiamo aggiungere il comando sopra nel file rc.local che viene letto ad ogni boot del sistema
Quindi editiamo il file con :
   11  sudo vi /etc/rc.local

Ed aggiungiamo in fondo prima del comando  exit 0 , i comandi necessari, nel mio caso (che ho chiamato la cartella client15):

#dati per impostazione VPN
cd /home/pi/client15
sudo openvpn --config client.ovpn &

In questo modo alla prossima accensione del sistema la Raspberry Pi sarà connessa ad internet nella rete locale ed anche loggata nella rete VPN privata in automatico.

Nessun commento: