Como cocinar una sopa de VPN’s

La reunion sobre VPN’s fue un exito!, todo funciono a la perfeccion, aqui les pongo una peque;a receta para montar una VPN de manera facil. La info tambien la pueden encontrar en la pagina del GulCOL.

A continuacion se listaran una serie de pasos para poder conseguir que nuestra VPN funcione!.

1. Descargamos e instalamos el paquete openvpn :

#apt-get install openvpn

2. Instalamos el paquete lzop para comprimir los datos

#apt-get install liblzo1 lzop

3. Despues tenemos que generar nuestra clave para nuestra VPN

# openvpn –genkey –secret clave.key

Y la movemos a /etc/openvpn/

4. Ahora pasamos nuestro archivo a la otra computadora (2 nodo), aqui utilizaremos el programa scp (porque encripta la informacion).

# scp /etc/openvpn/clave.key root@ip_segundo_nodo:/etc/openvpn/clave.key

Si les marca un error al copiar, hay que crear primero la carpeta /etc/openvpn y despues ejecutar el comando.

Tenemos que tener mucho cuidado como mandamos nuestro archivo clave.key , debido a que esta será nuestra contraseña para la VPN, asi que ni se les ocurra mandarla por mail, http, ftp o algun medio que no sea seguro.

5. Cargamos el modulo tun (__Universal TUN/TAP device driver support__)

#modprobe tun

Si les dice que no encuentra el modulo, a compilar el kernel!… este modulo esta en: Device __Drivers -> Networking support__ o algun luga parecido.

6. Comprobamos que exista la siguiente liga: /dev/net/tun , si no existe procedemos con:

# mknod /dev/net/tun c 10 200

7. Creamos nuestro archivo de configuracion para la VPN, en general debemos de tener algo como esto:

local [ip local]
remote [ip remota]
dev tun0
port 5000 [puerto elegido, puedes cambiarlo]
comp-lzo
user nobody
ping 15
ifconfig [ip del tunel local] [ip del tunel remoto]
secret /etc/openvpn/clave.key

Veremos que significa lo de las ip’s. La ip local ponemos nuestra direccion ip de la tarjeta eth0 o la direccion de la interfaz que tiene salida a internet.

En ip remota ponemos la direccion a la cual nos queremos conectar, se recomienda que sea algo fijo para no andar moviendo cada rato al archivo, en caso que tengamos algun enlace externo y la ip cambie cada rato, les recomiendo que saquen una cuenta en dynds o en no-ip, si tenemos un dominio pues en lugar de la ip, ponemos el nombre del dominio. Si estas detras de un router este debe de tener NAT y routear los puertos que se eligan a la maquina VPN, hay que recordar que estamos usando UDP.

En la seccion donde dice ip del tunel local ahi tenemos que crear nuestras propias direcciones ip (privadas) para la VPN, y bueno como su nombre lo dice en local ponemos la ip del nodo 1, y en remota la de nodo 2 (facil no??).

Por ejemplo si nuestro nodo 1 tenemos la siguiente dirección en eth0: 192.168.0.5 y la cuenta en dynds se llama nodo1.ath.cx, en el nodo 2 tenemos: 192.168.0.10 y el dominio es nodo2.ath.cx, las direcciones privadas para la vpn es para el nodo 1 10.0.0.1 y para el nodo 2 es 10.0.0.2, sabiendo esta información procedemos a crear los archivos de configuración.

a) En el nodo 1 ponemos lo siguiente en el archivo /etc/openvpn/tunel.conf

local 192.168.0.5
remote nodo2.ath.cx
dev tun0
port 5000
comp-lzo
user nobody

ping 15
ifconfig 10.0.0.1 10.0.0.2
secret /etc/openvpn/clave.key

b) En el nodo 2 ponemos lo siguiente en el archivo /etc/openvpn/tunel.conf

local 192.168.0.10
remote nodo1.ath.cx
dev tun0
port 5000
comp-lzo
user nobody
ping 15
ifconfig 10.0.0.2 10.0.0.1
secret /etc/openvpn/clave.key

8. Ejecutamos el siguiente comando en los 2 nodos.

#openvpn –verb 5 –config /etc/openvpn/tunel.conf

El parametro –verb nos permite ver la informacion que arroja el programa openvpn, si agregamos el parametro –daemon significa que se ejecutará en 2 plano (como demonio), ahora si vemos algo que dice: Peer Connection Initiated with [ip remota]:[puerto] entonces ya funciono!.
Si les marca algun error que la dirección ip local ya esta ocupada entonces reiniciamos la maquina, y si sigue sin funcionar entonces nos avisan jeje.

9. Se debe de crear un archivo en rc.d o init.d llamado openvpn, solo lo agregamos a nuestros procesos de arranque y listo!!.., tenemos que tener nuestra VPN funcionando a la perfeccion, si queremos probar si realmente funciona solo demos un ping a la ip del tunel remoto.

Esta receta se basa en las siguientes paginas:

* http://www.javier-gonzalez.com/articulos/openvpn/
* http://madridwireless.net/docs/openvpn/openvpn-howto.html
* http://openvpn.net

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *