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

Порт 80 смешан среди клиентов, использующих DNAT

Я пытаюсь настроить такую ​​сеть:

... но я столкнулся с проблемой.

Вот в чем суть:

Если я попытаюсь достичь (например) mywebsite1.com из внешнего мира он работает как шарм, и он показывает мой замечательный веб-сайт, но всякий раз, когда я пытаюсь запустить (например,) apt-get update изнутри виртуального сервера 2 выдает ошибку типа "Не удалось подключиться к порту 80 xxx-whatever-website.com: в подключении отказано".

Проблема решается, если я удалю правило предварительной маршрутизации на брандмауэре основного сервера (ниже его конфигурации), но, конечно, тогда я больше не могу подключиться к mywebsite1.com от внешнего. Та же история, если я изменю шлюз виртуального сервера по умолчанию на 192.168.1.1.

Я наивно пытался добавить статический маршрут на главный сервер (что-то вроде ip route add 192.168.1.1 через 192.168.1.32), но, конечно, не получилось. Должен ли я каким-то образом помечать пакеты, чтобы распознать исходного клиента?


Физический сервер (192.168.1.30) Конфигурация межсетевого экрана

Примечание: все цепочки имеют политику ПРИНЯТЬ по умолчанию.

*nat
-A POSTROUTING -s 192.168.1.0/24 -o vmbr0 -j MASQUERADE
-A PREROUTING -p tcp -m tcp -i vmbr0 --dport 80 -j DNAT --to-destination 192.168.1.32:80

Ваша проблема в том, что ваше правило dnat не имеет фильтра адресов назначения, вам нужно добавить к правилу '-d 192.168.1.30'.