3

Это, вероятно, будет довольно длинный пост, потому что я хочу убедиться, что я ничего не забуду. Вероятно, это очень тривиальная проблема, но я не могу понять, что не так с моей настройкой.

сценарий

Недавно я настроил VPN-сервер под управлением OpenVPN, в настоящее время работающий внутри виртуальной машины в ESXi. Я основал установку на этом руководстве, и все, кажется, работает нормально: я могу подключиться к своему VPN-серверу (через переадресацию портов на маршрутизаторе) и войти в систему с проверкой подлинности сертификата.

Что не работает

Я не могу получить доступ к машинам в моей локальной сети (192.168.0.0), когда я подключен через VPN.

На данный момент, после успешного подключения через VPN к моей домашней сети, все машины в моей локальной сети не доступны (я даже не могу пинговать их).

Сетевая информация

Конфигурация сети очень проста:

  • Моя локальная сеть: 192.168.0.0
  • Мой OpenVPN IP: 192.168.0.140
  • Мой шлюз: 192.168.0.1
  • Моя сеть VPN: 10.8.0.0
  • Мой OpenVPN VPN IP: 10.8.0.1
  • Маршрутизатор настроил переадресацию портов на порт 1194

Что я пробовал до сих пор (высокий уровень)

Я использовал три ресурса, чтобы попытаться исправить эту проблему:

  1. Руководство по маршрутизации OpenVPN, в частности, раздел Использование маршрутизации и OpenVPN не работает на шлюзе по умолчанию
  2. Эта короткая статья о том, как настроить маршрутизацию с OpenVPN для подключения к хостам в моей локальной сети
  3. Другая статья о том, как настроить ESXi для этой работы, потому что, по-видимому, в конфигурации по умолчанию ESXi может вызвать некоторые проблемы, заставляющие это работать
  4. Включена переадресация IP на VPN-сервере
  5. Включил весь трафик для прохождения через брандмауэр OpenVPN

Что я пробовал до сих пор (подробно)

Это OpenVPN server.conf:

local 192.168.0.140
topology subnet
dev tun
proto udp
port 1194

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

server 10.8.0.0 255.255.255.0
# server and remote endpoints
ifconfig 10.8.0.1 10.8.0.2

# Add route to Client routing table for the OpenVPN Server
push "route 10.8.0.1 255.255.255.255"
# Add route to Client routing table for the OpenVPN Subnet
push "route 10.8.0.0 255.255.255.0"
# your local subnet
push "route 192.168.0.0 255.255.255.0"
# Set primary domain name server address to the SOHO Router
# If your router does not do DNS, you can use Google DNS 8.8.8.8
push "dhcp-option DNS 192.168.0.254"
# Override the Client default gateway by using 0.0.0.0/1 and
# 128.0.0.0/1 rather than 0.0.0.0/0. This has the benefit of
# overriding but not wiping out the original default gateway.
push "redirect-gateway def1"

client-to-client
duplicate-cn
keepalive 10 120
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0
cipher AES-128-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log 20
log /var/log/openvpn.log
verb 1

Пример client.ovpn:

client
dev tun
proto udp
remote <my_router_ip> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
mute-replay-warnings
ns-cert-type server
key-direction 1
cipher AES-128-CBC
comp-lzo
verb 1
mute 20

Поскольку мой текущий маршрутизатор не поддерживает статические маршруты, к сожалению, я не могу настроить маршрутизацию раз и навсегда, но я делаю это на каждом устройстве, к которому я хочу получить доступ, пока я подключен через VPN. Так, например, на моем сервере Plex (192.168.0.110) я сделал это:

route add -net 10.8.0.0/24 gw 192.168.0.140

Чтобы моя машина OpenVPN (192.168.0.140) могла соединять машины в сети VPN (10.8.0.0) с машинами в локальной сети (192.168.0.0).

Я также позаботился о том, чтобы на сервере OpenVPN была включена IP-пересылка, но раскомментировал следующую строку из /etc/sysctl.conf:

net.ipv4.ip_forward=1

Наконец, я добавил следующие правила iptables чтобы весь трафик из сети VPN достигал локальной сети:

# Allow traffic initiated from VPN to access LAN
iptables -I FORWARD -i tun0 -o eth0 -s 10.8.0.0/24 -m conntrack --ctstate NEW -j ACCEPT

# Allow established traffic to pass back and forth
iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

Наконец, я настроил виртуальный коммутатор vSwitch на ESXi, чтобы он не отбрасывал случайные пакеты, поскольку в статье, приведенной выше, говорится, что в конфигурации по умолчанию он отбрасывает эти пакеты, и это может вызвать проблемы при использовании OpenVPN при попытке получить доступ к компьютерам на локальном компьютере. сеть.

Если я не пропустил что-то, это должно быть действительно все, что нужно сделать. К сожалению, после успешного подключения к VPN я все еще не могу пропинговать машины в сети 192.168.0.0 .

Опять же, это, вероятно, что-то довольно тривиальное, но я все равно хочу предложить некоторую награду за правильный ответ, потому что одной из причин, по которой я сначала настроил VPN, была возможность доступа к другим моим машинам без необходимости переслать больше портов на маршрутизаторе.

Информация о клиентских машинах

Это полный вывод ipconfig машины, которую я использую для подключения (чтобы "подделать" подключение из удаленной сети, я подключаю 3G-соединение моего телефона и подключаюсь через Wi-Fi из Windows):

C:\Windows\System32>ipconfig

Windows IP Configuration


Ethernet adapter Local Area Connection:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::2c0e:13f0:840c:37b4%15
   IPv4 Address. . . . . . . . . . . : 10.8.0.10
   Subnet Mask . . . . . . . . . . . : 255.255.255.252
   Default Gateway . . . . . . . . . :

Wireless LAN adapter Local Area Connection* 2:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Wireless LAN adapter Wi-Fi:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::a5e8:546c:e046:a246%4
   IPv4 Address. . . . . . . . . . . : 192.168.43.220
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.43.1

Ethernet adapter Ethernet:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Ethernet adapter VirtualBox Host-Only Network:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::1d14:52cd:fd6a:2395%10
   IPv4 Address. . . . . . . . . . . : 192.168.56.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :

Tunnel adapter isatap.{75888664-BED0-4908-8984-4DBCF9E9BDDC}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Tunnel adapter isatap.{6F952140-AFCD-46E4-89E3-02CDEF869C50}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Tunnel adapter isatap.{1F6CE10F-8498-4A7B-B647-FAE7422FF030}:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Вывод route print:

C:\Windows\System32>route print
===========================================================================
Interface List
 15...00 ff 1f 6c e1 0f ......TAP-Windows Adapter V9
  7...12 56 f2 a5 d0 53 ......Microsoft Wi-Fi Direct Virtual Adapter
  4...80 56 f2 a5 d0 53 ......Killer Wireless-N 1202 Network Adapter
  3...80 fa 5b 00 d7 1f ......Realtek PCIe GBE Family Controller
 10...08 00 27 00 68 59 ......VirtualBox Host-Only Ethernet Adapter
  1...........................Software Loopback Interface 1
  8...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #2
  9...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #3
 11...00 00 00 00 00 00 00 e0 Microsoft ISATAP Adapter #4
===========================================================================

IPv4 Route Table
===========================================================================
Active Routes:
Network Destination        Netmask          Gateway       Interface  Metric
          0.0.0.0          0.0.0.0     192.168.43.1   192.168.43.220     25
         10.8.0.4  255.255.255.252         On-link          10.8.0.6    276
         10.8.0.6  255.255.255.255         On-link          10.8.0.6    276
         10.8.0.7  255.255.255.255         On-link          10.8.0.6    276
        127.0.0.0        255.0.0.0         On-link         127.0.0.1    306
        127.0.0.1  255.255.255.255         On-link         127.0.0.1    306
  127.255.255.255  255.255.255.255         On-link         127.0.0.1    306
     192.168.43.0    255.255.255.0         On-link    192.168.43.220    281
   192.168.43.220  255.255.255.255         On-link    192.168.43.220    281
   192.168.43.255  255.255.255.255         On-link    192.168.43.220    281
     192.168.56.0    255.255.255.0         On-link      192.168.56.1    276
     192.168.56.1  255.255.255.255         On-link      192.168.56.1    276
   192.168.56.255  255.255.255.255         On-link      192.168.56.1    276
        224.0.0.0        240.0.0.0         On-link         127.0.0.1    306
        224.0.0.0        240.0.0.0         On-link      192.168.56.1    276
        224.0.0.0        240.0.0.0         On-link          10.8.0.6    276
        224.0.0.0        240.0.0.0         On-link    192.168.43.220    281
  255.255.255.255  255.255.255.255         On-link         127.0.0.1    306
  255.255.255.255  255.255.255.255         On-link      192.168.56.1    276
  255.255.255.255  255.255.255.255         On-link          10.8.0.6    276
  255.255.255.255  255.255.255.255         On-link    192.168.43.220    281
===========================================================================
Persistent Routes:
  None

IPv6 Route Table
===========================================================================
Active Routes:
 If Metric Network Destination      Gateway
  1    306 ::1/128                  On-link
 10    276 fe80::/64                On-link
 15    276 fe80::/64                On-link
  4    281 fe80::/64                On-link
 10    276 fe80::1d14:52cd:fd6a:2395/128
                                    On-link
 15    276 fe80::2c0e:13f0:840c:37b4/128
                                    On-link
  4    281 fe80::a5e8:546c:e046:a246/128
                                    On-link
  1    306 ff00::/8                 On-link
 10    276 ff00::/8                 On-link
 15    276 ff00::/8                 On-link
  4    281 ff00::/8                 On-link
===========================================================================
Persistent Routes:
  None

3 ответа3

1

Хорошо, проблема была на стороне клиента. Я понятия не имею, что было причиной, но в основном мой клиент по какой-то причине не получал статические маршруты от сервера OpenVPN. Удаление и повторная установка клиента OpenVPN решили проблему:/

Поэтому приведенная выше конфигурация совершенно правильная.

-1

Вы не используете свой клиент Windows в качестве администратора. Это известная проблема, когда клиент OpenVPN настраивает адрес интерфейса, но не может манипулировать таблицей маршрутизации. Кстати, это выводится из его журналов.

Читайте (например): https://uwnthesis.wordpress.com/2013/03/25/how-to-run-openvpn-with-administrator-rights-windows-7/

-1

Я думаю, то, что вы спрашиваете, называется разделенным туннелированием. Если вы используете собственный VPN-клиент Windows, перейдите в Панель управления-> Сеть и Интернет-> Сетевые подключения -> ВАШЕ ПОДКЛЮЧЕНИЕ VPN -> Свойства -> Сеть -> Свойства IPv4 -> Дополнительно -> Снять отметку "Использовать шлюз по умолчанию в удаленной сети" "

Если вы используете другое программное обеспечение, просто ищите разделенное туннелирование. Вам, возможно, нужно включить его и на стороне сервера.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .