Рейтинг:0

IPTables для доступа к ресурсам на локальном хосте через общедоступный IP-адрес

флаг lc

У меня есть следующая настройка: Проксмокс Хозяин выделенный сервер с одним общедоступным IP-адресом и установленными IPTables и кучей виртуальных машин с установленным докером.

Я использую iptables для переадресации порта 443 на одну из виртуальных машин через DNAT, и он отлично работает извне. Хозяин т.е. Интернет. Но если я попытаюсь получить доступ к ресурсам внутри виртуальной машины, работающей на виртуальной машине, через общедоступный IP-адрес, она будет недоступна.

Вариант использования: у меня есть nginx с SSL в качестве обратного прокси-сервера для служб, работающих в докере на виртуальной машине (бэкэнд + внешнее приложение), и мне нужно получить доступ к серверной части из внешнего интерфейса через «общедоступный DNS, IP», поскольку сертификат SSL создается для общедоступного DNS, указывающего на общедоступный IP-адрес и порт перенаправляется на nginx виртуальной машины.

У меня есть открытый интерфейс, подключенный к vmbr0, и еще один brige vmbr172 (172.20.0.0/16) для виртуальных машин.

Мои текущие правила IPTables:

iptables -t nat -A PREROUTING -p tcp --dport 443 -j DNAT --to 172.20.2.9:443
iptables -t nat -A POSTROUTING -s '172.20.0.0/16' -o vmbr0 -j MASQUERADE
iptables -L -n -t нат -v
Цепочка PREROUTING (политика ACCEPT 58449 пакетов, 3018К байт)
 pkts bytes target prot opt ​​in out source target
 1941 105K DNAT tcp -- * * 0.0.0.0/0 0.0.0.0/0 tcp dpt:443 to:172.20.2.9:443

Цепочка POSTROUTING (политика ACCEPT 5511 пакетов, 332К байт)
 pkts bytes target prot opt ​​in out source target
 212K 18M MASQUERADE all -- * vmbr0 172.20.0.0/16 0.0.0.0/0

Я попытался изменить интерфейс на Любые но соединение, кажется, просто "зависает" и тайм-аут. Думаю, мне нужно какое-то правило постмаршрутизации, но я не могу понять, как оно должно выглядеть.

флаг us
Вам нужно найти «шпильку NAT», чтобы решить вашу проблему.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.