让 openvpn 在 ubuntu 上工作

让 openvpn 在 ubuntu 上工作

我正在尝试通过我拥有的几个 VMS 设置 VPN。我在 ubuntu 10.04 上创建了一个 openvpn 服务器,并尝试使用 12.04 配置客户端。我按照以下说明操作https://help.ubuntu.com/10.04/serverguide/C/openvpn.html,除了对配置文件进行了一些更改。当我openvpn --config client.conf在客户端上运行时,我得到了这个。

Sat Apr 14 15:11:26 2012 OpenVPN 2.2.1 i686-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [eurephia] [MH] [PF_INET6] [IPv6 payload 20110424-2 (2.2RC2)] built on Mar 30 2012
Sat Apr 14 15:11:26 2012 WARNING: No server certificate verification method has been enabled.  See http://openvpn.net/howto.html#mitm for more info.
Sat Apr 14 15:11:26 2012 NOTE: OpenVPN 2.1 requires '--script-security 2' or higher to call user-defined scripts or executables
Sat Apr 14 15:11:26 2012 Cannot load private key file /home/fpayer/keys/cerberus.crt: error:0906D06C:PEM routines:PEM_read_bio:no start line: error:140B0009:SSL routines:SSL_CTX_use_PrivateKey_file:PEM lib
Sat Apr 14 15:11:26 2012 Error: private key password verification failed
Sat Apr 14 15:11:26 2012 Exiting

我已经验证了该文件是否存在,虽然我对 SSL 了解不多,但它看起来不错。在我看来,它似乎在寻找 .pem,但说明中从未提到要生成一个。我还发现很奇怪,我可以通过网络管理器连接,但无法 ping 通服务器,这可能是网络管理器的问题。我应该怎么做才能让客户端正常工作?

这是我的配置文件:

服务器:

port 1194
proto udp
dev tun0

ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/vpn-server.crt
key /etc/openvpn/easy-rsa/keys/vpn-server.key
dh /etc/openvpn/dh1024.pem 

server 10.8.0.1 255.255.255.0
ifconfig-pool-persist openvpn.dhcp

keepalive 10 120
comp-lzo

user nobody
group nogroup

persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log-append  /var/log/openvpn/openvpn.log
verb 4
mute 20

;push "route 192.168.0.0 255.255.255.0"
;push "route 192.168.173.0 255.255.255.0"
;push "redirect-gateway def1"

;client-config-dir ccd
;route 192.168.40.128 255.255.255.248
;client-to-client
; max-clients 10

客户:

client
dev tun0
proto udp
remote 192.168.1.6 1194
resolv-retry infinite
nobind

user nobody
group nogroup

persist-key
persist-tun

ca /home/fpayer/keys/ca.crt
cert /home/fpayer/keys/cerberus.crt
key /home/fpayer/keys/cerberus.crt
tls-auth /home/fpayer/keys/ta.key 1

verb 3

如果您能在配置文件中发现任何问题或者修复密钥验证,我们将不胜感激。

服务器IP:192.168.1.6 客户端IP:192.168.1.7

答案1

好像你的cerberus.crt已损坏。您是如何将文件传输到客户端计算机的?您确定您的密钥正确吗?您是否使用过其他操作系统进行传输,或者您是否编辑过文件,这可能会改变其最初的生成方式?您是否使用了:

./pkitool cerberus

生成密钥?
我已成功连接这些配置:

客户端 11.10(从 10.04 服务器生成的密钥)-> 服务器 12.04(从 10.04 升级,与 10.04 时代的密钥集相同)。
客户端 12.04 -> 服务器 12.04(客户端和服务器密钥均在 10.04 服务器上生成)
你的配置文件和我的配置文件之间唯一的不同是,我没有这一行

tls-auth /home/fpayer/keys/ta.key 1

既不在服务器也不在客户端

相关内容