PPTP es un protocolo de red desarrollado para implementar redes privadas virtuales (VPN) que aunque no sea muy seguro por ciertas vulnerabilidades encontradas sigue siendo utilizado por su facilidad de implementación. Protocolos como IPSec y L2TP han ido desplazando a PPTP pero en entornos en donde la seguridad no sea una prioridad podemos implementar PPTP por su facilidad y su gran compatibilidad.

En esta pequeña guia vamos a configurar un servicio de PPTP en un Sistema Linux con Centos como Sistema Base, antes de proceder con la guia asegurate de tener Selinux e Iptables deshabilitados (o con sus respectivas reglas).

Imagen extraída de www.mikrotik.com


Lo primero es instalar los repositorios necesarios para descargar los paquetes de PPTP (Pop Top Repositories):

[[email protected]]#  rpm -Uhv http://poptop.sourceforge.net/yum/stable/rhel5/pptp-release-current.noarch.rpm

Luego procedemos con la instalación de los paquetes ppp y pptp:

[[email protected]]# yum install ppp pptp

Luego editamos el archivo /etc/pptpd.conf con la siguiente configuración:

localip 192.168.1.1               #Dirección PPTP que tendra el Servidor 
remoteip 192.168.1.10-20    #Rango de IP que seran asignadas a los clientes PPTP

Ahora vamos a configurar los usuarios en el archivo /etc/ppp/chap-secrets de la siguiente manera:

# Secrets for authentication using CHAP
# client           server       secret              IP addresses
ramphische     *              contrasena        *   
ramonperez     *             contrasena2      192.168.1.15
elenasanchez   *             contrasena3       *
felipesantos     *             contrasena4       192.168.1.13

En la configuración anterior los usuarios que tienen el * en vez de direccion IP van a tomar direcciones del rango especificado en el pptpd.conf.

Si queremos especificar los servidores DNS para los clientes PPTP podemos especificarlo en el archivo /etc/ppp/options.pptp:

ms-dns 8.8.8.8
ms-dns 8.4.4.8

Para que nuestro Servidor Linux pueda enrutar es necesario habilitar el IP Forwarding editando el archivo /etc/sysctl.conf:

net.ipv4.ip_forward = 1

Y para que se reflejen los cambios:

[[email protected]]# sysctl -p

Finalmente reiniciamos el servicio PPTP:

[[email protected]]# service pptpd restart

Y ya estaremos Ready para usar nuestro PPTP Server, cualquier duda estamos a las ordenes!