Обсуждение статьи тематического каталога: Прозрачный кеширующий прокси на Linux (linux transparent proxy squid cache iptables)Ссылка на текст статьи: http://www.opennet.me/base/net/transparent_proxy.txt.html
У меня такая проблемка, Есть сквид и iptables, прочитал вот эту статейку и решил сделать именно прозрачный прокси (удобнее имхо), но у меня в сквиде идет аутентификация по пользователям, а когда редирекчу через iptables то сквид не выкидывает окно аутентификации, как выйти из этой ситуации?
Судя по документации на сквид, это НЕВОЗМОЖНО
(сам подумай, откуда браузеру знать, что он
работает с проксиком, если проксик прозрачный) -
а без этого он про логин/пароль думать не будет
Для авторизации используй биллинг или хотя бы VPN сервер.
Ну, со входящими из локалки пакетами - всё просто.
А как бы заставить iptables редиректить пакеты от самого себя (т.е. от сервера)?
Они же не проходят PREROUTING цепочку...
Интересно, это вообще возможно?
конечно можно, те же правила запихни в цепочку OUTPUT
А вот у меня проблема, если клиента принудительно заворачивают на прокси - то в access.log это не регистрируется, а если у клиента явно указать работать через прокси, то все нормально. Причем и в том и другом случае клиент свой запрос получает. Как быть ?
Интересно, при такой раскладке, биллинг старгейзер будет слушать трафик или не будет?
Мой squid/2.6.STABLE3 не понимает таких команд :(
# /usr/local/squid/sbin/squid -f /usr/local/squid/etc/squid.conf
2007/01/07 04:32:14| parseConfigFile: line 19 unrecognized: 'httpd_accel_host virtual '
2007/01/07 04:32:14| parseConfigFile: line 20 unrecognized: 'httpd_accel_port 80 '
2007/01/07 04:32:14| parseConfigFile: line 21 unrecognized: 'httpd_accel_with_proxy on '
2007/01/07 04:32:14| parseConfigFile: line 22 unrecognized: 'httpd_accel_uses_host_header on'
Что делать?
убери их и добавь transparent в строчку http_port 127.0.0.1:3128, те
http_port 127.0.0.1:3128 transparent
iptables не заворачивает пакеты на порт прокси :(
на машину со сквидом запросы поступают:
# tcpdump -i eth1 host 172.19.19.10 tcpdump: listening on eth1
13:04:06.941011 172.19.19.10.1288 > opennet.ru.http: S 541817091:541817091(0) win 64512 <mss 1260,nop,nop,sackOK> (DF)
13:04:09.935157 172.19.19.10.1288 > opennet.ru.http: S 541817091:541817091(0) win 64512 <mss 1260,nop,nop,sackOK> (DF)
13:04:15.950872 172.19.19.10.1288 > opennet.ru.http: S 541817091:541817091(0) win 64512 <mss 1260,nop,nop,sackOK> (DF)
а на порт сквида 3128 - нет, tcpdump их не видит.
В чем может быть дело?
Ээ, автор, а UDP зачем пробрасывается?!
Имхо настройка какаято децельная... Тем боле на 2.6 непрёт конфига. Но принцип ясен. Кстсти, как насчет опции http_port xxx.xxx.xxx.xxx:port transparent знает кто в чем правда сермяжная?
А в чем проблема?squid.conf
http_port 10.10.10.1:3128 transparent/etc/ipnat.conf
rdr fxp0 10.10.10.1/24 port 80 -> 10.10.10.1 port 3128 tcpвсе себе побежало на ура...
ЗЫ: FreeBSD 4.9-Stable
Долгое время не мог заставить squid (2.6.13 STABLE) прозрачно работать. Имеется сервер, к нему юзер конектится через VPN.
Решил проблему добавлением правилa iptables:
iptables -t nat -A PREROUTING -p tcp -i ppp1 --dport 80 -j DNAT --to-destination 10.10.10.10:3128
где ppp1 - интерфейс через который юзер соединен с сервером
10.10.10.10 - адрес компьютера где запущен squidну и естественно NAT:
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o ppp0 -j MASQUERADEppp0 - смотрит в инет
основные параметры squid.conf:
http_port 10.10.10.10:3128 transparent
acl vpn_network src 192.168.0.0/24
acl localhost src 127.0.0.1
acl me src 10.10.10.10
http_access allow me
http_access allow localhost
http_access allow vpn_network
http_access deny all
....................
а не возникало ли вопросов (проблем на клиентских машинах) с хождением на ФТП сервера после установления прозрачного прокси? и каковы были методы борьбы?
PS сквид работает прозрачно на ура. у большинства клиентов - IE, на ФТП зайти никак нельзя.
>а не возникало ли вопросов (проблем на клиентских машинах) с хождением на
>ФТП сервера после установления прозрачного прокси? и каковы были методы борьбы?
>
>PS сквид работает прозрачно на ура. у большинства клиентов - IE, на
>ФТП зайти никак нельзя.а причем тут ftp? сквид прозрачно только http проксирует
ооо, спасибо тебе. Благодаря тебе всё заработало %)
После таких настроек у клиентов очееееень медленно всё грузится, а если указываю в браузере настройки прокси то всё летает.
С чем это связанно?
Стоит squid,всё работает нормально.Но нужно сделать так чтобы при посещении любой веб страницы у клиента появлялся баннер или текстовое предупреждение, что он работает через прокси сервер.Кто подскажет как это сделать.