Клиент OpenVPN не может связаться с локальной сетью.

Вопрос или проблема

Я использую FreshTomato 2023.5 и пытаюсь настроить сервер OpenVPN. Я могу сгенерировать конфигурацию клиента и заставить мой iPhone подключиться с помощью клиента openvpn. Я могу пинговать роутер FastTomato, но не могу пинговать или каким-либо образом получить доступ к машинам во внутренней локальной сети.

Следуя инструкциям, я не вижу, что настроено неправильно – я понял, что установка галочки “Push LAN0 (br0) to clients” позволит клиентам видеть машины в локальной сети. Я что-то упускаю в правилах?

Мой роутер FastTomato находится по адресу 192.168.10.1 – внутренняя локальная сеть 192.168.10.0/24, а адресное пространство VPN – 10.6.0.0/24.

Этот роутер также является шлюзом по умолчанию для моей локальной сети.

БАЗОВАЯ КОНФИГУРАЦИЯ:

введите описание изображения здесь

РАСШИРЕННАЯ КОНФИГУРАЦИЯ:

Я также пытался установить опцию “Направить клиентов на перенаправление интернет-трафика”, но без успеха – я предполагаю, что это указывает клиенту отправлять весь интернет-трафик через VPN. Я предпочел бы направлять только трафик, предназначенный для локальной сети. Я полагаю, это называется разделенным туннелированием.

введите описание изображения здесь

ЛОГ КЛИЕНТА (с публичными IP-адресами и DNS-именами, скрытыми)

[07 февр. 2024, 19:53:13] НАЧАТЬ СОЕДИНЕНИЕ
[07 февр. 2024, 19:53:13] ----- Запуск OpenVPN -----
OpenVPN core 3.8.3connect1 ios arm64 64-bit
[07 февр. 2024, 19:53:13] OpenVPN core 3.8.3connect1 ios arm64 64-bit
[07 февр. 2024, 19:53:13] Frame=512/2112/512 mssfix-ctrl=1250
[07 февр. 2024, 19:53:13] ПРИМЕТКА: Эта конфигурация содержит опции, которые не были использованы:
[07 февр. 2024, 19:53:13] Неподдерживаемая опция (игнорируется)
[07 февр. 2024, 19:53:13] 3 [ncp-ciphers] [CHACHA20-POLY1305:AES-128-GCM:AES-256-GCM:AES-128-CBC:AES-256-CB...]
[07 февр. 2024, 19:53:13] 11 [resolv-retry] [бесконечность]
[07 февр. 2024, 19:53:13] НЕИЗВЕСТНЫЕ/НЕПОДДЕРЖИВАЕМЫЕ ОПЦИИ
[07 февр. 2024, 19:53:13] 15 [status] [status]
[07 февр. 2024, 19:53:13] СОБЫТИЕ: РАЗРЕШЕНИЕ
[07 февр. 2024, 19:53:13] Связываемся с xxx.xxx.xxx.xxx:1194 через UDP
[07 февр. 2024, 19:53:13] СОБЫТИЕ: ОЖИДАНИЕ
[07 февр. 2024, 19:53:13] Подключаемся к [x.x.co.uk]:1194 (86.31.66.136) через UDP
[07 февр. 2024, 19:53:13] СОБЫТИЕ: ПОДКЛЮЧЕНИЕ
[07 февр. 2024, 19:53:13] Опции туннеля: V4, dev-type tun, link-mtu 1541, tun-mtu 1500, proto UDPv4, cipher BF-CBC, auth SHA1, keysize 128, key-method 2, tls-client
[07 февр. 2024, 19:53:13] Учетные данные: Имя пользователя/Пароль
[07 февр. 2024, 19:53:13] Отправляем информацию о пировом устройстве:
IV_VER=3.8.3connect1
IV_PLAT=ios
IV_NCP=2
IV_TCPNL=1
IV_PROTO=990
IV_MTU=1600
IV_CIPHERS=AES-128-CBC:AES-192-CBC:AES-256-CBC:AES-128-GCM:AES-192-GCM:AES-256-GCM:CHACHA20-POLY1305
IV_AUTO_SESS=1
IV_GUI_VER=net.openvpn.connect.ios_3.4.1-5463
IV_SSO=webauth, openurl, crtext
IV_BS64DL=1

[07 февр. 2024, 19:53:13] ВЕРИФИКАЦИЯ OK: depth=1, /C=GB/ST=Yorks/L=York/O=FreshTomato/OU=IT/CN=server, подпись: RSA-SHA256
[07 февр. 2024, 19:53:13] ВЕРИФИКАЦИЯ OK: depth=0, /C=GB/ST=Yorks/L=York/O=FreshTomato/OU=IT/CN=server, подпись: RSA-SHA256
[07 февр. 2024, 19:53:13] SSL Handshake: сертификат пирa: CN=server, RSA 2048 бит, шифр: TLS_CHACHA20_POLY1305_SHA256   TLSv1.3 Kx=любой      Au=любой   Enc=CHACHA20/POLY1305(256) Mac=AEAD

[07 февр. 2024, 19:53:13] Сессия активна
[07 февр. 2024, 19:53:13] СОБЫТИЕ: ПОЛУЧИТЬ_КОНФИГ
[07 февр. 2024, 19:53:13] Отправляем PUSH_REQUEST на сервер...
[07 февр. 2024, 19:53:13] ОПЦИИ:
0 [route] [192.168.10.0] [255.255.255.0]
1 [dhcp-option] [DNS] [192.168.10.1]
2 [route-gateway] [10.6.0.1]
3 [topology] [subnet]
4 [ping] [15]
5 [ping-restart] [60]
6 [ifconfig] [10.6.0.2] [255.255.255.0]
7 [peer-id] [0]
8 [cipher] [CHACHA20-POLY1305]

[07 февр. 2024, 19:53:13] ОПЦИИ ПРОТОКОЛА:
 шифр: CHACHA20-POLY1305
 дайджест: НЕТ
 ключевая деривация: OpenVPN PRF
 сжатие: НЕТ
 ID пира: 0
[07 февр. 2024, 19:53:13] СОБЫТИЕ: НАЗНАЧИТЬ_IP
[07 февр. 2024, 19:53:13] NIP: Подготовка сетевых настроек TUN
[07 февр. 2024, 19:53:13] NIP: Инициализация сетевых настроек TUN с конечной точкой: xxx.xxx.xxx.xxx
[07 февр. 2024, 19:53:13] NIP: Добавление IPv4-адреса в сетевые настройки 10.6.0.2/255.255.255.0
[07 февр. 2024, 19:53:13] NIP: Добавление включенного IPv4-маршрута 10.6.0.0/24
[07 февр. 2024, 19:53:13] NIP: Добавление включенного IPv4-маршрута 192.168.10.0/24
[07 февр. 2024, 19:53:13] NIP: Добавление DNS 192.168.10.1
[07 февр. 2024, 19:53:13] NIP: allowFamily(AF_INET, 1)
[07 февр. 2024, 19:53:13] NIP: allowFamily(AF_INET6, 1)
[07 февр. 2024, 19:53:13] NIP: Добавление совпадающего домена ALL
[07 февр. 2024, 19:53:13] NIP: Добавление конкретных маршрутов DNS:
[07 февр. 2024, 19:53:13] NIP: Добавление включенного IPv4-маршрута 192.168.10.1/32
[07 февр. 2024, 19:53:13] Подключено через NetworkExtensionTUN
[07 февр. 2024, 19:53:13] СОБЫТИЕ: ПОДКЛЮЧЕНО [email protected]:1194 (xxx.xxx.xxx.xxx) через /UDP на NetworkExtensionTUN/10.6.0.2/ gw=[/] mtu=(default)

КОНФИГАЦИЯ КЛИЕНТА (автоматически сгенерирована Tomato 2023.5)

remote x.x.x.x 1194
proto udp
dev tun
ncp-ciphers CHACHA20-POLY1305:AES-128-GCM:AES-256-GCM:AES-128-CBC:AES-256-CBC
client
remote-cert-tls server
; ca ca.pem
<ca>
... сертификаты здесь

та же проблема… 🙁
Есть ли решение?

Я могу пинговать роутер FastTomato, но не могу пинговать или каким-либо образом получить доступ к машинам во внутренней локальной сети.

Я не уверен, как вы установили сервер OpenVPN, но похоже, что вам не хватает IP-маршрутизации (со стороны сервера), так что эта команда должна это исправить:

echo 1 > /proc/sys/net/ipv4/ip_forward

Некоторый справочный материал: Что такое IP-маршрутизация и как ее включить в Linux?

Ответ или решение

Ошибка связи клиента OpenVPN с локальной сетью (LAN): Возможные причины и решения

Ваша проблема с отсутствием связи между клиентом OpenVPN и устройствами в локальной сети может быть вызвана несколькими факторами. Из описания видно, что клиент OpenVPN на iPhone успешно подключается к серверу, однако доступ к внутренней локальной сети невозможен. Давайте рассмотрим возможные причины и решения.

1. Проверьте настройку маршрутизации

Одна из наиболее распространенных причин отсутствия доступа к локальной сети — неправильные настройки маршрутизации на сервере OpenVPN или в клиентском файле конфигурации. Важно убедиться, что на стороне сервера правильно настроены маршруты, которые позволяют направлять трафик с VPN-сети (10.6.0.0/24) в локальную сеть (192.168.10.0/24).

  • Проверьте настройки маршрутов на сервере: Убедитесь, что маршруты на сервере OpenVPN настроены таким образом, чтобы трафик из VPN подсети направлялся в LAN. В команде route проверьте, что существует маршрут до 192.168.10.0/24 через интерфейс VPN.

2. Включите маршрутизацию IP

Ошибки в маршрутизации могут также возникнуть из-за того, что на вашем маршрутизаторе FastTomato не включена маршрутизация IP.

  • Чтобы включить маршрутизацию IP на сервере, выполните следующую команду:

    echo 1 > /proc/sys/net/ipv4/ip_forward
  • После этого убедитесь, что настройки остаются постоянными между перезагрузками. Для этого измените файл /etc/sysctl.conf и добавьте или раскомментируйте строку:

    net.ipv4.ip_forward=1

3. Проверьте настройки ACL и брандмауэра

Возможно, настройки брандмауэра на маршрутизаторе блокируют доступ к устройствам локальной сети.

  • Проверьте правила брандмауэра FastTomato. Убедитесь, что правила не блокируют трафик между VPN и LAN, и разрешают ICMP-пакеты (ping) для проверки связи.

4. Настройка клиентов OpenVPN

Вы также упомянули опцию "Push LAN0 (br0) to clients", которая должна позволять клиентам видеть машины в локальной сети.

  • Убедитесь, что данная опция включена. Если это не помогает, попробуйте вручную добавить следующие строки в конфигурацию сервера OpenVPN:

    push "route 192.168.10.0 255.255.255.0"
  • Это должно гарантировать, что клиенты OpenVPN получат маршрут к локальной сети.

5. Проверка клиентского конфигурационного файла

Некоторые опции могут быть игнорированы клиентом из-за проблем с совместимостью. Проверьте, не содержится ли в клиентском конфиге ошибок или неиспользуемых параметров, и удалите их. Убедитесь, что конфигурация содержит правильные параметры для работы с вашим сервером.

Заключение

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

Оцените материал
Добавить комментарий

Капча загружается...