iptables - перенаправлення локального та тимчасового вихідного трафіку, призначеного для порту 80 на порт 8080


0

У мене виникають проблеми з iptables через мою дуже малу кількість участі в ньому.

У мене налаштування реле виходу TOR, і я намагаюся перенаправляти весь локальний і TOR трафік, щоб він виходив з мого поля на порт 8080.

В даний час у мене це встановлено як:

-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080

Але це, здається, переспрямовує перехідний трафік лише тоді, коли я виступаю як маршрутизатор, а не трафік, що походить з поля.

Відповіді:


0

Не коментуючи ТЗ, оскільки я не маю багато знань.

Але для мети iptables ось воно. PREROUTINGпередбачає маршрутизацію. Ініціюючи з'єднання з локальної системи, ви не здійснюєте маршрутизацію. Вам просто потрібно використовувати OUTPUTзамість / на додаток PREROUTING.

Сфера застосування REDIRECT:

ПОПЕРЕДЖЕННЯ
Ця ціль дійсна лише в таблиці nat, в ланцюгах PREROUTING і OUTPUT та у визначених користувачем ланцюгах, які викликаються лише з цих ланцюгів. Він перенаправляє пакет на сам апарат, змінюючи IP-адресу призначення на основну адресу вхідного інтерфейсу (локально згенеровані пакети відображаються на адресу localhost, 127.0.0.1 для IPv4 та :: 1 для IPv6).

Тому:

iptables -t nat -A OUTPUT -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080

Редагувати:

Щоб уникнути перенаправлення конкретного користувача або групи (наприклад, щоб уникнути нескінченного циклу з послугою на порту 8080), ви можете зробити так (наприклад, для служби, що працює з ефективною групою tor) замість вище:

iptables -t nat -N OUTPUT intercept
iptables -t nat -A OUTPUT -p tcp -m tcp --dport 80 -j intercept
iptables -t nat -A intercept -m owner --gid-owner tor -j RETURN
iptables -t nat -A intercept -j REDIRECT --to-ports 8080

Я спробував це, однак це спричиняє нескінченний цикл, і тоді в коробці закінчується розетка.
Spiderstryder

Я оновив свою відповідь
AB
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.