Я настроил сервер OpenVPN в соответствии с этот гид от DigitalOcean. Но, к сожалению, я не могу заставить его работать.
Похоже, OpenVPN просто не получает сетевые пакеты. Я также попытался подключиться внутренне (где сервер является клиентом, а сервер OpenVPN), и это работает.
Чтобы проверить, получает ли OpenVPN пакеты, я сделал следующее:
Когда я пытаюсь подключиться к OpenVPN, TCPdump показывает запрос:
knarf@harambe:~$ sudo tcpdump -i ens3 port 1194 -n
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ens3, link-type EN10MB (Ethernet), capture size 262144 bytes
18:27:41.944116 IP [home-ip].52173 > [server-ip].1194: UDP, length 54
18:27:43.114364 IP [home-ip].52173 > [server-ip].1194: UDP, length 54
18:27:47.775198 IP [home-ip].52173 > [server-ip].1194: UDP, length 54
Между тем OpenVPS показывает только это: (каждые 10 секунд)
Sun Dec 17 18:27:46 2017 us=75680 event_wait returned 0
Sun Dec 17 18:27:46 2017 us=75728 I/O WAIT status=0x0020
Sun Dec 17 18:27:46 2017 us=75739 MULTI: REAP range 240 -> 256
Sun Dec 17 18:27:46 2017 us=75749 SCHEDULE: schedule_find_least NULL
Sun Dec 17 18:27:46 2017 us=75765 PO_CTL rwflags=0x0001 ev=5 arg=0x56369edf31a0
Sun Dec 17 18:27:46 2017 us=75773 PO_CTL rwflags=0x0001 ev=6 arg=0x56369edf3068
Sun Dec 17 18:27:46 2017 us=75784 I/O WAIT TR|Tw|SR|Sw [10/0]
Через 60 секунд клиент выдает мне следующую ошибку:
TLS handshake failed. TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Подозревая, что брандмауэр настроен неправильно, я также отключил UFW, но это не решает проблему.
В настоящее время я не знаю, что может вызвать эту проблему. У меня следующая конфигурация OpenVPN:
knarf@harambe:/etc/openvpn$ cat /etc/openvpn/server.conf | grep -vE "\#|;|^$"
port 1194
proto udp
dev tun
ca ca.crt
cert server-harambe.crt
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
keepalive 10 120
tls-auth ta.key 0
key-direction 0
auth SHA256
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
и клиент:
knarf@knarf-XPS13:~$ cat ~/vpn/xps-13.ovpn | grep -vE "\#|;|^$"
client
dev tun
proto udp
remote [server-ip] 1194
resolv-retry infinite
nobind
user nobody
group nogroup
persist-key
persist-tun
remote-cert-tls server
comp-lzo
verb 3
cipher AES-128-CBC
auth SHA256
key-direction 1
script-security 2
up /etc/openvpn/update-resolv-conf
down /etc/openvpn/update-resolv-conf
Я надеюсь, что кто-то сможет определить, что не так с текущей настройкой.
В конфигурации вашего сервера отсутствует часть с tls, например:
tls-auth ta.key 0 # This file is secret
key-direction 0