giovedì 22 novembre 2018

Usare OpenVPN dal terminale

Il file in formato .ovpn e’ di solito generato dal fornitore del VPN.
Contiene le informazioni su quale nodo geografico (remote vpn server) connettersi, sul protocollo (proto) da usare e su quale porta, i modi di cifrature (cipher) oltre alle chiavi di cifratura per la connessione.

A volte il fornitore del servizio puo’separare le chiavi dal file, come in : crl.rsa.2048.pem e ca.rsa.2048.crt

 



Nota anche i due diversi protocolli usati per comunicare,
 "proto tcp" su porta 443, e
 "proto udp" su porta 1198

Nel nostro esempio abbiamo un unico file myVPN.ovpn, un username e una password

>sudo apt-get install openvpn   #in caso non e’ istallato

#download (e unzip/tar?) il file in .ovpn, spostalo in /etc/openvpn
>sudo mv myVPN.ovpn  /etc/openvpn/myVPN.ovpn

#Per connettersi:
>sudo openvpn --config /etc/openvpn/myVPN.ovpn
ed entrare Nome e password…

..
..
… gia’ finito?

 se si volesse usare un modo più; flessibile e non dovere entrare nome e password ogni volta, basta creare un file con due righe per nome e passwd, e aggiungerlo al file .ovpn nella sezione "auth-user-pass"

#crea un file vuoto (.txt non serve, e’ solo per chiarezza)
>touch /etc/openvpn/pass.txt 

# aggiungi il tuo nome e passwd in 2 linee al file pass.txt:

>sudo printf '%s\n' 'username' 'password' > /etc/openvpn/pass.txt 

#oppure

>sudo nano /etc/openvpn/pass.txt
il_mio_nome
La_mia_password
    Ctrl-x  y

#Nel file .ovpn, cambia:

>sudo nano myVPN.ovpn
auth-user-pass      con    auth-user-pass /etc/openvpn/pass.txt
     Ctrl-x  y

#O usa il comando per cerca e sostituisci:
>sudo sed -i 's/auth-user-pass/auth-user-pass\/etc\/openvpn\/pass.txt/g' /etc/openvpn/myVPN.ovpn  

#Per connettersi:
>openvpn --config /etc/openvpn/myVPN.ovpn

#O comincia la connessione, ma non chiuderla anche se chiudi il terminale:

>nohup openvpn --config /etc/openvpn/myVPN.ovpn &
    >sudo killall openvpn #per chiuderla