OpenVPN -cipher vs -tls-cipher?

7

Actualmente estoy usando el comando -tls-cipher en el servidor para permitir solo el cifrado que quiero ( TLS-DHE-RSA-WITH-AES-256-GCM-SHA384 ) pero también está el comando -cipher , y la página de manual de OpenVPN no está realmente clara con las diferencias entre ellos . Google también no devolvió información útil. Muchas sitios web también me dicen que debería usar los dos también, pero no diga por qué, primero quería consultar aquí.

¿Debo usar -tls-cipher + -cipher para asegurarme de que solo uso AES-256-GCM para cifrar la conexión?

Estoy en OpenVPN 2.3.

    
pregunta Freedo 29.06.2015 - 08:20
fuente

1 respuesta

12

OpenVPN 'moderno' (2.x, usando el modo TLS) básicamente establece dos conexiones:

  1. El 'canal de control'. Este es un canal de ancho de banda bajo, sobre el cual, por ejemplo, Se intercambian parámetros de red y material clave para el 'canal de datos'. OpenVPN usa TLS para proteger los paquetes del canal de control.

  2. El 'canal de datos'. Este es el canal a través del cual se envía el tráfico VPN real. Este canal está codificado con el material clave intercambiado a través del canal de control.

Ambos canales están duplicados en un solo puerto TCP o UDP.

--tls-cipher controla el cifrado utilizado por el canal de control. --cipher junto con --auth controlan la protección del canal de datos.

Y con respecto a la seguridad, OpenVPN usa encrypt-then-mac para su canal de datos, en lugar de mac-then-encrypt como TLS. Todos los problemas relacionados con CBC que escuchas se deben a la combinación mac-then-encrypt + CBC. Esto significa que AES-CBC para el canal de datos está perfectamente bien desde una perspectiva de seguridad.

(Y todavía no hay soporte GCM para el canal de datos. Eso llegará a OpenVPN 2.4)

    
respondido por el Steffan Karger 30.06.2015 - 22:05
fuente

Lea otras preguntas en las etiquetas