маршрутизатор статический маршрут для wireguard

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

У меня есть небольшая проблема с wireguard. Я не слишком разбираюсь в сетевых технологиях и застрял на создании маршрута, чтобы клиенты с сайта A сети могли получить доступ к клиентам на сайте B. Позвольте мне объяснить подробнее:

На сайте A (192.168.1.0) у меня стоит portainer с некоторыми сервисами, и одним из них является контейнер docker wg-easy. К этому контейнеру я получаю доступ через nginx-proxy-manager и адрес https с сертификатами от letsencrypt.

Я настроил несколько клиентов wireguard, включая мой ноутбук, и с моего ноутбука, когда я подключен к wireguard, я могу сразу же получить доступ ко всем клиентам на сайте A после настройки контейнера docker, как это описано в wg-easy здесь. Единственное, что мне нужно было сделать, это закомментировать строку SYS_MODULE, чтобы контейнер смог развернуться (я где-то читал, что это нужно сделать). Таким образом, доступ к клиентам сайта A работает сразу же с роуминг-клиента (ноутбук или телефон).

У меня также есть сайт B (192.168.178.0), где у меня есть хранилище qnap, и я использовал wireguard для подключения к контейнеру wg-easy. Соединение установлено, но я не могу увидеть qnap на сайте B с сайта A. Я вижу, что соединение через wireguard работает, потому что трафик идет от qnap (я вижу это на его веб-интерфейсе), и также я вижу это в веб-интерфейсе wg-easy, но почему-то не могу пропинговать wg ip для qnap из контейнера wg-easy…

Так что мой вопрос:

Что мне нужно сделать, чтобы с сайта A я мог получить доступ к клиентам на сайте B через установленное соединение с qnap.

Извините, если это звучит запутанно!

У меня есть идея добавить еще один контейнер wg-easy на qnap на сайте B и посмотреть, смогу ли я подключить его к “серверу” wg-easy на сайте A.

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

Чтобы обеспечить доступ к клиентам на сайте B из сети A через WireGuard, вам необходимо настроить статический маршрут и убедиться, что маршрутизация данных между двумя сайтами правильно настроена. Давайте рассмотрим процесс, подробно описав шаги и аспекты, которые следует учесть.

1. Понимание сети

На сайте A у вас есть сеть 192.168.1.0, а на сайте B – 192.168.178.0. Вы используете WireGuard для создания защищенного туннеля между этими сетями, что позволяет обмениваться данными безопасно.

2. Проверка конфигурации WireGuard

На сайте A (192.168.1.0)

  • Убедитесь, что конфигурация WireGuard на сайте A настроена правильно и имеет следующую структуру:
[Interface]
PrivateKey = <PrivateKeyA>
Address = 10.0.0.1/24

[Peer]
PublicKey = <PublicKeyB>
AllowedIPs = 192.168.178.0/24
Endpoint = <IP_B>:<Port>
  • В секции [Peer] укажите правильные public key и IP-адреса для вашего qnap на сайте B. AllowedIPs должен включать подсеть сайта B (192.168.178.0/24), что позволит передавать трафик в эту сеть.

На сайте B (192.168.178.0)

  • Конфигурация WireGuard на qnap должна выглядеть следующим образом:
[Interface]
PrivateKey = <PrivateKeyB>
Address = 10.0.0.2/24

[Peer]
PublicKey = <PublicKeyA>
AllowedIPs = 192.168.1.0/24
Endpoint = <IP_A>:<Port>
  • Убедитесь, что значение AllowedIPs на сайте B также включает подсеть сайта A (192.168.1.0/24).

3. Статические маршруты

  • Если у вас есть маршрутизатор, который управляет трафиком между этими двумя сайтами, необходимо добавить статические маршруты на маршрутизаторе сайта A для маршрутизации трафика в сеть сайта B и наоборот.

На маршрутизаторе сайта A

route add -net 192.168.178.0 netmask 255.255.255.0 gw <VPN_IP_A>

На маршрутизаторе сайта B

route add -net 192.168.1.0 netmask 255.255.255.0 gw <VPN_IP_B>
  • <VPN_IP_A> и <VPN_IP_B> – это виртуальные IP-адреса, присвоенные вашим WireGuard интерфейсам.

4. Проверка правил брандмауэра

  • Убедитесь, что правила брандмауэра не блокируют трафик между сайтами. На каждом из устройств (включая контейнеры Docker) может быть настроен брандмауэр, который необходимо настроить для разрешения трафика между двумя подсетями.

5. Тестирование соединения

  • После выполнения всех вышеуказанных шагов выполните тестирование соединения. Попробуйте пинговать устройства на сайте B из сайта A и наоборот. Если пинг проходит успешно, то маршрутизация между сайтами настроена корректно.

6. Дополнительные рекомендации

  • Если доступ не удается получить, также проверьте логи WireGuard на обоих концах туннеля, чтобы выявить возможные проблемы.
  • Рассмотрите возможность добавления другого экземпляра wg-easy на qnap на сайте B, если вам нужно больше функций управления клиентами.

Следуя этим шагам, вы сможете обеспечить доступ клиентов из сети A к ресурсам на сайте B через WireGuard, что поможет улучшить взаимодействие между вашими разными сетью.

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

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