Я пытаюсь настроить VPN через несколько VMS, которые у меня есть. Я создал сервер openvpn на Ubuntu 10.04 и пытаюсь настроить клиент с помощью 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, но в инструкциях не сказано, что нужно его генерировать. Мне также кажется странным, что я могу подключиться через сетевой менеджер, но не могу пинговать сервер, возможно, проблема в сетевом менеджере. Что мне сделать, чтобы клиент заработал?
Вот мои файлы конфигурации:
Сервер:
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
Кажется, вашцербер.crtповрежден. Как вы перенесли файлы на клиентскую машину? Вы уверены, что ваши ключи верны? Использовали ли вы какую-либо другую операционную систему для передачи или редактировали файл, что-то, что могло изменить способ его первоначальной генерации? Вы использовали:
./pkitool cerberus
для генерации ключей?
Я успешно подключил эти конфигурации:
Клиент 11.10 (ключи сгенерированы с сервера 10.04) -> сервер 12.04 (обновлен с 10.04, тот же набор ключей, что и в версии 10.04). Клиент 12.04 -> сервер 12.04 (и клиентский, и серверный ключи сгенерированы на сервере 10.04)Единственное отличие между вашими файлами conf и моими — у меня нет этой строки
tls-auth /home/fpayer/keys/ta.key 1
ни на сервере, ни на клиенте