giovedì 22 gennaio 2009

Tunnel OpenVPN

Probabilmente questo non c'entra molto con l'installazione di un sistema linux in un pc Apple, però dovevo configurare una vpn sulla mia macchina ed allora scrivo qui un bell'howto su come fare.
All'inizio pensavo ci fosse un modo molto più comodo per usare un client vpn, come ad esempio una gui, oppure una configurazione guidata. Alché navigando un pò qua e un pò la ho trovato diversi siti che ti dicevano di scaricare delle applet del tipo "network-manager-pptp" oppure "network-manager-openvpn" oppure un altro che era "pptp-linux" a cui si riferiva un pptpconfig da scaricare che aveva bisogno di repository dedicate le quali avevano bisogno di pacchetti per soddisfare dipendenze i quali non stavano per essere installati e bla bla bla.
Il tutto cominciava a diventare molto noioso ed alquanto irritante.
Finalmente, ed ancora una volta, gli help della community di ubuntu sono riusciti a salvarmi di nuovo la vita, con un bell'howto che vi vado subito a proporre:
https://help.ubuntu.com/community/OpenVPN
In questo howto, però, c'è scritto anche come creare, configurare ed impostare il certificato e le chiavi. Io non ne ho avuto bisogno per le mie esigenze. Ho cominciato con le applet di gnome ma non hanno portato a niente. Allora ho provato con il client openvpn da riga di comando ma non riusciva a trovare l'interfaccia di rete per il tunnel, ed allora è bastato scaricare un pacchetto per le interfacce bridged ethernet:

sudo apt-get install bridge-utils

fatto ciò ho editato il file /etc/network/interfaces aggiungendo queste righe oltre a quelle che già c'erano:

## This is the network bridge declaration
auto br0 ## start on boot

iface br0 inet static ##use a static IP because this server is also the DHCP server.

pre-up openvpn --mktun --dev tap0
address 192.168.23.1
netmask 255.255.255.0
bridge_ports eth1 tap0
bridge_fd 9 ## from the libvirt docs (forward delay time)
bridge_hello 2 ## from the libvirt docs (hello time)
bridge_maxage 12 ## from the libvirt docs (maximum message age)
bridge_stp off ## from the libvirt docs (spanning tree protocol)

dopodiché ho riavviato i servizi di rete con il comando:

sudo /etc/init.d/networking restart

Finito. Ora per finire ho creato una cartella nella mia home chiamandola openvpn/ al cui interno c'ho messo il file .conf con la configurazione della vpn, il certificato ca.cert ed a questo punto per finire il tutto ho lanciato da riga di comando il client openvpn in questo modo:

openvpn openvpn.conf

e la connessione è stata stabilita con successo. Finito. L'unica cosa che non ho ancora capito è come mai una volta aperta la connessione vpn non navigo in tutti i siti e bene come prima, ma questo lo sistemerò in seguito. Per ora mi basta che vada. Evviva linux, evviva Apple. Insomma...Evviva Macboontu!!! :D :D

ciao