Как использовать iptables в linux для пересылки трафика http и https на прозрачный прокси [закрыт]

У меня есть система Ubuntu Linux, выступающая в качестве системы шлюза с двумя интерфейсами на нем. Один интерфейс предназначен для локальной сети, а другой - для Интернета. Я могу без проблем маршрутизировать трафик. Я использую дваiptables правила пересылки исходящего трафика из внутреннего интерфейса:

iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT

Теперь мне нужно создатьiptables правило, которое отфильтровывает и перенаправляет весь трафик TCP-порта 80 и 443, покидающий мою сеть черезeth1 интерфейс и отправить его на прокси-сервер, который находится на петлевой интерфейс на порт 9090 TCP.

Я искал по всему так, но я не смог найти пример, который работает. Есть ли эффективный способ сделать это?

 Jim Garrison24 мая 2012 г., 06:09
Не по теме для SO; принадлежит на Ошибка сервера

Ответы на вопрос(2)

iptables -t nat -A PREROUTING -i eth0 -s ! squid-box -p tcp --dport 80 -j DNAT --to squid-box:3128
iptables -t nat -A POSTROUTING -o eth0 -s local-network -d squid-box -j SNAT --to iptables-box
iptables -A FORWARD -s local-network -d squid-box -i eth0 -o eth0 -p tcp --dport 3128 -j ACCEPT

Кальмар ящик: ваш сервер squidлокальная сет: ваша сеть (в моем случае это 192.168.0.0/24 Iptables ящик: где находится ваше программное обеспечение iptables (обычно шлюз, в моем случае 192.168.1.1)

Первый отправляет пакеты в squid-box из iptables-box. Второй гарантирует, что ответ будет отправлен обратно через iptables-box, а не напрямую клиенту (это очень важно!). Последнее гарантирует, что iptables-box будет пересылать соответствующие пакеты в squid-box. Это может быть не нужно. YMMV. Обратите внимание, что мы указали '-i eth0', а затем '-o eth0', что означает входной интерфейс eth0 и выходной интерфейс eth0. Если ваши пакеты входят и выходят через разные интерфейсы, вам необходимо соответствующим образом настроить команды.

Добавьте эти команды в соответствующие сценарии запуска в /etc/rc.d

ОТ:http: //www.tldp.org/HOWTO/TransparentProxy-6.htm

Решение Вопроса
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to 9090

но это не имеет никакого смысла и бесполезно.

 iNoob01 июн. 2018 г., 13:05
Прозрачные прокси могут использовать HTTPS, почему вы думаете, что они не могут?
 iNoob14 сент. 2018 г., 21:37
Прокси добавляет ценность данных, покидающих сеть через прокси, единственную систему в большинстве случаев, которой разрешено общаться за пределами сети. Трафик https также может быть проверен через прокси-сервер, если вы ограничиваете его. Поэтому, конечно, есть ценность, это зависит от того, чего вы пытаетесь достичь.
 Diego Woitasen24 мая 2012 г., 18:46
REDIRECT target перенаправляет пакет на локальный компьютер, ВСЕГДА
 ajt24 мая 2012 г., 02:27
Эй, господа, я думаю, что это правило просто изменит порт пакета, а не IP-адрес назначения пакета, не так ли?
 Jeryl Cook24 мая 2017 г., 23:43
HTTPS прозрачный прокси: Tectut.com / 2015/08 / ...

Ваш ответ на вопрос