OpenVPN 无法与任何 TLS 1.2 密码建立连接

OpenVPN 无法与任何 TLS 1.2 密码建立连接

OpenVPN 无法与任何 TLS 1.2 密码建立连接。

TLS-DHE-RSA-WITH-AES-256-GCM-SHA384
TLS-DHE-RSA-WITH-AES-256-CBC-SHA256
TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
TLS-DHE-RSA-WITH-AES-128-CBC-SHA256

我想知道是否有其他人能够让它工作。(如果可以的话,哪个密码套件)

是的,我使用当前版本2.3.6,从源代码编译。已尝试使用各种 Linux 发行版和 Windows 客户端。

正如下面链接所述,密码应该与 openvpn 一起使用。 https://community.openvpn.net/openvpn/wiki/Hardening#Useof--tls-cipher

这是我在客户端看到的错误:

[... Desktop]$ sudo openvpn home.ovpn 
Sat Jan 24 15:18:28 2015 OpenVPN 2.3.6 x86_64-unknown-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [MH] [IPv6] built on Jan 24 2015
Sat Jan 24 15:18:28 2015 library versions: OpenSSL 1.0.1l 15 Jan 2015, LZO 2.08
Sat Jan 24 15:18:28 2015 WARNING: file 'home/client1.key' is group or others accessible
Sat Jan 24 15:18:28 2015 WARNING: file 'home/ta.key' is group or others accessible
Sat Jan 24 15:18:28 2015 Control Channel Authentication: using 'home/ta.key' as a OpenVPN static key file
Sat Jan 24 15:18:28 2015 Outgoing Control Channel Authentication: Using 256 bit message hash 'SHA256' for HMAC authentication
Sat Jan 24 15:18:28 2015 Incoming Control Channel Authentication: Using 256 bit message hash 'SHA256' for HMAC authentication
Sat Jan 24 15:18:28 2015 Attempting to establish TCP connection with [AF_INET]192.168.1.67:1194 [nonblock]
Sat Jan 24 15:18:29 2015 TCP connection established with [AF_INET]192.168.1.67:1194
Sat Jan 24 15:18:29 2015 TCPv4_CLIENT link local: [undef]
Sat Jan 24 15:18:29 2015 TCPv4_CLIENT link remote: [AF_INET]192.168.1.67:1194
Sat Jan 24 15:18:29 2015 TLS_ERROR: BIO read tls_read_plaintext error: error:140830B5:SSL routines:SSL3_CLIENT_HELLO:no ciphers available
Sat Jan 24 15:18:29 2015 TLS Error: TLS object -> incoming plaintext read error
Sat Jan 24 15:18:29 2015 TLS Error: TLS handshake failed
Sat Jan 24 15:18:29 2015 Fatal TLS error (check_tls_errors_co), restarting
Sat Jan 24 15:18:29 2015 SIGUSR1[soft,tls-error] received, process restarting
Sat Jan 24 15:18:30 2015 SIGINT[hard,init_instance] received, process exiting

同样的问题之前出现过一次: https://security.stackexchange.com/questions/73448/tls-authentication-on-openvpn-server


部分解决方案:

tls-version-min 1.2

通过将此行添加到客户端和服务器配置中,您可以使 128 位密码套件正常工作。256 位变体仍然无法成功。

答案1

TLS-DHE-RSA-WITH-AES-128-GCM-SHA256工作得很好(在 Arch Linux 上从源代码编译的 2.3.6 上)。

但是,OpenVPN 似乎需要tls-version-min 1.2在服务器配置和客户端配置中进行设置。一旦我将其删除,就会出现完全相同的错误。

答案2

在服务器的日志中我只能看到启用的密码:

cipher_list = 'TLS-DHE-RSA-WITH-AES-256-CBC-SHA256'

也许应该编辑服务器配置以添加补充的预期密码列表。

相关内容