L'OpenVPN és segurament la manera més senzilla que he trobat per a fer túnels entre dues màquines. És una implementació opensource basada en encriptació OpenSSL, i amb compressió de dades. Per tant, suficient per a crear túnels permanents entre dos ordinadors que alhora eventualment poden fer-se servir per a enllaç via cable o internet entre subxarxes separades. En aquest document explicaré els passos (ben senzills) per a instal.lar sobre un guinux basat en Fedora Core 2, tot que no hi ha d'haver gaire diferència si el posem en qualsevol altre distribució de Linux, Unix o altres sistemes operatius.
En aquest exemple, unirem dos ordinadors amb guinux a través de internet, que, a més, estan alhora protegits per un tallafocs.
IP/subxarxa interna: 192.168.0.1/24
IP WAN (internet, o externa del tallafocs, la que es veu des de l'altre ordinador): 80.0.0.1
IP/subxarxa interna: 192.168.1.1/24
IP WAN: 80.0.1.1
apt-get install openvpn
Amb això, ja tenim el paquet instal·lat.
cd /etc/openvpn
openvpn --genkey --secret tunelguifi.key
local 192.168.0.1
remote 80.0.0.1
dev tun0
port 5000
comp-lzo
user nobody
ping 15
ping-restart 15
route 192.168.1.0 255.255.255.0
persist-tun
persist-key
float
ifconfig 172.25.0.1 172.25.0.2
secret /etc/openvpn/tunelguifi.key
Les adreces 172.25.0.1 i 172.25.0.2 son les IP que es fan servir per a l'enllaç. Per a obtenir més informació sobre el significat de cadascun d'aquests paràmetres, ho trobareu ben explicat fent un "man openvpn".
local 192.168.1.1
remote 80.0.1.1
dev tun0
port 5000
comp-lzo
user nobody
ping 15
ping-restart 15
route 192.168.0.0 255.255.255.0
persist-tun
persist-key
float
ifconfig 172.25.0.2 172.25.0.1
secret /etc/openvpn/tunelguifi.key
openvpn --verb 5 --config /etc/openvpn/tunelguifi.conf
Això ho hem de fer en cada ordinador, i si tot va bé, ha de proporcionar una sortida en la qual la part final diu més o menys així:
Jun 24 10:38:48 ordinador1 openvpn[5182]: UDPv4 link local (bound): 192.168.0.1:5000
Jun 24 10:38:48 ordinador1 openvpn[5182]: UDPv4 link remote: 80.0.1.1:5000
Jun 24 10:38:48 ordinador1 openvpn[5182]: Peer Connection Initiated with 80.0.1.1:5000
chkconfig --level 35 openvpn on
I per comprovar que com a servei del sistema funciona correctament:
service openvpn start
Molta més informació si vas a la pàgina del projecte OpenVPN.