viernes, 10 de agosto de 2012

Acceder a una VPN de Windows desde mi Debian Squeeze II

La pretensión es conectarse a una VPN contra un servidor Windows (o XP) en el que están habilitadas las conexiones entrantes para crear un sencillo (e inseguro) túnel.

En los siguientes pasos se resume cómo configurar nuestro Debian para conectarnos. Todo a través de un terminal:


1) Partimos de una versión reciente del núcleo que cuenta ya con soporte MPPE por los que no es necesario su configuración.

2) El paquete pptp-linux debe estar instalado en nuestro sistema. Este paquete es el cliente que nos permitirá conectarnos.

alfredo@xana:~$ apt-cache search pptp
i   pptp-linux                      - Point-to-Point Tunneling Protocol (PPTP) C
p   pptpd                           - PoPToP Point to Point Tunneling Server    

Se puede comprobar que está instalado el cliente (i).

3) Se configura el archivo options.pptp con el editor de texto que prefieras, en mi caso nano.

alfredo@xana:~$ nano /etc/ppp/options.pptp

Garantizamos que las siguientes opciones estén presentes en el archivo. Una almohadilla delante de una línea la convierte en comentario. Por ello las opciones coloreadas a continuación no deben tener ninguna # al comienzo.

# Lock the port
lock
# Authentication
# We don't need the tunnel server to authenticate itself
noauth
# Turn off compression protocols we know won't be used
nobsdcomp
nodeflate

 4) Se introducen en el archivo chap-secrets el usuario y contraseña para acceder a la VPN. El archivo se edita con un editor de texto (nano) y con privilegios de root (sudo)

alfredo@xana:~$ sudo nano /etc/ppp/chap-secrets

# Secrets for authentication using CHAP
# client        server  secret                  IP addresses

alfre PPTP contraseña *

En mi caso el nombre de usuario es alfre y la password contraseña

Si nos conectamos a una VPN en la que se precisa indicar un dominio, sería igual pero anteponiendo al nombre de usuario, el nombre del dominio más dos barras invertidas, tal que así:

midominio\\usuario PPTP contraseña.

Es conveniente que las contraseñas no tengan caranteres especiales (ñ, vocales acentuadas, etc). Si así fuera las habría que poner entre comillas.

5) Se crea el archivo con la configuración para acceder a la vpn (ip servidor)

alfredo@xana:~$ sudo nano /etc/ppp/peers/VPN_CASA

Abrimos un fichero (que todavía no existe) con un nombre que identifique claramente nuestra nueva conexión, en mi caso VPN_CASA porque me voy a conectar en remoto a mi casa desde mi portatil Debian.
El fichero lo ubicaremos en /etc/ppp/peers

pty "pptp NOMBRESERVIDOR --nolaunchpppd"
name DOMINIO\\USUARIO
remotename PPTP
require-mppe-128
file /etc/ppp/options.pptp
ipparam NOMBREDELACONEXION

Siguiendo con el ejemplo pongo la ip fija o el nombre del servidor que apunte a la ip de mi casa. Yo utilizo los servicios de dyndns.org al no disponer de ip fija.
El usuario sigue las mismas reglas que en el punto anterior (dominio\\usuario o usuario a secas). La parte de NOMBREDELACONEXION es el mismo nombre que le hemos puesto al fichero.

pty "pptp miservidor.dyndns.org --nolaunchpppd"
name alfre
remotename PPTP
require-mppe-128
file /etc/ppp/options.pptp
ipparam VPN_CASA

6) Con la conexión lista ejecutamos el siguiente comando:

alfredo@xana:~$ sudo pon VPN_CASA

pon seguido del nombre de la conexión VPN recién configurada (el nombre de su fichero de configuración)

para terminar la conexión

alfredo@xana:~$ sudo poff VPN_CASA

para ejecutar la conexión comprobando errores

alfredo@xana:~$ sudo pon VPN_CASA debug dump logfd 2 nodetach

OJO: Se me olvidaba, el comando de conexión a la VPN pon o el de desconexión poff los hay que lanzar con privilegios de root, anteponiendo el comando sudo.
Fuente (en inglés): http://pptpclient.sourceforge.net/howto-debian.phtml#install

No hay comentarios:

Publicar un comentario