Cómo configurar un servidor VPN con Pritunl en Ubuntu 18.04 LTS

Pritunl es un software de servidor VPN basado en la popular plataforma OpenVPN. En este tutorial, aprenderás a configurar y utilizar Pritunl en tu servidor basado en Ubuntu 18.04 LTS.

Requisitos

Necesitarás un servidor basado en Ubuntu 18.04. Si estás ejecutando software de servidor, tendrás que detenerlo porque Pritunl necesita los puertos 80 y 443 para funcionar.

Asegúrate de que tu sistema está actualizado.

$ sudo apt update
$ sudo apt upgrade

Si estás utilizando un cortafuegos, hay que abrir algunos puertos para que Pritunl funcione correctamente.

Si estás utilizando el cortafuegos ufw, utiliza los siguientes comandos. Puedes saber más sobre cómo instalar y utilizar el cortafuegos UFW en nuestro tutorial.

$ sudo ufw allow http
$ sudo ufw allow https
$ sudo ufw allow 10447/udp
$ sudo ufw reload

Si te fijas bien, hemos abierto el puerto 10447 sobre UDP. Utilizaremos este puerto para ejecutar nuestra VPN. Así que anota el número de puerto. No obstante, puedes elegir el número de puerto que quieras.

Instalar Pritunl

Paso 1: Añade el repositorio de Pritunl.

$ echo "deb http://repo.pritunl.com/stable/apt bionic main" | sudo tee /etc/apt/sources.list.d/pritunl.list

Paso 2: Añade el Repositorio Mongodb.

$ sudo nano /etc/apt/sources.list.d/mongodb-org-4.0.list

Pega la siguiente línea en el editor Nano.

deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse

Guarda el archivo pulsando Ctrl + X y luego seleccionando Y.

Paso 2: Añade las claves públicas de los repositorios Pritunl y Mongodb.

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A
$ sudo apt update

Paso 3: Instala Pritunl y Mongodb.

$ sudo apt --assume-yes install pritunl mongodb-server
$ sudo systemctl start pritunl mongodb
$ sudo systemctl enable pritunl mongodb

Configurar Pritunl

Tu servidor Pritunl ya está en marcha. Tenemos que configurarlo antes de empezar a utilizarlo. La página de administración de Pritunl está protegida por un certificado SSL autofirmado. Tu navegador planteará una objeción por primera vez. Añade como excepción y a partir de ahí debería funcionar bien.

La primera vez que inicies Pritunl en el navegador te aparecerá la siguiente pantalla.

Configuración de la base de datos Pritunl

Aquí necesitas una clave de configuración. Para generar tu clave de configuración, ejecuta el siguiente comando.

$ sudo pritunl setup-key

Pega la clave generada en la casilla y pulsa Guardar. Te aparecerá la siguiente pantalla.

Acceder a Pritunl

Según las instrucciones dadas, ejecuta el siguiente comando para obtener tus credenciales de acceso.

$ sudo pritunl default-password

Inicia sesión para pasar a la pantalla de Configuración Inicial. Introduce el dominio que has registrado para tu sitio VPN en el campo de texto Dominio Lets Encrypt. Si quieres cambiar tu contraseña, puedes introducir una nueva contraseña. También puedes cambiar tu nombre de usuario aquí. Pulsa Guardar para continuar.

Configuración inicial

Ve a la pestaña Usuarios. Para conectarte a la VPN, tendrás que crear una organización y un usuario. Haz clic primero en Añadir organización. Una vez que la hayas creado, añade un usuario a esa organización pulsando en Añadir Usuario.

Añadir detalles de la organización

Añadir usuario

Es el momento de crear un servidor al que puedan conectarse tus usuarios. Ve a la pestaña Servidores y haz clic en Añadir un servidor.

Añadir un servidor

Elige un nombre para tu servidor. Selecciona el Protocolo como UDP y el Puerto como 10447 que hemos añadido antes a nuestro cortafuegos. Por supuesto, puedes utilizar cualquier puerto que hayas añadido a tu cortafuegos.

Si quieres controlar cuántos clientes y cuántos dispositivos pueden conectarse a tu servidor, puedes configurarlo haciendo clic en el botón Avanzado. Este es el aspecto que tendrá. Asegúrate de que primero se selecciona Permitir varios dispositivos.

Detalles de la configuración del servidor

Haz clic en Añadir para continuar.

PritCA

El siguiente paso es adjuntar el servidor que acabamos de crear a nuestra Organización. Haz clic en Adjuntar Organización para hacerlo.

Adjuntar organización

Una vez hecho esto, haz clic en Iniciar servidor para iniciar tu servicio VPN.

Servidor VPN iniciado

Has completado la configuración de tu servidor VPN Pritunl.

Conéctate a Pritunl

Como Pritunl es un software basado en OpenVPN, puedes utilizar cualquier cliente compatible con OpenVPN para conectarte. Pritunl proporciona clientes para Linux, macOS y Windows. Puedes utilizar cualquiera de ellos.

Para conectarte a través del cliente OpenVPN, necesitarás el archivo de configuración del mismo. Ve a la pestaña Usuarios y haz clic en el botón Descargar.

Conecta con Pritunl

Puedes extraer el archivo de configuración e importarlo a tu cliente OpenVPN para conectarte. Para confirmar si te has conectado con éxito a través de la VPN, una de las formas es visitar whatismyip.com. Te mostrará tu IP cambiada y tu ubicación si tu conexión es satisfactoria.

Hay una última cosa de la que hablar antes de terminar el tutorial y es sobre la herramienta de línea de comandos.

Línea de comandos de Pritunl

Pritunl VPN viene con una herramienta de línea de comandos que te permite realizar ciertas tareas como restablecer la contraseña, restablecer el SSL, restablecer la versión en caso de que se produzca un downgrade, reconfigurar y reparar la base de datos, ver los registros y cambiar las propiedades.

Ver la versión

Para comprobar qué versión de Pritunl estás ejecutando, utiliza

$ sudo pritunl version

Reparar la base de datos

En caso de que la base de datos de Pritunl se corrompa, puedes repararla ejecutando los siguientes comandos.

$ sudo systemctl stop pritunl
$ sudo pritunl repair-database
$ sudo systemctl start pritunl

Restablecer la contraseña

En caso de que olvides los datos de acceso a la consola web, restablece las credenciales mediante los siguientes comandos.

$ sudo pritunl reset-password

Cambiar el puerto de la consola web

Por defecto, Pritunl se ejecuta en el puerto 443. Si quieres cambiarlo, utiliza el siguiente comando.

$ sudo pritunl set app.server_port 443

Cambia el número 443 por el puerto que quieras elegir. Pritunl también ejecuta un servidor web en el puerto 80 para la verificación de Let’s Encrypt y para redirigir las peticiones HTTP a HTTPS. Si no quieres que se ejecute, utiliza el siguiente comando.

$ sudo pritunl set app.redirect_server false

Hay muchas más cosas que puedes hacer con la línea de comandos. Consulta la documentación oficial para saber más.

Eso es todo en este tutorial. Si tienes alguna duda, pregunta en los comentarios de abajo.

También te podría gustar...