LINUX.ORG.RU
ФорумAdmin

VPN в Docker сеть

 ,


0

1

Есть хост с кучей Docker контейнеров.

Хочу запустить ещё один контейнер, в котором будет VPN сервер, дающий доступ к одной из сетей Docker. Причём таким образом, чтобы клиенты VPN могли подключаться к контейнерам подключенным к этой сети, а контейнеры в этой сети могли подключаться к клиентам VPN.

В Интернет же ходить клиентам не надо через VPN.

Как это лучше организовать? Ни сервер, ни клиенты не в России, так что устойчивость к РКН не нужна. Зато нужна беспроблемная работа VPN на Mac OS.

★★★★★

ответов много:

  1. вариант с control plane

https://github.com/juanfont/headscale + https://github.com/tailscale/tailscale

  1. вариант без control plane

google://docker compose wireguard sidecar

google://docker compose openvpn sidecar

Зато нужна беспроблемная работа VPN на Mac OS.

Вы ошиблись сайтом

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

Это позволит поднять OpenVPN сервер и получить доступ от клиентов к контейнерам (к которым будет иметь доступ контейнер с OpenVPN), но, как я понимаю, клиенты будут за NAT и контейнеры не смогут получать доступ к клиентам.

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

Я хочу реализовать два use case:

1) Подключиться со своей машины и потыкать постгрю/редис на сервере (они контейнеризированы) в целях отладки приложения

2) Реверс прокси одного из доменов на сервис запущенный на моей машине силами докеризованного веб-сервера

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

вариант без control plane

У нас, вероятно, отличается выдача гугла, мне выдаёт одни общие гайды по поднятию wireguard/openvpn в docker без важной детали как сделать мост между VPN и docker сетью.

Вы ошиблись сайтом

администрирование Linux/Unix систем и сетей

Но в целом, это действительно не очень принципиально. И OpenVPN, и Wireguard имеют клиенты под Mac.

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

У нас, вероятно, отличается выдача гугла, мне выдаёт одни общие гайды по поднятию wireguard/openvpn в docker без важной детали как сделать мост между VPN и docker сетью.

выдача у нас +- одна и таже, я добавил слово «sidecar» - это означает что openvpn запускается внутри docker контейнера и цепляется к docker сети

https://github.com/Salvoxia/docker-openvpn-tap

администрирование Linux/Unix систем и сетей

Но в целом, это действительно не очень принципиально. И OpenVPN, и Wireguard имеют клиенты под Mac.

Если бы у вас был линукс, то я бы вам посоветовал использовать утилиту sshuttle https://github.com/sshuttle/sshuttle - в этом случае вам бы не потребовались никакие vpn, а только ssh соединение

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

Подключиться со своей машины и потыкать постгрю/редис на сервере (они контейнеризированы) в целях отладки приложения

Запусти socat через docker exec, если эти сервисы не предполагается наружу выставлять.

Реверс прокси одного из доменов на сервис запущенный на моей машине силами докеризованного веб-сервера

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

MagicMirror ★★
()