Я пытаюсь получить рабочую настройку OpenVPN на моей виртуальной машине и войти в нее с клиента.
Я не уверен, но мне кажется, что это связано с сокетом, так как он не установлен в LISTEN, а localhost кажется неправильным. Я никогда не настраивал VPN раньше.
# netstat -tulpn | grep vpn
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
udp 0 0 127.0.0.1:1194 0.0.0.0:* 24059/openvpn
Я не думаю, что это настроено правильно.
Вот некоторые детали того, что я сделал. У меня есть VPS от MediaTemple:
Это мои интерфейсы перед запуском openvpn:
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:39482 errors:0 dropped:0 overruns:0 frame:0
TX packets:39482 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:3237452 (3.2 MB) TX bytes:3237452 (3.2 MB)
venet0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:127.0.0.1 P-t-P:127.0.0.1 Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
RX packets:4885284 errors:0 dropped:0 overruns:0 frame:0
TX packets:4679884 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:835278537 (835.2 MB) TX bytes:1989289617 (1.9 GB)
venet0:0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:205.[redacted] P-t-P:205.186.148.82 Bcast:0.0.0.0 Mask:255.255.255.255
UP BROADCAST POINTOPOINT RUNNING NOARP MTU:1500 Metric:1
Я следовал этому руководству по настройке базового сервера и получению файла .p12, однако я получал сообщение об ошибке, в котором говорилось, что /dev/net/tun
отсутствует, поэтому я создал его
mkdir -p /dev/net
mknod /dev/net/tun c 10 200
chmod 600 /dev/net/tun
Это решило ошибку, препятствующую запуску службы, однако я не могу подключиться.
На сервере я настроил файл myserver.conf (согласно учебному пособию) для указания local 127.0.0.1
(я также пытался использовать публичный IP-адрес, возможно, я не понимаю, что они подразумевают под локальным IP?). Сервер запускается без ошибок, вот как выглядит журнал при запуске:
Sun Apr 1 17:21:27 2012 OpenVPN 2.1.3 x86_64-pc-linux-gnu [SSL] [LZO2] [EPOLL] [PKCS11] [MH] [PF_INET6] [eurephia] built on Mar 11 2011
Sun Apr 1 17:21:27 2012 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Sun Apr 1 17:21:27 2012 NOTE: the current --script-security setting may allow this configuration to call user-defined scripts
Sun Apr 1 17:21:27 2012 /usr/bin/openssl-vulnkey -q -b 1024 -m <modulus omitted>
Sun Apr 1 17:21:27 2012 TUN/TAP device tun0 opened
Sun Apr 1 17:21:27 2012 /sbin/ifconfig tun0 10.8.0.1 pointopoint 10.8.0.2 mtu 1500
Sun Apr 1 17:21:27 2012 GID set to openvpn
Sun Apr 1 17:21:27 2012 UID set to openvpn
Sun Apr 1 17:21:27 2012 UDPv4 link local (bound): [AF_INET]127.0.0.1:1194
Sun Apr 1 17:21:27 2012 UDPv4 link remote: [undef]
Sun Apr 1 17:21:27 2012 Initialization Sequence Completed
Это создает интерфейс tun0, который выглядит следующим образом:
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
И команда netstat по-прежнему указывает, что состояние не установлено в LISTEN
.
На стороне клиента я установил сертификаты p12 на два устройства (одно представляет собой планшет Android, другое - рабочий стол Ubuntu). Я не вижу порт 1194 как открытый.
Оба клиента устанавливают файлы сертификата и затем спрашивают меня о секрете L2TP (который был установлен в файле), но затем они странным образом спрашивают у меня имя пользователя и пароль, которые я не знаю, откуда я мог их получить. Я попробовал все свои логины и некоторые дурацкие догадки, которые яростно тянули за соломинку.
Если есть больше информации, которую я мог бы предоставить, дайте мне знать.