Configurar OpenVPN con clientes Linux y Windows

Resumen

Durante la pandemia, habilitar accesos remotos seguros se volvió una urgencia para muchas empresas. Una VPN (red privada virtual) resuelve ese reto al cifrar el tráfico entre dispositivos, ocultar el direccionamiento IP y crear túneles privados sobre redes públicas como Internet. Aquí verás cómo funcionan, qué tipos existen y cómo montar un servidor OpenVPN con clientes en Linux y Windows.

¿Qué es una VPN y dónde se ubica en el modelo OSI?

Una VPN es una conexión cifrada que viaja por redes públicas y entrega privacidad, anonimato y seguridad a quien la usa. En el modelo OSI vive en el nivel 3 (red) [01:00], y suele aparecer en variantes IPSec con cliente o SSL VPN accesible vía web.

Su lógica es simple: cifra los datos en el origen, los envía por un túnel y los descifra en el destino. Ni el ISP ni un tercero curioso pueden leer el contenido en tránsito.

¿Qué hace exactamente una VPN? Crea un túnel cifrado entre dos extremos para que el tráfico viaje protegido por Internet, ocultando IPs y contenido a cualquiera que no esté autorizado.

¿Cómo cifra la información una VPN?

El estándar más usado es AES, un algoritmo de cifrado simétrico aprobado por gobiernos y especialistas en ciberseguridad [02:20]. AES divide la información en bloques y les aplica transposición, sustitución y mezcla de datos, repitiendo el proceso hasta 14 series en el caso de AES 256.

Las claves pueden llegar hasta 4.096 bits, aunque la recomendación práctica es usar de 2.048 bits en adelante. ¿Por qué no siempre el máximo? Porque más tamaño de clave significa más seguridad, pero también más procesamiento y latencia. Es un equilibrio.

¿Qué protocolos de VPN existen y cuáles evitar?

No todos los protocolos envejecieron bien. Algunos siguen vigentes, otros ya tienen vulnerabilidades conocidas:

  • PPTP: considerado obsoleto por sus fallas de seguridad.
  • L2TP: se combina con IPSec para reforzarlo.
  • SSTP e IKEv2: usan protocolos como Mutual PSK, Mutual RSA y Xauth.
  • OpenVPN: autentica con certificados, credenciales de usuario y más.

Elegir el protocolo correcto define qué tan robusta será tu conexión.

¿Cuál es la diferencia entre VPN site to site y site to client?

Las dos cifran tráfico, pero conectan cosas distintas. Saber cuál usar depende de qué quieres unir.

En una VPN site to site, el túnel se establece entre dos equipos de red, como un router o un firewall. El tráfico viaja cifrado entre sedes y se entrega ya descifrado dentro de cada red local. Muchos firewalls traen esta capacidad incluida en su licencia, lo que facilita conectar varias oficinas de forma ágil.

En una VPN site to client, un servidor o dispositivo VPN entrega credenciales de acceso a un equipo terminal: portátil, PC de escritorio o móvil. El túnel cifrado se forma entre ese terminal y la red del servidor.

¿Cuándo uso site to site y cuándo site to client? Site to site conecta sedes entre sí. Site to client conecta usuarios individuales con una sede.

¿Cómo configurar un servidor OpenVPN con clientes Linux y Windows?

Para la práctica se monta un servidor con un docker de OpenVPN [05:30] y se prueba la conexión desde una máquina Ubuntu y un equipo Windows. El proceso tiene tres etapas: generar credenciales, transferir el archivo de configuración y levantar el túnel.

¿Cómo generar el certificado y el archivo de configuración?

Desde el servidor se ejecuta un comando de docker que crea el usuario, en este ejemplo llamado Miguel, con su contraseña. Luego se compila un archivo miguelconfig.ovpn que contiene la configuración necesaria para cualquier terminal.

Ese archivo .ovpn es la llave: lo cargas en el cliente y conecta directo al servidor sin pasos adicionales.

¿Cómo enviar el archivo de configuración al cliente Linux?

La transferencia se hace por un canal seguro con SCP sobre SSH:

bash scp miguelconfig.ovpn prueba@192.168.120.128:/home/prueba

Una vez en la máquina Linux, instalas el cliente con apt-get install openvpn y levantas el túnel apuntando al archivo. El servidor responde, se establece el cifrado y comienza a fluir tráfico OpenVPN.

Para verificar que el tráfico realmente viaja cifrado, se usa Wireshark, un sniffer que captura los paquetes en la red [09:40] y muestra que el contenido aparece como tráfico OpenVPN, TLS y SSH ilegible para terceros.

¿Cómo conectar el cliente OpenVPN en Windows?

Desde la página oficial de OpenVPN se descarga el endpoint para Windows y se instala. Luego, con una herramienta como WinSCP, se descarga el archivo miguelconfig.ovpn desde el servidor Linux ingresando la IP, usuario y contraseña.

Al abrir el endpoint, le das doble clic al archivo descargado, presionas conectar y la sesión queda activa. La aplicación incluso muestra estadísticas de conexión y permite encender o apagar el túnel a voluntad.

¿Qué buenas prácticas debes aplicar al usar VPN y accesos remotos?

Montar la VPN es solo el inicio. Para que el canal seguro siga siéndolo, refuerza tus accesos remotos con varias capas:

  • Usa RDP únicamente después de levantar la VPN, nunca expuesto directo a Internet.
  • Cambia el puerto por defecto del RDP, que es el 3389, porque es objetivo frecuente de atacantes.
  • Habilita inicio de sesión único o contraseñas robustas.
  • Activa doble factor de autenticación siempre que sea posible.
  • Usa certificados para conexiones remotas críticas.

Estas medidas reducen drásticamente la superficie de ataque, incluso cuando un protocolo tiene vulnerabilidades conocidas.

Cuéntanos si tuviste que habilitar accesos remotos en tu empresa durante la pandemia y si todavía mantienes esos ambientes activos.