Mi escenario es un Fortigate con ip pública en un extremo, y un Cisco ASA con ip pública también en el otro. Entre ellos montan una vpn con ipsec, que falla más que una escopeta de feria. Mi idea era delegar la función que hace el Fortigate a un linux, una máquina virtual.
Monté entonces el servicio en una Debian 6 (detrás de un NAT) para que hiciera el papel del fortigate, en cuanto a la vpn se refiere, a ver si así consigo más estabilidad en la conexión…
Supongamos que el Cisco tiene la IP 1.2.3.4, cuya red privada a la que queremos acceder por vpn es 172.24.76.0/22. Supongamos también que la ip (privada, recordemos que está detrás de un NAT) del linux es 10.243.135.39, y que tenemos dos redes privadas que queremos conectar con la otra: 10.243.134.0/24 y 10.243.135.0/25.

Pasos a seguir en la Debian, como root:

Estos son los dos paquetes básicos (te instala también ipsec-tools).

Editamos/creamos el archivo que contiene la clave pre-compartida (no uso certificados):

En mi caso, importé manualmente la config del fortinet (cifrado y demás) y lo adapté a la sintaxis de racoon:

Sólo queda abrir los puertos 500 y 4500 udp en nuestro firewall y redirigirlos a la máquina linux. Arrancamos dos servicios (los tenemos que incluir en el arranque de la máquina):

Y vamos echando un ojo al log de racoon:

Si queremos hacer un poco de troubleshooting, podemos usar tcpdump para ver la negociación IKE:

Y con este otro comando podemos ver si efectivamente se ha creado el túnel cifrado:

Sí, es una guía muuuuuy rápida y seguro que no funciona a la primera. Es lo que tiene una guía rápida 🙂 Y sí, también sé que no he explicado nada, ni conceptos ni nada.
Por internet hay mucha info, pero los enlaces más interesantes que me he encontrado son:

http://www.unixwiz.net/techtips/iguide-ipsec.html
https://wiki.debian.org/IPsec
http://www.kame.net/newsletter/20001119/
http://www.onlamp.com/pub/a/bsd/2003/01/09/FreeBSD_Basics.html?page=2
http://es.scribd.com/doc/7054317/IPsec-Advanced-Toubleshooting-Guide

Ipsec, guía rápida

Deja un comentario

Tu dirección de correo electrónico no será publicada.