Un protocolo VPN es el conjunto de instrucciones que tu aplicación de VPN utiliza para configurar, proteger y gestionar tu conexión a un servidor VPN. OpenVPN es un protocolo VPN que no tiene debilidades conocidas y es eficaz para eludir ciertos métodos de censura online. OpenVPN también tiene la ventaja de ser compatible con una enorme variedad de plataformas y dispositivos.

Existen implementaciones de código cerrado de OpenVPN, pero también hay una Community Edition gratuita y de código abierto.

En este artículo, analizamos en profundidad cómo funciona OpenVPN, cómo mantiene segura a la comunidad de Proton VPN y cómo se compara con otros protocolos VPN. Este artículo te resultará más útil si ya entiendes cómo funciona una VPN.

Más información sobre cómo funciona una VPN

Lanzado inicialmente en 2001, OpenVPN empieza a acusar el paso del tiempo en términos de velocidad, rendimiento y eficiencia. Sin embargo, se sigue considerando ampliamente seguro, una percepción que se vio reforzada por los documentos publicados en 2013 por el filtrador de la NSA Edward Snowden.

Obtén Proton VPN

Estos indicaban claramente que, siempre y cuando no utilices claves precompartidas(ventana nueva), OpenVPN era el único protocolo VPN de uso común en ese momento que la NSA no podía descifrar. WireGuard®, un protocolo VPN más reciente y seguro, aún no se había desarrollado en 2013. Aunque WireGuard es más rápido, ligero y eficiente, no puede igualar la trayectoria contrastada de OpenVPN.

Ventajas de OpenVPN:

  • Código abierto
  • Seguridad contrastada
  • Puede funcionar sobre UDP o TCP
  • Ampliamente compatible

Desventajas de OpenVPN:

  • Actualmente, su rendimiento no se puede comparar con el de WireGuard (aunque se está trabajando para mejorarlo)
  • Base de código relativamente grande y compleja

Proton VPN es compatible con OpenVPN en todas nuestras aplicaciones:

  • Windows 
  • macOS
  • Android
  • Android TV (a través de Smart Protocol)
  • iOS e iPadOS
  • Aplicación de Linux y CLI
  • Chrome OS

¿Cómo me mantiene seguro OpenVPN?

OpenVPN utiliza varias tecnologías criptográficas para mantener seguros tus datos y no tiene vulnerabilidades conocidas. Las tecnologías utilizadas por la mayoría de las implementaciones modernas de OpenVPN (incluidas las de Proton VPN) son:

AES

Advanced Encryption Standard (AES) es un cifrado de clave simétrica que se utiliza para cifrar y descifrar los datos transmitidos a través de tu conexión VPN.

Está certificado por el National Institute of Standards and Technology(ventana nueva) (NIST) y el gobierno de los Estados Unidos lo utiliza para proteger datos clasificados. AES tiene un tamaño máximo de clave de 256 bits (AES-256), y el gobierno estadounidense considera que AES-256 es suficiente para proteger información “altamente secreta”(ventana nueva).

Cuando se utiliza como parte de la suite de cifrado de OpenVPN, AES se puede usar en los modos AES-CBC (Cipher Block Chaining) o AES-GCM (Galois/Counter Mode). Para entender cómo funciona Proton VPN, solo necesitas conocer el modo AES-GCM

Aunque es igualmente seguro, el más moderno AES-GCM es un cifrado autenticado con datos asociados(ventana nueva) (AEAD) que puede autenticar datos además de protegerlos. HMAC SHA (ver más abajo) sigue siendo necesario para autenticar la conexión TLS, pero AES-GCM es más eficiente (y, por lo tanto, más rápido) a la hora de autenticar datos que SHA.

Más información sobre el cifrado AES

RSA

OpenVPN se basa en AES para proteger tus datos, pero para enviarlos a través de la conexión VPN, aplica criptografía de clave pública(ventana nueva). Este sistema criptográfico utiliza un intercambio de claves asimétricas, donde tus datos se cifran utilizando la clave pública compartida abiertamente del destinatario. Estos datos solo los puede descifrar la clave privada secreta del destinatario, .

El cifrado de clave asimétrica es eficaz para enviar datos de forma secreta a través de internet, pero es lento en comparación con los sistemas de cifrado simétrico como AES. Por eso se utiliza principalmente en las VPN para autenticar las conexiones entre el cliente VPN y el servidor VPN. OpenVPN utiliza el criptosistema RSA(ventana nueva) para ello.

La longitud de las claves RSA puede ser de casi cualquier tamaño, pero una clave de 4096 bits es lo suficientemente segura sin generar una alta sobrecarga computacional que resulte inútil y ralentice tu conexión.

DHE

Un intercambio de claves Diffie-Hellman(ventana nueva) (DHE) se puede utilizar para proteger el intercambio de claves TLS de forma similar a RSA, con la ventaja añadida de que también proporciona secreto perfecto hacia adelante(ventana nueva). El secreto perfecto hacia adelante garantiza que se utilicen nuevas claves para cada sesión, de modo que incluso si una sesión se ve comprometida de alguna manera, ninguna otra se verá afectada. El secreto perfecto hacia adelante garantiza que los atacantes no puedan descifrar sesiones de VPN históricas con una sola clave comprometida.

Sin embargo, debido a que DHE reutiliza un conjunto limitado de números primos, puede ser vulnerable a ataques Logjam(ventana nueva). Este problema es mucho menos preocupante si se utilizan tamaños de clave lo suficientemente grandes, pero su uso para proteger los intercambios de claves TLS sigue siendo controvertido.

Por este motivo, Proton VPN utiliza la compatibilidad con DHE en la suite de cifrado de OpenVPN para proporcionar secreto perfecto hacia adelante, pero no para asegurar el intercambio de claves en sí.

HMAC SHA

OpenVPN utiliza HMAC SHA para validar los certificados TLS utilizados en el intercambio de claves TLS. Esto protege contra los ataques de intermediario (man-in-the-middle).

La familia SHA(ventana nueva) de funciones hash criptográficas(ventana nueva) se utiliza para autenticar datos. Cuando estas complejas funciones matemáticas se realizan sobre un conjunto de datos, se crea una huella digital única. Si cambia solo un bit de esos datos, la huella digital SHA también cambia.

Se sabe que SHA-1 (una función hash de 160 bits) es vulnerable a ataques de colisión(ventana nueva), pero SHA-2 se sigue considerando seguro. Lo que es aún más importante, OpenVPN solo utiliza SHA para calcular los valores del código de autenticación de mensajes en clave-hash(ventana nueva) (HMAC). Estos son mucho más difíciles de atacar que el algoritmo SHA por sí solo, hasta el punto de que incluso SHA-1 se sigue considerando lo suficientemente seguro para HMAC(ventana nueva).

Canales de Open VPN

OpenVPN utiliza dos canales independientes para transferir datos de forma segura entre tu dispositivo y el servidor VPN.

Resumen de cómo funciona OpenVPN

El canal de datos

Antes de enviar tus datos a través del túnel VPN, OpenVPN los cifra con un cifrado de clave simétrica.

Proton VPN utiliza hasta AES-256 en modo GCM para verificar los datos.

El canal de control

Una vez cifrados los datos, se pueden enviar a través del túnel VPN. El canal de control establece una conexión TLS entre el cliente VPN y el servidor VPN. Esto se protege utilizando un cifrado de clave simétrica pero con un intercambio de claves asimétricas.

Proton VPN utiliza hasta AES-256-GCM para su cifrado simétrico, con autenticación hash RSA-4096 y HMAC SHA-384 para verificar los certificados TLS. El conjunto de cifrado que utilizamos también incluye un acuerdo de claves Diffie-Hellman (DHE) para proporcionar secreto de reenvío.

¿Puede OpenVPN eludir la censura de las VPN?

Una de las grandes ventajas de OpenVPN es que puede funcionar tanto sobre los protocolos de transmisión UDP como TCP, que son los dos protocolos principales que gestionan cómo se envían los datos a través de internet. UDP es más rápido, mientras que TCP es más confiable, pero la principal ventaja de esta flexibilidad es que TCP es útil para eludir la censura de gobiernos y otras organizaciones.

Obtén más información sobre la diferencia entre UDP y TCP

El puerto TCP 443 lo utiliza HTTPS(ventana nueva), el estándar de cifrado que protege la web. Esto hace que sea difícil bloquear OpenVPN cuando se ejecuta sobre el puerto TCP 443 sin bloquear todo el tráfico HTTPS, lo que hace que OpenVPN sea útil para eludir bloqueos de VPN de bajo nivel.

Sin embargo, las formas más avanzadas de inspección profunda de paquetes pueden detectar fácilmente la diferencia entre los paquetes HTTPS y VPN.

Más información sobre la inspección profunda de paquetes

¿Se ha auditado OpenVPN?

Tras una campaña de financiación colectiva, OpenVPN 2.4 fue auditado de forma independiente(ventana nueva) por OSTIF y QuarksLab en 2016. Los resultados fueron muy positivos, y la única vulnerabilidad crítica o alta detectada estaba relacionada con la susceptibilidad a una denegación de servicio y no afectaba a la seguridad de los usuarios. Este problema también se solucionó rápidamente.

Sin embargo, 2016 ya queda bastante atrás, y OpenVPN 2.6.1 es la última versión en el momento de escribir este artículo.

OpenVPN frente a WireGuard

El protocolo WireGuard, más reciente, es seguro, rápido y eficiente, razón por la cual Proton VPN lo utiliza ahora como nuestro protocolo VPN por defecto. La capacidad de OpenVPN para ejecutarse sobre TCP sigue siendo una ventaja sobre el WireGuard original, pero Proton VPN ha desarrollado ahora una implementación de WireGuard que también funciona sobre TCP.

Más información sobre WireGuard

WireGuard también constituye la base de nuestro protocolo de ofuscación Stealth, que es mucho más eficaz a la hora de eludir los bloqueos de censura que ejecutar OpenVPN sobre TCP.

Más información sobre Stealth

El hecho de que la seguridad de OpenVPN esté más que probada en comparación con la de WireGuard puede seguir resultando atractivo para algunos, pero hay pocas razones para elegirlo en lugar de WireGuard, a menos que tu dispositivo actual no sea compatible con WireGuard.

Reflexiones finales

Durante muchos años, OpenVPN fue prácticamente el protocolo VPN por defecto y, por ello, sigue siendo muy compatible con enrutadores y otros dispositivos con conexión a internet. Sigue siendo muy seguro, pero ofrece pocas ventajas frente al más moderno WireGuard (especialmente las implementaciones personalizadas de Proton VPN del protocolo más reciente).