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:
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:
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:
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.
Ahora, haz clic en el botón Añadir organización. Deberías ver la siguiente página:
Proporciona el nombre de tu Organización y haz clic en el botón Añadir. Deberías ver la siguiente página:
Haz clic en el botón Añadir Usuario. Deberías ver la siguiente página:
Proporciona tu nombre de usuario, pin y haz clic en el botón Añadir. Deberías ver la siguiente página:
Ahora, haz clic en la pestaña Servidores. Deberías ver la siguiente página:
Haz clic en el botón Añadir Servidor. Deberías ver la siguiente página:
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:
Haz clic en el botón Adjuntar Organización para adjuntar tu Organización al servidor. Deberías ver la siguiente página:
Haz clic en el botón Adjuntar. Deberías ver la siguiente página:
Haz clic en el botón Iniciar servidor para iniciar el servidor VPN. Deberías ver la siguiente página:
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:
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:
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:
Ahora, haz clic en el botón del cuadrado rojo. Deberías ver la siguiente pantalla:
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:
Proporciona tu pin de usuario y haz clic en el botón Aceptar. Una vez conectado, deberías ver la siguiente pantalla:
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:
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.