LINUX.ORG.RU
ФорумAdmin

Доступ к клиентам Wireguard

 ,


1

3

Всем привет! Имеется офис с сетью 10.20.0.0/25. Поднял Winreguard на Ubuntu 20.04 по этой инструкции https://github.com/wg-easy/wg-easy с пулом адресов 10.10.0.0/24. Клиенты подключаются к удаленной сети и работают. Возникла необходимость удаленно подключаться к самим VPN-клиентам из офиса, т.е. необходимо получить доступ из подсети 10.20.0.0/25 в 10.10.0.0/24. Как это сделать?


включить форвадинг на впн сервере, скормить хостам из 10.20.0.0/25 маршрут в стиле «ip r add 10.10.0.0/24 via 10.20.0.1»

flant ★★★★
()
Ответ на: комментарий от flant

Не подскажите, как включить форвардинг, если учесть тот факт, что wireguard поднят в контейнере doker?

max85
() автор топика
Ответ на: комментарий от max85

с таким не сталкивался, но по логике на системном уровне это всё те же интерфейсы между которыми нужно передавить трафик, значит вроде как стандартное «sysctl -w net.ipv4.ip_forward=1» должно помочь.

зы: это работает только до перезагрузки, что добавь в автозапуск.

flant ★★★★
()

пулом адресов 10.10.0.0/24

Это адреса в самих туннелях wireguard, правильно?

подключаются к удаленной сети

К другой, не к офисной?

Нужно настраивать три вещи. AllowedIPs чтобы wireguard знал о существовании сети за пиром. Маршрут, чтобы пакеты могли уйти. Firewall, чтобы пакеты могли войти.

Докер мог добавить ещё что-то, усложнить.

NyXzOr ★★★★★
()
Ответ на: комментарий от Dimez

Да, всё верно, при установке wireguard это было указано. Получается форвардинг включен? Если да, то что еще необходимо сделать, чтобы попасть на клиента?

max85
() автор топика
Ответ на: комментарий от max85

AllowedIPs указывать в конфиге на клиенте?

Да.

Маршрут тоже на клиенте?

Нет.

Тебе надо внимательно прочитать, как работает Wireguard, чтобы было понятно. Оно очень простое во всех смыслах, но немного отличается от других VPN.

anonymous
()
Ответ на: комментарий от mx__

Залазаешь на сервак и поднимаешь ssh туннель

После этого к тебе такой же вопрос: в этом году на работу приняли?

anonymous
()
Ответ на: комментарий от max85

Смотря, что такое клиент. На микротиках нужно. На windows он сам пишется.

Как это сделать?

Офис вообще как-то подключается к этой убунте c wg? На роутере или на каждой машине wireguard?

NyXzOr ★★★★★
()
Ответ на: комментарий от anonymous

Да нет вроде давно. А это тут причем ?

Чем вариант с ссш туннелем плох ? Я прочитал тему и понял что все остальное будет для него сложнее объяснить.

mx__ ★★★★★
()
Ответ на: комментарий от NyXzOr

Какой еще раутер ? Вирегуард не туннельный впн, и если он подрубил через раутер то там маскарад и ему придеться статикой всех локальных клиентов прибивать и пробрасывать на них порты …

mx__ ★★★★★
()
Ответ на: комментарий от mx__

Чем вариант с ссш туннелем плох ?

Тем, что это годится на один раз, что-то там сделать и забыть. Ну, или как средство последней надежды, когда все остальные варианты недоступны. Site-to-site на WG не проблема, так что эти костыли тут не нужны.

anonymous
()
Ответ на: комментарий от anonymous

Site-to-site на WG не проблема, так что эти костыли тут не нужны.

  1. site-to-site :( туннель если что называется net-to-net.

  2. Костыль это как раз городить из wg туннель. Для этого есть ipsec и подобное.

P.S. Ну да разовоо, ни кто не сказал что он собирается мониторить 250 клиентов постоянно.

mx__ ★★★★★
()
Последнее исправление: mx__ (всего исправлений: 1)
Ответ на: комментарий от mx__

Костыль это как раз городить из wg туннель

Хотелось бы увидеть техническое обоснование, почему оно вдруг не годится для site-to-site (это стандартный термин в enterprise networking, не знаю, чем он тебе не нравится).

anonymous
()
Ответ на: комментарий от anonymous

Он откуда хочет доступ к клиентам ? Какой еще site-to-site ?

Читай что он написал :

необходимо получить доступ из подсети 10.20.0.0/25 в 10.10.0.0/24.

Я предложил рабочий способ, теперь Вы предложите.

P.S. Я допускаю сетку на /25 но скорее он ошибся так как недавно только на работу устроился.

mx__ ★★★★★
()
Последнее исправление: mx__ (всего исправлений: 2)
Ответ на: комментарий от mx__

Клиенты получают адреса из диапазона 10.10.0.0/24 - это пул адресов выдаваемых wireguard. 10.20.0.0/25 - это подсеть, в которой находится сервер ubuntu с wireguard и другие ПК, с которых необходимо подключаться к клиентам (отделу ИТ для удаленного администрирования).

max85
() автор топика
Ответ на: комментарий от mx__

Он откуда хочет доступ к клиентам ? Какой еще site-to-site ?

Не вижу огромной разницы между доступом к роутеру клиента и доступом к сети за ним.

Я предложил рабочий способ, теперь Вы предложите.

Задать на клиенте правильные разрешённые подсети и настроить файрволл.

Я допускаю сетку на /25 но скорее он ошибся так как недавно только на работу устроился

Вы не родственники с тем чуваком, которого всё время джуны пытаются подсидеть? 🙃

А с размером сети проблемы не вижу.

anonymous
()
Ответ на: комментарий от NyXzOr

Клиент - это ПК, который подключается к удаленной сети 10.20.0.0/25 через wireguard Офис находится в одной подсети (10.20.0.0/25) вместе с ubuntu.

max85
() автор топика
Ответ на: комментарий от max85

Я вам показал способ, если что не понятно могу пояснить.

По другим способам вопросы не ко мне.

mx__ ★★★★★
()
Ответ на: комментарий от max85

Схему сделал, это уже хорошо.

Теперь запускай ping к нужному хосту, и смотри, где пакеты перестают идти.

anonymous
()
Ответ на: комментарий от anonymous

Пинга с подсети 10.20.0.0/25 в 10.10.0.0/24 нет совсем (ни на один хост/клиент); Пинг с подсети 10.10.0.0/24 в 10.20.0.0/25 есть на все хосты (АРМ и сервера).

max85
() автор топика
Ответ на: комментарий от max85

Разумеется, его нет. Надо понять, где пакеты дропаются.

Покажи вывод ip r на хосте, где запускается ping.

anonymous
()
Ответ на: комментарий от anonymous
  • default via 10.20.0.1 dev eth0 proto static
  • 10.20.0.0/25 dev eth0 proto kernel scope link src 10.20.0.99
  • 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
max85
() автор топика
Ответ на: комментарий от max85

Добавь маршрут в подсеть wg-клиентов. Через IP контейнера, по идее.

Но сначала стоит зайти в контейнер, и проверить пинг до клиентов из него. Если работает, то добавлять маршрут на хосте.

anonymous
()
Ответ на: комментарий от max85

правда в докере

Зачем, кстати? У меня нет впечатления, что ты достаточно хорошо понимаешь, как работают сети в Docker.

anonymous
()
Ответ на: комментарий от anonymous

Пинг до адреса 10.10.0.1 с контейнера проходит, а до клиентов (начиная с адреса 10.10.0.2 и далее) пинг отсутствует.

max85
() автор топика
Ответ на: комментарий от anonymous

Я делал установку wireguard согласно вышеизложенной инструкции: https://github.com/wg-easy/wg-easy Докер не был выбран целенаправленно, необходимо было поднять wireguard с веб-интерфейсом и тогда не стояло задачи получить доступ к клиентам VPN.

max85
() автор топика
Ответ на: комментарий от max85

Ты спрашивал «сколько?» в ответ на рекомендацию установить keepalive на клиентах 🤦🏻 Задай, убедись, что оно работает, и проверь снова доступ «контейнер => клиент».

anonymous
()
Ответ на: комментарий от Bad_ptr

Мржете подсказать, где именно прописать? В файл wg0.conf ничего подобного не нашел.

max85
() автор топика
Ответ на: комментарий от anonymous

Выключаю, не помогает. Включая и открываю протокол ICMPv4 - пинга все равно нет. IP-адреса добавлял, порты 51820/51821 TCP/UDP открывал.

max85
() автор топика
Ответ на: комментарий от max85

Честно говоря, не уверен, что оно вообще будет нормально работать на Windows. Должно, наверное, но хз.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.