You are here

Tuneles VPN en Debian Etch con MPPE

Aclaremos algunas ideas que tendremos que usar en el artículo:

* VPN (Virtual Private Network-Red Privada Virtual): nos permite extender nuestra red "más lejos". Es decir, tenemos nuestra red privada (con IP's privadas, etc.) y desde fuera de la red podremos acceder a los recursos de esta (normalmente de forma más o menos segura)
- poptop: es la implementación para Linux del protocolo de Hasefroch
- MSCHAPv2: protocolo de autentificación cifrado
- MPPE: protocolo de cifrado de los datos

Las ventajas de usar pptp (no exclusivas de él) para hacer una VPN son:

- Conectaremos de Windows a Linux de forma segura a través de una red insegura
- También nos permitirá acceder a la red privada donde está conectado el servidor Linux
- La parte cliente viene con cualquier Windows. De esa forma para una empresa no hace falta instalar software adicional (como podria ser para IPSec)
- Permite usar también Linux como cliente

Desventaja: es un protocolo que no es totalmente seguro. De todas formas seguramente nos servirá en muchos casos, sobretodo por las ventajas vistas antes. En otros casos mejor usar de IPSec

Dicho esto, vamos al grano:
Primero decir que si usamos Debian etch probablemente ya estemos corriendo un kernel 2.6.18 y por tanto tenemos soporte MPPE en el kernel, para versiones del kernel anteriores explicaremos como habilitar soporte MPPE en el kernel 2.6.8 de Debian Sarge.
Otra opción para los que no gustan de compilar es bajarse nuestro kernel 2.6.8 con soporte MPPE, empaquetado en un deb desde aquí.

Cargamos el módulo del kernel:
modprobe ppp-compress-18
Si no aparece ningún mensaje es que todo ha ido bien :) Si no es así nuestro kernel no soporta encriptación MPPE.

Instalamos el demonio PPTP, desde los repositorios de debian
apt-get install pptpd

Configuramos el rango de IPs en /etc/pptpd.conf

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

La ip que tendrá el nodo al otro lado del túnel dentro de nuestra red, y la IP remota que tendrá nuestro host para enlazar con el túnel.

Reiniciamos el servidor PPTP:
/etc/init.d/pptpd restart

Creamos los usuarios que necesitemos en /etc/ppp/chap-secrets
Con el siguiente formato
usuario    *       password    *
Nota: No hace falta reiniciar el servidor PPTP cada vez que añadimos o modificamos usuarios, los cambios se harán efectivos en la próxima conexión al túnel VPN

Al conectarnos al túnel, se creará en la máquina servidor una nueva interfaz llamada ppp0, tan solo nos quedará configurar el enrutamiento con la nueva interfaz de red.

ppp0      Link encap:Point-to-Point Protocol
          inet addr:192.168.0.1  P-t-P:192.168.0.234  Mask:255.255.255.255
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1400  Metric:1
          RX packets:14 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3
          RX bytes:1063 (1.0 KiB)  TX bytes:104 (104.0 b)

Fuentes:
http://poptop.sourceforge.net/dox/debian-howto.phtml
http://bulma.net/body.phtml?nIdNoticia=1743

Qué te parece: