Vamos a configurar un servidor VPN PPTP en un ubuntu y configurar clientes ubuntu y windows.
Comenzaremos por la configuración del servidor VPN.
En primer lugar instalamos el paquete pptpd:
apt-get install pptpdSeguidamente modificamos el fichero de configuración:
/etc/pptpd.confY modificamos las líneas localip y remoteip, por ejemplo:
localip 10.0.0.1remoteip 10.0.0.10-100Trabajaremos con un rango de IPs diferente del de la red local, localip será la IP que tendrá el servidor y el rango de remoteip las IPs que se asignarán a los terminales que se conecten al VPN.
A continuación editamos el fichero de opciones:
/etc/ppp/pptpd-optionsDonde tenemos la opción de cambiar el nombre de la red VPN en la línea name (por defecto pptpd):
name pptpdY donde debemos configurar los servidores dns, por ejemplo:
ms-dns 10.0.0.1ms-dns 80.58.61.250ms-dns 80.58.61.254Ahora damos de alta las cuentas de los clientes en el fichero:
/etc/ppp/chap-secretsPara cada cliente añadimos una línea con el formato:
nombreCliente nombreRed contraseña *Donde nombreCliente y contraseña serán los que necesitarán los usuarios para identificarse; nombreRed si no lo hemos cambiado será pptpd y el * indica que se le asignará una ip del rango remoteip previamente establecido, pero también podemos sustituirlo por una ip concreta si así lo deseamos.
Finalmente reiniciamos el servicio con:
/etc/init.d/pptpd restartYa tenemos configurado el servidor VPN.
Aquí hay más información al respecto.
A continuación para poder conectarnos al servidor VPN a través de internet redirigimos en el router los puertos 1723 TCP y 47 UDP al equipo que hemos configurado como servidor VPN.
Ahora vamos a configurar los clientes, empezaremos por windows xp:
Vamos al menú Inicio -> Panel de Control -> Conexiones de red e Internet -> Crear una conexión a la red de su trabajo. Seleccionamos 'Conexión de red privada virtual', le damos un nombre descriptivo a la conexión, si nos pregunta marcamos 'No usar la conexión inicial' y a continuación introducimos la IP externa del servidor VPN, por último por comodidad podemos marcar que agregue un acceso directo a la conexión en el escritorio.
Es posible que cuando nos conectemos a la VPN tengamos problemas para navegar por internet, cuando la puerta de enlace de la red remota esté en un rango de IPs diferente, en cuyo caso editamos la conexión de red a través del menú 'Propiedades' , seleccionamos la pestaña 'Funciones de red', escogemos 'Protocolo Internet (TCP/IP)' y pulsamos el botón 'Propiedades', en la nueva ventana seleccionamos 'Opciones avanzadas...' y en la ventana que se abrirá desmarcamos de la pestaña 'General' la opción 'Usar la puerta de enlace predeterminada en la red remota'.
Y ahora los clientes ubuntu, podemos conectarnos por consola o a través del entorno gráfico.
Para hacerlo gráficamente, debemos en primer lugar instalar el plugin pptp para el network manager:
apt-get install network-manager-pptpA continuación desplegamos el menú del network manager y seleccionamos Conexiones VPN -> Configurar VPN... Pulsamos el botón 'Añadir' y elegimos 'Protocolo de túnel punto a punto (PPTP)'. Le damos un nombre descriptivo a la conexión, en 'Pasarela' escribimos la IP externa del servidor VPN, escribimos el nombre de usuario y si lo deseamos la contraseña y por último pulsamos el botón 'Avanzado...' y en la nueva ventana marcamos 'Usar cifrado punto a punto (MPPE)'.
Ahora podemos conectarnos a la VPN desplegando el menú del network manager y en 'Conexiones VPN' seleccionando la conexión creada, el icono del network manager mostrará un candado para indicar que estamos en una red segura.
Lamentablemente en la versión actual del network manager no he encontrado la manera de indicarle que use la puerta de enlace local para el acceso a internet. Por lo que es posible que al conectar a la VPN, no podamos navegar por internet.
Este problema no se da si en lugar de usar el network manager, establecemos la conexión por consola, mediante los sonoros comandos pon y poff.
Para conectarnos usaremos el comando pon, pasándole un fichero de configuración de la conexión que deseamos establecer.
Crearemos este fichero en el directorio:
/etc/ppp/peersEl fichero llamado por ejemplo REDVPN tendrá el siguiente formato:
pty "pptp 99.99.99.99 --nolaunchpppd"name USUARIOremotename PPTPrequire-mschap-v2require-mppe-128file /etc/ppp/options.pptpipparam tunnelDonde 99.99.99.99 es la IP del servidor, USUARIO es el nombre de usuario del VPN y PPTP el nombre que deseamos darle a la conexión.
Por último añadimos los datos del usuario en:
/etc/ppp/chap-secretsCon una línea en el formato que ya conocemos:
nombreCliente nombreRed contraseña *
En el caso que nos ocupa nombreRed será PPTP, tal como hemos establecido en remotename.
Y ya podemos conectarnos a la VPN con:
pon REDVPNy desconectarnos con:
poffMás información sobre la configuración del terminal por consola
aquí.