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 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.
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.
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.
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.
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.
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.
Haz clic en Añadir para continuar.
El siguiente paso es adjuntar el servidor que acabamos de crear a nuestra Organización. Haz clic en Adjuntar Organización para hacerlo.
Una vez hecho esto, haz clic en Iniciar servidor para iniciar tu servicio VPN.
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.
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.
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.