martes, 23 de julio de 2013

Publicado martes, 23 de julio de 2013 por con 6 comentarios

Crear una VPN con PPTP en KALI LINUX / DEBIAN

Requisitos
-Una maquina que este de servidor
-Una maquina cliente para testear la conexión a nivel interno de red
-Establecer un ip estatica a la maquina servidor
-Hacer un port forward al router con el que nos conectamos a internet abriendo el puerto 1723 para que las peticiones se dirijan a la maquina servidor, esto para poder conectarnos al servidor externamente a la red.

Instalar nuestro Servidor
Para iniciar con la configuración de nuestro servidor primero tenemos que instalar los paquetes necesarios en este caso como vamos a configurar un servidor mediante pptp instalamos el servidor pptp que nos ofrece el proyecto poptop, para esto abrimos un terminal y tipeamos:
apt-get install pptpd


Una vez instalado esto los archivos de configuración se ubican en los siguientes directorios:
/etc/pptpd.conf                                este es el archivo de configuración principal
/etc/ppp/chap-secrets                      este archivo es donde pondremos los usuarios de nuestra vpn
/etc/ppp/pptpd-option                     este archivo nos sirve para parametros generales como puede ser                                                                  nombre de la vpn, autenticacion requerida, dns, wins, entre otros.

Configurando el Servidor
Para la configuración de direcciones ip tanto del servidor como el rango de direcciones ip remotas vamos a editar el archivo pptpd.conf con cualquier editor de texto, en este caso lo haré con gedit para lo cual ejecutamos lo siguiente en un terminal:

una vez que se nos abra el archivo procedemos a descomentar las lineas localip y remoteip donde:
localip es la dirección ip que tomara nuestro servidor al momento de recibir una peticion de un cliente
remoteip es el rango de direcciones que asignara el servidor a los clientes remotos
se puede elegir cual ip, pero es preferible trabajar con ip fuera del rango asignado por el dhcp de su red local

Ahora procedemos a editar el archivo /etc/ppp/pptpd-options para configuraciones generales podemos darle un nombre a nuestra vpn, pero lo dejare en el default que es pptp, aqui se puede establecer los dns para la navegacion en internet, y en este ejemplo usare los dns publicos de google que son 8.8.8.8 y 8.8.4.4
Al final podemos agregar las siguientes lineas para mejorar los parametros de conexion
mtu 1490
mru 1490

Configurando los Usuarios
Para configurar los usuarios que pueden acceder a nuestra vpn vamos editar el archivo /etc/ppp/chap-secrets de la siguiente manera

# CHAP secrets for vlager.vbrew.com #
 # client                       server                      secret                   addrs #
-------------------------------------------------------------------
    username                *                             password              *
    username2              pptp                        password              192.168.8.1
donde
username: es el nombre de usuario
server: el nombre del servidor al que se va a conectar
secret: el password que va a tener el usuario
addrs: la direccion que se le va a a asignar en este punto se le puede asignar una ip estática o automática de acuerdo al rango asignado en las configuraciones anteriores


Habilitando el reenvio de paquetes y el firewall interno con iptables
Una vez creados los usuarios procedemos a habilitar el reenvio de paquetes y dar permisos al firewall interno del servidor

Para habilitar el reenvio de paquetes editamos el archivo /etc/sysctl.conf
gedit /etc/sysctl.conf

y dentro de este buscamos: net.ipv4.ip_forward=1
si esta comentado lo descomentamos, y si esta en 0 lo ponemos en 1 y listo

luego ejecutamos sysctl -p 
y deberia mostrarnos la siguiente linea:
net.ipv4.ip_forward = 1

Luego damos permisos al firewall para aceptar peticiones en el puerto 1723, habilitamos el protocolo gre que es usado en este tipo de vpn, y damos permiso para acceder a la red local mediante la interfaz de conexion a internet, con los siguiente comandos:

iptables -I INPUT -p tcp --dport 1723 -m state --state NEW -j ACCEPT
iptables -I INPUT -p gre -j ACCEPT
iptables -t nat -I POSTROUTING -o eth0 -j MASQUERADE

Para guardar nuestras reglas del iptables ejecutamos:
iptables-save

Luego reiniciamos el daemon pptp para poder empezar a testearlo
en Kali podemos hacerlo con:

service pptpd restart

en debian en general podemos hacerlo con:
/etc/init.d/pptpd restart

Probando nuestra vpn
Para probar nuestra vpn localmente nos ubicamos en la maquina cliente, si es windows creamos cliente pptp, con la direccion ip local estatica de nuestro servidor para conectarnos a este, si todo esta bien nos registrara en la red, y luego podremos probarla desde una red externa
      edit

6 comentarios:

  1. Hola, disculpa, como se hace esta parte?

    "Para probar nuestra vpn localmente nos ubicamos en la maquina cliente, si es windows creamos cliente pptp, con la direccion ip local estatica de nuestro servidor para conectarnos a este, si todo esta bien nos registrara en la red, y luego podremos probarla desde una red externa"


    para crear un nuevo cliente

    ResponderBorrar
    Respuestas
    1. Para crear el cliente si usas windows puedes hacerlo en centro de redes y recursos compartidos una vez ahí das click en configurar una nueva conexión de red, una vez dentro te conectas a una red de trabajo y en los parámetros de usuario y contraseña pones los datos del username y password que creaste en el archivo de configuracion

      Borrar
  2. hola disculpa me sale esto ayuda porfa E: No se ha podido localizar el paquete pptpd

    ResponderBorrar
    Respuestas
    1. El problema es que el paquete no esta en los repositorios de Kali, agrega el repositorio del packete pptpd en tu archivo sources.list y se soluciona, el packete esta en el repositorio debian: http://ftp.de.debian.org/debian jessie main

      O puedes descargarlo e instalarlo manualmente desde:
      https://packages.debian.org/jessie/amd64/pptpd/download

      Borrar
  3. Ayuda!!

    Tengo instalada la ultima version de kali linux, ya instale y configure el servidor pptpd tal y como describes en todos los pasos siguiendo tu rutina, ya me hace la conexion desde el cliente windows, pero estoy tratando de conectarme al servidor desde la misma maquina linux pero al darle agregar VPN me sale una ventana donde dice añadir VPN y solo me sale la opcion de importar desde un archivo, ¿Como hago para agregar la VPN que acabo de crear?

    ResponderBorrar
    Respuestas
    1. Kali por lo general no trae instalado el cliente para crear vpn's, por lo que deberias instalar alguno, por ejemplo puedes usar

      apt-get install network-manager-pptp

      Luego ya tendrías la opción de crear una VPN desde el administrador de redes

      Borrar