En un terminal instalamos el servidor PPTP
sudo apt-get install pptpdUna vez finalizado el proceso se iniciará el servidor automáticamente, pero aún no está configurado, para ello haremos lo siguiente:
sudo gedit /etc/pptpd.confSe puede usar el editor que se prefiera, yo lo he hecho con nano pero pongo gedit para aquellos que os resulte más familar. En ese archivo configuraremos la ip local y remota, descomentándo las siguientes líneas (quitando la almohadilla # a principio de línea) o añadiéndolas
localip 192.168.1.100
remoteip 192.168.1.250-255
netmask 255.255.255.0 Guardamos y cerramos.
La ip local debe coincidir con la de la máquina que monta el servidor, que se puede saber con el comando ifconfig. Mientras que las remotas deben de no coincidir con ninguna otra máquina de la red. Mediante el guión podemos establecer un rango, en mi ejemplo va de 250 hasta 255, para 5 conexiones externas.
Ahora configuraremos otro archivo para que nos permita el acceso a internet:
sudo gedit /etc/ppp/pptpd-optionsEn este archivo descomentámos o añadimos las siguientes líneas para que permitan la resolución de DNS y permitan la codificación de un smartphone
# Network and Routing
ms-dns 91.191.136.152
ms-dns 85.229.85.109
netmask 255.255.255.0
# MPPE should be stateless ¡¡Imprescindible para Android!!
nomppe-statefulGuardamos y cerramos. Yo he usado unas DNS que me gustan pero se pueden usar otras como las de Google (8.8.8.8 - 8.8.4.4) o las de tu ISP.
Ahora vamos a añadir usuarios a nuestra VPN. Para hacerlo modificaremos el archivo chap-secrets:
sudo gedit /etc/ppp/chap-secretEn nuestro ejemplo vamos a usar como usuario/contraseña lo siguiente Jesus/12345. Tened en cuenta que cada espacio se debe añadir con el tabulador, y debe quedar algo como lo siguiente:
# Secrets for authentication using CHAP
# client server secret IP addresses
Jesus * 12345 *Como siempre guardamos y salimos.
Ahora vamos a proceder a activar el IP forwarding, para ello vamos a modificar el archivo /etc/sysctl.conf:
sudo gedit /etc/sysctl.confBuscamos la línea #net.ipv4.ip_forward=1 y le quitamos la # para descomentarla. Quedando así:
net.ipv4.ip_forward=1Guardamos los cambios y cerramos el archivo. Y activamos este último cambio con el comando
sudo sysctl -pHacemos un par de cambios en iptables para permitir el reenvío de conexión
sudo iptables -P FORWARD ACCEPT
sudo iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADELo ponemos en marcha con las modificaciones que hemos hecho
/etc/init.d/pptpd restartYa sólo queda configurar el cliente para que se conecte, y por supuesto abrir un puerto en el router (puerto 1723 por defecto) si es necesario. Bueno, y también poner un servicio de ip dinámica y esas cosas ya al gusto de cada cual. A las malas, si el router no permite abrir el puerto PPTP correctamente, también se puede usar la opción de incluir el servidor en la DMZ del router, aunque no es lo más aconsejable.
