Siguiendo con la serie de entradas sobre Proxmox, Proxmox – Configurar internet una sola interfaz de red y Script para hacer NAT en Debian, continuaremos configurando nuestro Proxmox, añadiendo una VPN site to site a las VM que cuelgan del servidor.
Por qué una VPN site to site
Partiendo de que tenemos el servidor Debian sobre el que corre Proxmox, no vamos a instalar sobre él una página web, sino que instalaríamos una VM y sobre ella la web, otra VM con base de datos, un servidor Windows con remote app, controlador de dominio secundario, etc…
Estas VM, nos interesa exponerlas al exterior lo mínimo posible, no abriendo puertos SSH a internet, no abriendo puerto RDP en windows para administración, compartir carpetas …. Con una VPN nos aseguramos que accedemos desde la red interna, añadiendo una capa de seguridad.
Estas pueden ser algunas de las razones. Puede haber más.
Por qué OpenVPN AS Server
En primer lugar, OpenVPN es una VPN segura, fiable y bastante extendida, por lo que hay mucha documentación.
Al estar tan extendida, muchos routers ya nos permiten configurar como cliente o servidor la VPN de OpenVPN y por tanto no necesitamos de más hardware y nos permite con una sola conexión conectar todos los dispositivos de la red del router.
Access Server (AS) es gratuito para dos conexiones, es decir, podemos conectar al servidor dos clientes y si son routers, puedes unir dos sedes.
Primer paso
El primer paso es ir a la web de openvpn y crearse una cuenta. https://openvpn.net/download-open-vpn/ Te registras y ya tienes tu licencia de uso de dos conexiones.
Para instalar, clicamos en Get Access Server, y vemos una pantalla con las diferentes instalaciones disponibles.
Para nuestro caso sería Debian. Nos mostrará qué comandos ejecutar.
Instalación
Abrimos la consola como root y ejecutamos los siguientes comandos.
apt update && apt -y install ca-certificates wget net-tools gnupg
wget https://as-repository.openvpn.net/as-repo-public.asc -qO /etc/apt/trusted.gpg.d/as-repository.asc
echo "deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/as-repository.asc] http://as-repository.openvpn.net/as/debian bullseye main">/etc/apt/sources.list.d/openvpn-as-repo.list
apt update && apt -y install openvpn-as
Tras finalizar, muestra un mensaje con la URL donde podemos acceder a la configuración y la contraseña del usuario administrador.
https://ip:943/admin — Para la zona de administración
https://ip:943/ — Para el cliente
Instalación sencilla, fácil y sin complicaciones.
Configuración AS Server
Accedemos como administrador, y lo primero es activarlo. Desde el portal de Openvpn copiamos la clave y nos vamos a nuestro recién instalado servidor.
Lo segundo que realiceramos es ir a Network Settings y modificar el puerto de Multi-Daemon Mode, porque por defecto tiene el 443 y si tienes una VM con una web, no podrías usar este puerto. Pon otro cualquiera.
Should VPN clients have access to private subnets (non-public networks on the server side)? en Yes, Using Routing
En «Specify the private subnets to which all clients should be given access (one per line):» introducimos la IP de la red interna de las VM.
Yo desactivo el Should client Internet traffic be routed through the VPN? porque sino todo el internet del cliente se redirige por el servidor. Esto puede ser una buena opción si quieres usar como salida a internet la IP de tu servidor.
Toca la configuración de un usuario para el cliente de la VPN. Para eso vamos a User Management>User Permissions Añadimos el nombre de usuario, marcamos la opción de Allow Auto-Login y clicar en el lápiz de más configuración.
Introducir una contraseña, User authentication method en local y VPN Gateway en yes y en el recuadro introducir el rango de IP dentro de tu red del router.
Como siempre, save settings y apply changes.
Configuración router ASUS
Lo primero es acceder al servidor VPN en la URL https://ip:943 y acceder con el usuario y contraseña creado en el anterior paso.
Clicar el Yourself – Autologin. Ahí descargamos el fichero de configuración .ovpn. Llegados aquí, es hora de abrir el router e irnos a VPN, cliente.
Seleccionar OpenVPN
Ponemos una descripción, nuestro usuario y contraseña. Importamos el archivo y aceptamos. Luego se habilita y ya deberíamos tener la VPN funcionando.
Y con esto tenemos la configuración. Espero sea de ayuda.