У меня проблемы с настройкой обратного прокси-сервера и второго сервера. Моя идея состояла в том, чтобы заставить брандмауэр пересылать https на обратный прокси-сервер и порт 29418 (gerrit ssh) на второй сервер. Теперь мой сотрудник IT говорит: НЕ МОЖЕТ! Либо оба порта идут на сервер 1, либо оба порта идут на сервер 2.
Хорошо, в качестве обходного пути я попытался настроить переадресацию портов на обратном прокси-сервере порта 29418 -> server2: 29418
Детали:
- IP-адрес сервера 1: 10.0.0.132 и 192.168.10.2 в Ubuntu 12.04.2 LTS
- IP-адрес сервера 2: 10.0.0.133 и 192.168.10.3 в Ubuntu 12.04.2 LTS
Теперь и HTTPS, и порт 29418 переходят с брандмауэра на 10.0.0.132, ИТ-специалисты говорят, что это единственный путь. :(
Поэтому, пожалуйста, скажите мне, как переадресовать с 10.0.0.132:29418 -> 192.168.10.3:29418 или 10.0.0.133:29418
Когда я работаю над 10.0.0.132, я могу подключиться к 10.0.0.133:29418 и 192.168.10.3:29418, чтобы порты были открыты.
-- Обновить --
Мой iptables -t nat -L выглядит так:
root @ dev: / root # iptables -t nat -L Цепь ПРЕДУПРЕЖДЕНИЯ (ПРИНЯТЬ ПОЛИТИКИ) целевой целевой источник назначения DNAT tcp - везде dev.example.com tcp dpt: 29418 до: 10.0.0.133 Цепной ВХОД (политика ПРИНЯТЬ) целевой целевой источник назначения Цепной ВЫХОД (политика ПРИНЯТЬ) целевой целевой источник назначения Цепь РАЗМЕЩЕНИЯ (ПРИНЯТЬ ПОЛИТИКУ) целевой целевой источник назначения root @ dev: / root # cat / proc / sys / net / ipv4 / ip_forward 1
источник
iptables -t nat -A POSTROUTING -j MASQUERADE
О, ВАУ ... вот и все, спасибо! Потратил часы на поиск в сети и выяснение. Это так просто и работает.Если у вас установлен iptables на 10.0.0.132, я думаю, это будет довольно просто:
Это говорит об отправке трафика, поступающего на 10.0.0.132 через порт 29418, вместо 10.0.0.133 вместо этого на тот же порт, до любой другой маршрутизации, которую 10.0.0.132 может попытаться сделать. Если вы запустите эту команду и у вас возникнут проблемы, замените флаг -A на -D, чтобы удалить ее.
Если вы хотите, чтобы это правило запускалось автоматически при запуске 10.0.0.132, рассмотрите возможность добавления вышеуказанной команды в качестве правила «после запуска» в / etc / network / interfaces.
источник
Если кто-то ищет временный метод, попробуйте следующее решение.
Приведенная выше команда перенаправляет все соединения с порта 8080 на вашей базовой машине на порт 80 вашей виртуальной машины. Вы можете проверить работу, зайдя на веб-страницу http://192.168.0.10:8080 , и она покажет вам веб-страницу на гостевой машине.
Это касается всех портов :)
источник
В конце концов мне пришлось установить pfSense в качестве маршрутизатора внутри моего сервера ESXi для маршрутизации трафика на разные виртуальные машины, поскольку я не мог заставить его работать в Ubuntu.
источник