我安装了 OpenVPN:
$ sudo apt-get install openvpn
然后,我使用从公司收到的配置文件运行客户端。
$ sudo openvpn --config myconfig.ovpn
该配置已在同事的机器上得到验证。但有一个例外:我的同事使用的是 Windows 系统,我使用的是 Debian。
错误
Fri Jul 27 11:33:34 2018 OpenVPN 2.4.0 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Jul 18 2017
Fri Jul 27 11:33:34 2018 library versions: OpenSSL 1.0.2l 25 May 2017, LZO 2.08
Fri Jul 27 11:33:34 2018 Error: private key password verification failed
Fri Jul 27 11:33:34 2018 Exiting due to fatal error
先决条件
- Debian Stretch LXDE(最新)
- 未安装服务器环境
- 未安装 Pre-VPN 环境
配置内容
client
dev tun
proto udp
remote example.com 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
tls-version-min 1.2
verify-x509-name server_pZFAVxw3z2VPJhKI name
cipher AES-256-CBC
auth SHA256
compress lz4
verb 3
<ca>
-----BEGIN CERTIFICATE-----
<<base64>>
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
<<base64>>
-----END CERTIFICATE-----
</cert>
<key>
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,C6B57204A2ECC239
<<base64>>
-----END RSA PRIVATE KEY-----
</key>
<tls-crypt>
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
<<base64>>
-----END OpenVPN Static key V1-----
</tls-crypt>
OpenVPN 官方手册推荐了我尝试运行它的方式。所以我不知道问题可能是什么并寻求帮助。
错误的原因可能是什么?
在尝试了另一个 Linux 系统后,我发现使用的私钥密码当然有问题
d;.Jo$HhqA2l7yMd :Wx
。<key></key>
如果有人创建了配置,则应将其中的私钥提取到单独的文件中,然后再进行验证openssl rsa -in client.key -check
。我不知道究竟是什么导致密码失败。我尝试了几种使用随机密码的新配置,并且 a
$
和空格都没有再次导致失败。
有趣的是,在 Windows 系统上,密码被接受了。
我今天在这里面临同样的问题。
我当前的操作系统是Fedora 36(测试版),并且正在使用来自 dnf 包管理器的openvpn 版本 2.5.6 。
当我尝试执行与您相同的命令时出现问题
$ sudo openvpn --config myconfig.ovpn
我发现的原因是因为我注意到在我的另一台笔记本电脑中,我使用的是旧版本的 openvpn (2.4.9),它依赖于openssl version 1,而不是最新版本中使用的openssl version 2 。
所以我对此的解决方案是降级你的openvpn版本(不推荐,但如果你想解决问题)。