VPN PPTP con DD-WRT

El título lo deja bastante claro, montar una VPN (de la modalidad PPTP) con routers que utilicen el firmware DD-WRT.

¿Qué es una VPN? Pues eso una red privada virtual. El que quiera más información que lo busque en la wikipedia, tan sólo decir que a grandes rasgos sirve para unir dos o más redes locales (dos o más LANs) por medio de internet (o cualquier otro tipo de WAN)

¿Para qué quiero unir dos LANs? En mi caso concreto esta problemática surge porque una de las empresas para las que trabajo abre una nueva oficina en Barcelona. El probelma es que la central, que está en Totana, dispone de un servidor con Active Directory (incluidos prefiles móviles) y Exchange. Eso quiere decir que tanto los correos de los usuarios, como sus documentos, como los archivos compartidos para todos los usuarios están en el servidor, y por supuesto, también la información de las cuentas de usuario. Por supuesto, todos los equipos, tanto los de Totana como los de Barcelona forman un único dominio, y por supuesto el controlador de dominio es el servidor que está en Totana. En resumen, que cuando un usuario inicie sesión en un equipo en Barcelona, este usuario debe autenticarse contra el controlador de dominio que está en Totana. Pero no sólo eso, sino que una vez autenticado, el usuario debe poder acceder a sus documentos y su email, que residen en el servidor de Totana. Además debe tener acceso a las carpetas compartidas de otros equipos de la organización, independientemente de si los equipos están en Totana o Barcelona. Para eso necesito yo una VPN.

Disclaimer: Antes de continuar me gustaría dejar claro que este tipo concreto de VPN, la VPN PPTP, es totalmente insegura. Su cifrado se puede romper fácilmente con un ataque pasivo, por lo que todo aquel que la use debe conocer sus debilidades e implementar políticas de seguridad adicionales. Una buena alternativa es OpenVPN, la cual también es soportada por el firmware DD-WRT.

Empecemos. Primero necesitamos dos routers capaces de ejecutar DD-WRT. En mi caso me decanto por los Buffalo WHR-HP-G54 ya que me han dado resultados espectaculares en todas mis instalaciones.

Uno de ellos hará las veces de servidor VPN (el de Totana) y otro hará de cliente VPN (el de Barcelona). Por supuesto, podríamos tener tantos clientes VPN como deseemos; sin ir más lejos, en mi estructura hay otros dos clientes VPN que son portátiles con Windows 7 que se mueven de un sitio para otro, pero eso es otra historia y una de las razones por las que opté por PPTP en lugar de OpenVPN.

Lo primero que tenemos que hacer es flashear nuestros flamantes Buffalos WHR-HP-G54 con el último firmware DD-WRT disponible, pero no cualquier versión, sino la versión específica para VPN. Esta versión incluye servicios tanto para PPTP como para OpenVPN.

Buffalo DD-WRT

Lo primero a tener en cuenta es que las redes no se solapen. Puedes compartir la misma familia de red con subneting, pero para simplificar el ejemplo vamos a utilizar dos familias diferentes.

Red de Totana: 192.168.0.0/24

Red de Barcelona: 192.168.3.0/24

En ambas redes el router DD-WRT tendrá la ip 254, es decir, en Totana será 192.168.0.254 y en Barcelona será la 192.168.3.254

Además, cada una de las oficinas, debería tener ip fija o tener ip dinámica asignada a un dominio fijo, algo que conseguiremos fácilmente con una cuenta gratuita No-ip.com

Así, para nuestro caso tendríamos dos dominios, totana.no-ip.org y barcelona.no-ip.org y configuraríamos cada uno de los routers para que se encargase de mantener actualizados dichos hosts.

 

¿Qué tenemos que hacer en el router que haga de servidor VPN (192.168.0.254)?


1.
Configurarlo como servidor VPN con encriptación, teniendo en cuenta que como Server IP debemos asignar una ip libre, y que no sea la propia ip del router, un error muy común que aparece en algunos tutoriales y que según la configuración puede funcionar o no. El problema es que si utilizamos la ip del router (192.168.0.254) como ip del servidor VPN es que la interfaz de ppp0 no podrá añadirse al bridge que DD-WRT crea por defecto. Así, en nuestro caso asignaremos la ip 192.168.0.253 al servidor PPTP, como vemos en la imagen.

Mucho ojo al campo Server Ip, que no es la dirección del router. Cabe destacar también que los Clients ip(s) no deben de solaparse con el rango de ips del servidor DHCP para evitar problemas. Con el rango actual, 40-43, podré conectar un máximo de 4 clientes VPN.

Te pudes estar dando cabezazos para ver por qué no funciona si no habilitas el tráficon PPTP en el firewall que trae integrado DD-WRT.

2. Debemos de crear unas redirecciones de puertos para que todo funcione. De igual modo que en el caso del Server Ip, es posible que funcione sin hacer esto, pero será de casualidad, simplemente porque vuestro router está abierto a todos los puertos. Lo correcto es mappear los puertos 1792 y 1723 hacia el propio router; imprescindible si tienes configurada una DMZ.

Imprescindible notar la dirección a la que mapeamos los puertos, la dirección de nuestro propio router, y no la dirección del Server Ip (192.168.0.253)

 3. Para terminar con la configuración en el router que hará las veces de servidor, debemos indicarle qué tiene que hacer con los paquetes cuyo destino sea la red 192.168.3.x; deberá enviarlos a Barcelona, y no al proveedor de internet (ISP) que es lo que haría si no configuramos esta entrada en la tabla de enrutamiento.

 

 


¿Qué tenemos que hacer en el router que haga de cliente VPN (192.168.3.254)?

1. Configuramos los parámetros VPN

2. Configuramos una entrada en la tabla de enrutamiento para que sepa qué hacer con los paquetes de la red 192.168.0.x y no se los envíe al ISP.

3. Configurar el firewall para que permita el tráfico PPTP

 

Con esto, ya tenemos nuestra VPN funcionando. Para probarlo podemos hacer ping al servidor (192.168.0.1) que está en Totana desde cualquier equipo de Barcelona (192.168.3.x) y recibiremos respuesta. Además, podemos comprabar las conexiones PPTP en la interfaz web de DD-WRT (en el servidor VPN) en el apartado Status -> LAN.

Fácil ¿verdad?

  1 comment for “VPN PPTP con DD-WRT

  1. carlos
    25 mayo, 2016 at 21:59

    hola, podrías resubir las imágenes? está muy bueno el tutorial, pero seria muy bueno poder verlas
    gracias

Deja un comentario

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