Перенаправление HTTP(s) трафика на другой сервер

Перенаправление HTTP(s) трафика на другой сервер

Я пытаюсь настроить тестовую среду для исследования/обратного проектирования беспроводных платформ.

У меня есть маршрутизатор AP, транслирующий мою сеть, к которому подключается исследуемое мной оборудование, а оттуда AP перенаправляет весь трафик на сервер для анализа.

Мои правила iptables nat на точке доступа для перенаправления трафика следующие:

iptables -t nat -A PREROUTING -p tcp --dport 80 -m conntrack --ctstate NEW -j DNAT --to x.x.x.x:8880
iptables -t nat -A PREROUTING -p tcp --dport 443 -m conntrack --ctstate NEW -j DNAT --to x.x.x.x:8443
iptables -t nat -A PREROUTING -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A POSTROUTING -t nat -j MASQUERADE

И на точке доступа, и на сервере также включена функция IP_FORWARD.

А на моем сервере установлено программное обеспечение, такое как sslsplit, mitmproxy или другое, которое принимает трафик и позволяет мне его анализировать.

Проблема в том, что когда я перенаправляю трафик таким образом, программное обеспечение на моем сервере по какой-то причине продолжает пытаться подключиться само к себе, а не к нужному порту/домену.

Например, если мой серверный IP был 1.1.1.1:8443; когда оборудование 192.168.0.100, подключенное к моей точке доступа, получает доступ к веб-сайту, который разрешается в 2.2.2.2:443, правила iptables перенаправляют весь мой трафик, идущий на 2.2.2.2:443, на 1.1.1.1:8443 для анализа. Это все хорошо, но когда программное обеспечение пытается перенаправить соединение на удаленный http-сервер, чтобы завершить запрос/получить ответ, вместо того, чтобы передать трафик на 2.2.2.2:443 для ответа, оно отправляет его на 1.1.1.1:8443 (он же сам).

Это ошибка моих правил iptables или какая-то проблема с программным обеспечением? Те же результаты возникают для нескольких программ, используемых в его режиме удаленной обработки, поэтому я склонен полагать, что проблема в том, как я перенаправляю трафик.

Возможно ли такое перенаправление трафика или это нужно делать каким-то другим способом?

Настройка следующая: клиент (192.168.0.100) -> AP -> маршрутизатор -> Интернет -> сервер обработки данных (1.1.1.1:8443) -> Интернет -> веб-хост (2.2.2.2:443)

Любые предложения будут оценены по достоинству.

решение1

Проходит ли трафик от вашего сервера до 2.2.2.2:443 (исходный пункт назначения) через точку доступа?

В этом случае будет применяться трансляция, поэтому измените правила DNAT так, чтобы трафик, исходящий от сервера, был исключен из трансляции DNAT.

iptables -t nat -A PREROUTING -p tcp ! -s x.x.x.x --dport 80 -m conntrack --ctstate NEW -j DNAT --to x.x.x.x:8880

Связанный контент