Crear nuestra propia VPN en Ubuntu

Ya hace unos días hablamos de cómo configurar una IP estática en Ubuntu (y MacOS de regalo). Esto, como ya comenté en el artículo en cuestión, es necesario para ciertos servicios, como el que hoy nos atañe: Crear nuestra propia VPN en Ubuntu. Además, el puerto PPTP (1723 TCP) debe estar abierto. Como también necesitamos tener abierto otro puerto que soporte el protocolo GRE, lo mejor es usar la regla para PPTP del router. Manualmente no podemos realizar esta operación, pero las reglas predefinidas sí la realizan.

Una vez con la configuración previa lista, tocará irse al terminal para descargar e instalar el paquete PPTP, con permisos de administrador como para toda instalación. Tal que así:

sudo apt-get install pptpd

Como ya sabéis sudo nos permite realizar una instrucción con permisos de administrador (la primera vez que lo usas en el terminal te pedirá la contraseña). Cuando comience la instalación también os preguntará si queréis instalar el paquete bcrelay, pulsad la S para confirmar y vía.

Cuando termine la instalación, se lanzará de forma automática el servidor PPTP. Ahora toca meter mano en la configuración, con el editor de texto Nano.

sudo nano /etc/pptpd.conf

Al final de todo tenéis que añadir las líneas localip seguida de la ip que queráis tener como servidor local en la VPN (ojo, poned una que esté fuera del rango de IP locales, para evitar conflictos) y remoteip seguido del rango de direcciones que usaremos para asignar a los clientes, podéis poner un rango o varias separadas por comas. Aquí un ejemplo:

localip 10.11.0.1
remoteip 10.11.0.100-150,10.10.10.245

Ya tenéis un ejemplo con ambas opciones. Tras esto tocará añadir usuarios a nuestra VPN, configurando el archivo chap-secrets.

sudo nano /etc/ppp/chap-secrets

El formato es el siguiente, con los elementos separados por tabulaciones: nombre_usuario pptpd password *. El primero es el nombre de usuario (ponéis el que queráis darle a ese usuario en la red), lo siguiente el nombre del servidor (en este caso pptpd), la contraseña (poned algo seguro, no abc123) y la ip (un *, que ya nos ocuparemos de eso después).

En fin, tras esto, y como ya he dicho, toca ocuparse de las ip, concretamente configurando el cortafuegos. Como en todo lo primero es que nuestro amigo “el nano” nos abra el archivo rc.local:

sudo nano rc.local

En este caso vamos a la penúltima línea (justo antes de exit 0) del script y añadimos:

iptables -t nat -A POSTROUTING -s 10.11.0.0/24 -o eth0 -j MASQUERADE

El argumento 10.11.0.0/24 es el rango de direcciones que elegimos cuando estábamos configurando PPTPD, si pusiste otro configúralo en consecuencia. El argumento eth0 es el nombre de la tarjeta de red, asegúrate de poner la tuya. Guarda cambios y sigue porque ahora tocará editar otro archivo, el del ip forwarding:

sudo nano /etc/sysctl.conf

Ahí busca la línea comentada #net.ipv4.ip_forward=1 y quítale el # para descomentarla. Guarda cambios y sal.

Y con todo esto nuestro servidor de VPN en Ubuntu está configurado. Ahora sólo te queda configurar los clientes y ya tienes tu propia VPN creada, para poder comunicarte con seguridad con sus miembros, de forma que vuestros datos no estén expuestos a espionajes varios (eso sí, recuerda que toda seguridad no vale de nada si la contraseña de alguno de los usuarios es revelada, la seguridad perfecta no existe, ni existirá mientras haya un factor humano)

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s