1

Я устанавливаю VPN-соединение в первый раз. Я работаю над проектом, в котором я хотел бы получить доступ к моей локальной сети у себя дома из внешнего мира. Итак, я установил OpenVPN2.2.2 на свой 32-битный ноутбук с Windows 7 (выступая в роли сервера). Моя конечная цель - загрузить страницу, которая доступна только в моей локальной сети.

Я создал сертификат клиента, который является 64-битным ноутбуком с Windows 8 (с установленным на нем OpenVPN2.2.2). Я могу подключиться к серверу через VPN, используя мой клиент. Я вижу этот зеленый значок графического интерфейса в панели задач на обоих ноутбуках. Я также вижу "Последовательность инициализации завершена" в журналах без серьезных ошибок. Однако, когда я пытаюсь пропинговать любое из моих устройств в локальной сети, я не могу сделать это, используя мой удаленный клиент, работающий с openVPN. Кроме того, когда я ищу ip с использованием http://www.whatismyip.com/, я все равно получаю оригинальный IP-адрес клиента, а не IP-адрес моей локальной сети.

Это основные предупреждения / заметки, которые я получил.

Сервер:

ПРИМЕЧАНИЕ. В вашей локальной сети используется чрезвычайно распространенный адрес подсети 192.168.0.x или 192.168.1.x. Имейте в виду, что это может создать конфликты маршрутизации, если вы подключаетесь к VPN-серверу из общедоступных мест, таких как интернет-кафе, которые используют одну и ту же подсеть.

Предупреждение: шлюз маршрута недоступен ни на каких активных сетевых адаптерах: 10.8.0.2

MULTI: неверный адрес источника от клиента [192.168.2.30], пакет отброшен

Клиент:

ВНИМАНИЕ: потенциальный конфликт подсети маршрута между локальной сетью [172.20.10.0/255.255.255.240] и удаленным VPN [0.0.0.0/0.0.0.0]

Я провел много исследований по этому вопросу на прошлой неделе. Я изучил документацию и форумы openVPN. Люди могут подключаться к серверам, но не могут пинговать. Вот дополнительные шаги, которые я предпринял:

  • полностью отключил брандмауэр Windows (как на клиенте, так и на сервере) для решения этой проблемы интерфейса TUN/TAP
  • настроить переадресацию портов, поэтому все подключения к маршрутизатору через порт 1194 будут перенаправляться на мой сервер (статический IP-адрес 192.168.1.168).
  • запустить все с правами администратора
  • настроил маршрутизацию и удаленный доступ на Windows-машине (сервере)
  • IPEnableRouter равен 1.
  • Установите флажок «Разрешить другим пользователям сети подключаться через интернет-соединение этого компьютера для адаптера TAP.

Еще несколько шагов, которые я предпринял после получения их с форумов openVPN:

Server.ovpn

port 1194
proto udp
dev tun
ca "C:\\Program Files\\OpenVPN\\config\\ca.crt"
cert "C:\\Program Files\\OpenVPN\\config\\server.crt"
key "C:\\Program Files\\OpenVPN\\config\\server.key"
dh "C:\\Program Files\\OpenVPN\\config\\dh1024.pem"
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "route 0.0.0.0 0.0.0.0"
keepalive 10 120
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 5

Client.ovpn

client
dev tun
proto udp
remote xx.xx.xxx.xxx 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca "C:\\Program Files (x86)\\OpenVPN\\config\\ca.crt"
cert "C:\\Program Files (x86)\\OpenVPN\\config\\client1.crt"
key "C:\\Program Files (x86)\\OpenVPN\\config\\client1.key"
ns-cert-type server
comp-lzo
verb 3
explicit-exit-notify 2
ping 10
ping-restart 60
route-method exe
route-delay 2

Если бы вы могли помочь мне решить эту проблему, это было бы здорово. Любые намеки / предложения приветствуются. Благодарю.

EDIT:1

Большое спасибо за ваши предложения.

1) Не могли бы вы немного объяснить, что именно вы подразумеваете под "получением брандмауэра или использованием вашего брандмауэра для VPN"? У меня уже есть встроенные брандмауэры как в моем клиенте, так и на сервере, и я отключил их оба, просто чтобы они пока не мешали моей настройке.

2) Я изменил свою подсеть IP-адреса. Так что шлюз по умолчанию на моей стороне сервера теперь 192.168.157.1 вместо 192.168.1.1.Я спрячу свой IP-адрес. :D

3)10.8.0.2 является шлюзом по умолчанию для адаптера TAP-Win32. Итак, после просмотра форумов openvpn я добавил 10.8.0.2 в качестве шлюза по умолчанию на моей стороне сервера, перейдя в расширенные настройки IPv4 Свойства адаптера TAP-Win32. Если честно, я не знаю, почему я это сделал. Я просто отчаянно пытался заставить это работать.

Теперь, так как я изменил IP-подсеть моего маршрута на 192.168.157.1, я вижу только два предупреждения в лог-файлах, что является хорошей новостью для IMO. Но я все еще не могу пинговать (нужно изучить политику пинга, но я сомневаюсь, что это может быть проблемой). Также клиентская сторона имеет нулевой доступ к Интернету при подключении к моему серверу. Нет пинга, нет веб-страниц, нет интернета.

Предупреждение на стороне сервера говорит:

Предупреждение: шлюз маршрута недоступен ни на каких активных сетевых адаптерах: 10.8.0.2

Предупреждение на стороне клиента:

ВНИМАНИЕ: потенциальный конфликт подсети маршрута между локальной сетью [192.168.2.0/255.255.255.0] и удаленным VPN [0.0.0.0/0.0.0.0]

Еще раз большое спасибо.

2 ответа2

1

Это утверждение

 push "route 0.0.0.0 0.0.0.0"

в файле server.conf - источник ваших проблем. The

push "route ..." 

заявление, не следует путать с

push route ... 

оператор, который выполняет другую функцию, используется для информирования клиентов OpenVPN о существовании локальной сети за сервером OpenVPN. Поскольку вы изменили эту подсеть на 192.168.157.0/24, вышеприведенный оператор должен быть изменен на:

  push "route 192.168.157.0 255.255.255.0"

Вы можете найти описание этого утверждения в OpenVPN Howto. Помимо подробного описания того, что я уже сказал вам, вы также найдете следующее заявление:

Затем необходимо настроить маршрут на серверном шлюзе LAN для маршрутизации подсети VPN-клиента (10.8.0.0/24) на сервер OpenVPN (это необходимо только в том случае, если сервер OpenVPN и шлюз LAN являются разными компьютерами).

Убедитесь, что вы включили IP и переадресацию TUN/TAP на компьютере сервера OpenVPN.

Обе эти операции имеют решающее значение для работы OpenVPN. К сожалению, они также зависят от ОС, поэтому вам придется выяснить, как это сделать самостоятельно.

Пользователям на машинах Linux потребуются следующие две команды:

   ip route add 10.8.0.0/24 via IP.of.TheOpenVPN.Server
   echo 1 > /proc/sys/net/ipv4/ip_forward
-1

Я бы посоветовал получить брандмауэр или, если он у вас есть, использовать брандмауэр для VPN. У меня есть watchguard, и очень просто создавать или редактировать политики, такие как ping. У меня была проблема, когда я не хотел, чтобы пользователи подсети "B" могли даже пинговать подсеть "A", и легко изменил это в этой политике.

В любом случае вы можете попытаться изменить подсеть вашей сети (если это возможно) с "нормальным" диапазоном IP-адресов, так как 192.168.1.1 не является наилучшим методом. Я бы тоже не стал ставить ваш внешний IP-адрес на всеобщее обозрение

Мне кажется, что что-то в вашем брандмауэре не направляет трафик в вашу подсеть 192.xxx, и, судя по всему, это потому, что ваши локальные сети имеют одинаковый диапазон IP-адресов. И какое у вас устройство на 10.8.0.2? выглядит как ваш шлюз, но ваши локальные сети разные. Пожалуйста, объясните немного больше ...

PS извините, я пытался комментировать вместо ответа, но мне не хватает представителя.

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