Cómo configurar el servidor VPN de Pritunl en Ubuntu 20.04

Pritunl es un servidor VPN de código abierto, sencillo y fácil de usar, que te permite configurar la virtualización de tus redes privadas entre centros de datos en un minuto. Ofrece una interfaz web sencilla y fácil de usar y tiene la capacidad de crear una amplia gama de redes VPN en la nube. Proporciona un paquete de cliente oficial y es compatible con todos los clientes OpenVPN para la mayoría de los dispositivos y plataformas.

En este tutorial, explicaremos cómo configurar un servidor y un cliente VPN Pritunl en un servidor Ubuntu 20.04.

Requisitos previos

  • Un sistema que ejecute el servidor Ubuntu 20.04.
  • Un sistema que ejecute Ubuntu 20.04 Desktop.
  • Una contraseña de root configurada el servidor.

Cómo empezar

Antes de empezar, se recomienda actualizar los paquetes del sistema a la última versión. Puedes actualizar todos los paquetes ejecutando el siguiente comando:

apt-get update -y

Una vez actualizados todos los paquetes, instala otras dependencias necesarias ejecutando el siguiente comando:

apt-get install curl gnupg2 wget unzip -y

Una vez instalados todos los paquetes, puedes pasar al siguiente paso.

Instalar el servidor Pritunl

Por defecto, Pritunl no está disponible en el repositorio por defecto de Ubuntu. Así que tendrás que añadir la clave GPG y el repositorio a tu sistema.

Primero, añade la clave GPG con el siguiente comando:

apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv E162F504A20CDF15827F718D4B7C549A058F8B6B
apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A

A continuación, añade el repositorio de Pritunl con el siguiente comando:

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

Una vez añadido el repositorio, actualiza la caché del repositorio e instala el servidor Pritunl con el siguiente comando

apt-get update -y
apt-get install pritunl -y

Una vez terminada la instalación, inicia el servicio Pritunl y haz que se inicie al reiniciar el sistema con el siguiente comando:

systemctl start pritunl
systemctl enable pritunl

Ahora puedes verificar el estado del servicio Pritunl con el siguiente comando:

systemctl status pritunl

Deberías obtener la siguiente salida:

? pritunl.service - Pritunl Daemon
     Loaded: loaded (/etc/systemd/system/pritunl.service; disabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-01-09 11:51:03 UTC; 4s ago
   Main PID: 11487 (pritunl)
      Tasks: 2 (limit: 2353)
     Memory: 181.2M
     CGroup: /system.slice/pritunl.service
             ??11487 /usr/lib/pritunl/bin/python /usr/lib/pritunl/bin/pritunl start

Jan 09 11:51:03 ubuntu2004 systemd[1]: Started Pritunl Daemon.
Jan 09 11:51:04 ubuntu2004 pritunl[11487]: /usr/lib/pritunl/lib/python2.7/site-packages/OpenSSL/crypto.py:12: CryptographyDeprecationWarning: >
Jan 09 11:51:04 ubuntu2004 pritunl[11487]:   from cryptography import x509

También puedes verificar el puerto de escucha de Pritunl con el siguiente comando:

ss -antpl | grep pritunl

Deberías obtener la siguiente salida:

LISTEN   0        4096                          *:443                  *:*       users:(("pritunl-web",pid=11523,fd=4))                                         
LISTEN   0        5                         [::1]:9755              [::]:*       users:(("pritunl",pid=11487,fd=5))  

Una vez que hayas terminado, puedes pasar al siguiente paso.

Instalar MongoDB

Pritunl se basa en MongoDB, por lo que tendrás que instalar el servidor MongoDB en tu sistema. Por defecto, MongoDB no está disponible en el repositorio por defecto de Ubuntu 20.04, así que tendrás que añadir el repositorio de MongoDB a tu sistema.

Primero, descarga y añade la clave de MongoDB con el siguiente comando:

curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -

A continuación, añade el repositorio de MongoDB con el siguiente comando:

echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list

Una vez añadido el repositorio, actualiza el repositorio e instala el servidor MongoDB con el siguiente comando:

apt-get update -y
apt-get install mongodb-server -y

Una vez terminada la instalación, inicia el servicio MongoDB y habilítalo para que se inicie al reiniciar el sistema con el siguiente comando:

systemctl start mongodb
systemctl enable mongodb

Puedes verificar el estado del servicio MongoDB con el siguiente comando:

systemctl status mongodb

Deberías obtener la siguiente salida:

? mongodb.service - An object/document-oriented database
     Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-01-09 11:52:12 UTC; 11s ago
       Docs: man:mongod(1)
   Main PID: 11782 (mongod)
      Tasks: 23 (limit: 2353)
     Memory: 41.9M
     CGroup: /system.slice/mongodb.service
             ??11782 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf

Jan 09 11:52:12 ubuntu2004 systemd[1]: Started An object/document-oriented database.

En este momento, MongoDB está iniciado y escuchando en el puerto 27017. Puedes verificarlo con el siguiente comando:

ss -antpl | grep 27017

Deberías obtener la siguiente salida:

LISTEN   0        4096                  127.0.0.1:27017          0.0.0.0:*       users:(("mongod",pid=11782,fd=11))      

Una vez que hayas terminado, puedes pasar al siguiente paso.

Accede a la interfaz web de Pritunl

Ahora, abre tu navegador web y accede al asistente de instalación web de Pritunl utilizando la URL https://your-server-ip. Deberías ver la siguiente pantalla:

Instalador de Pritunl

Ahora, abre tu terminal y ejecuta el siguiente comando para generar una clave:

pritunl setup-key

Deberías obtener la siguiente salida:

/usr/lib/pritunl/lib/python2.7/site-packages/OpenSSL/crypto.py:12: CryptographyDeprecationWarning: Python 2 is no longer supported by the Python core team. Support for it is now deprecated in cryptography, and will be removed in the next release.
  from cryptography import x509
08b35282d88d4fce8dc9516cd5d03892

Copia la clave de la salida anterior y luego ve a la interfaz web, pega la clave y haz clic en el botón Guardar. Serás redirigido a la página de inicio de sesión de Pritunl:

Página de inicio de sesión

Ahora, abre tu terminal y ejecuta el siguiente comando para generar una contraseña:

pritunl default-password

Deberías obtener la siguiente salida:

  from cryptography import x509
[undefined][2021-01-09 13:09:17,430][INFO] Getting default administrator password
Administrator default password:
  username: "pritunl"
  password: "27Z4n6yGFZnW"

Copia el nombre de usuario y la contraseña de la salida anterior y luego ve a la interfaz web, escribe tu nombre de usuario, tu contraseña y haz clic en el botón Iniciar sesión. Serás redirigido a la pantalla de configuración inicial:

Configuración de Pritunl

Cambia tu contraseña o usuario si lo deseas y luego haz clic en el botón Guardar. Deberías ver la siguiente página.

Usuarios y organizaciones

Ahora, haz clic en el botón Añadir organización. Deberías ver la siguiente página:

Añadir organización

Proporciona el nombre de tu Organización y haz clic en el botón Añadir. Deberías ver la siguiente página:

Lista de organizaciones

Haz clic en el botón Añadir Usuario. Deberías ver la siguiente página:

Añadir usuario

Proporciona tu nombre de usuario, pin y haz clic en el botón Añadir. Deberías ver la siguiente página:

Usuario añadido con éxito

Ahora, haz clic en la pestaña Servidores. Deberías ver la siguiente página:

Todavía no se han añadido servidores

Haz clic en el botón Añadir Servidor. Deberías ver la siguiente página:

Añadir servidor

Proporciona el nombre de tu servidor, el puerto, la IP del DNS, la red virtual y haz clic en el botón Añadir. Deberías ver la siguiente página:

Detalles del servidor

Haz clic en el botón Adjuntar Organización para adjuntar tu Organización al servidor. Deberías ver la siguiente página:

Adjuntar organización

Haz clic en el botón Adjuntar. Deberías ver la siguiente página:

El servidor está listo

Haz clic en el botón Iniciar servidor para iniciar el servidor VPN. Deberías ver la siguiente página:

Inicio de la VPN

Instalar el cliente Pritunl

En este punto, el servidor Pritunl está instalado y configurado. Ahora tendrás que instalar y configurar el cliente Pritunl de la máquina cliente.

En la máquina cliente, añade la clave Pritunl con el siguiente comando:

apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv E162F504A20CDF15827F718D4B7C549A058F8B6B
apt-key adv --keyserver hkp://keyserver.ubuntu.com --recv 7568D9BB55FF9E5287D586017AE645C0CF8E292A

Una vez añadida la clave, añade el repositorio de Pritunl con el siguiente comando:

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

Una vez añadido el repositorio, actualiza el repositorio e instala el paquete del cliente Pritunl con el siguiente comando:

apt-get update -y
apt-get install pritunl-client-electron -y

Una vez completada la instalación, puedes pasar al siguiente paso.

Conectar el cliente Pritunl al servidor Pritunl

A continuación, tendrás que abrir tu aplicación cliente Pritunl y conectarte al servidor VPN.

Antes de empezar, ve a la interfaz web de Pritunl, haz clic en la pestaña Usuarios y descarga el perfil de usuario en tu máquina cliente:

Conectar el cliente Pritunl al servidor Pritunl

Haz clic en el botón de descarga para descargar el perfil de usuario en la máquina cliente.

Una vez completada la descarga, extrae el archivo tar descargado con el siguiente comando:

tar -xvf user1.tar

Deberías ver el archivo extraído en la siguiente salida:

myorg_user1_server1.ovpn

Ahora, accede a la aplicación cliente Pritunl desde el menú Aplicación, como se muestra a continuación:

Cliente Pritunl

Haz clic en el botón Importar perfil para importar el archivo miorg_usuario1_servidor1.ovpn de tu sistema. Deberías ver la siguiente pantalla:

Perfil de importación

Ahora, haz clic en el botón del cuadrado rojo. Deberías ver la siguiente pantalla:

Listo para conectarse a la VPN

Ahora, haz clic en el botón Conectar para conectarte al servidor VPN. Se te pedirá que proporciones tu pin de usuario como se muestra a continuación:

Conexión VPN

Proporciona tu pin de usuario y haz clic en el botón Aceptar. Una vez conectado, deberías ver la siguiente pantalla:

VPN Conectado con éxito

También puedes verificar la conexión VPN con el siguiente comando:

ifconfig tun0

Deberías ver la siguiente salida:

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:192.168.237.2  P-t-P:192.168.237.2  Mask:255.255.255.0
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:3752 errors:0 dropped:0 overruns:0 frame:0
          TX packets:3847 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          RX bytes:2399700 (2.3 MB)  TX bytes:807236 (807.2 KB)

Ahora, todo el tráfico se dirige a través de tu servidor VPN.

Para verificarlo, abre tu navegador web y accede a la página https://whatismyipaddress.com/. Deberías obtener la IP de tu servidor VPN en la siguiente página:

Obtener la dirección IP

Conclusión

Enhorabuena! has instalado con éxito el servidor y el cliente Pritunl en Ubuntu 20.04. Ahora puedes navegar por Internet de forma anónima ocultando tu identidad. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...