Назад | Перейти на главную страницу

Как сделать контейнеры докеров видимыми для клиентов openvpn?

Я установил сервер Openvpn с настройками подсети по умолчанию, и я запускаю несколько контейнеров Docker.

Мне удалось сделать их доступными для пинга, добавив push "route 172.17.0.0 255.255.0.0"к openvpn server.conf однако я не могу подключиться ни к каким службам, работающим в контейнерах Docker.

$ ping 172.17.0.3

Pinging 172.17.0.3 with 32 bytes of data:
Reply from 172.17.0.3: bytes=32 time=29ms TTL=63
Reply from 172.17.0.3: bytes=32 time=29ms TTL=63
Reply from 172.17.0.3: bytes=32 time=30ms TTL=63
Reply from 172.17.0.3: bytes=32 time=29ms TTL=63

Ping statistics for 172.17.0.3:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 29ms, Maximum = 30ms, Average = 29ms

$ ssh 172.17.0.3
ssh: connect to host 172.17.0.3 port 22: Connection timed out

Мне помог мой учитель нетворкинга. Решением было добавить эти правила iptables:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to 172.17.0.1
iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT