squid tproxy + rejik. Несовместимость?

Обсуждение программы редиректора
Ответить
vad73
Сообщения: 6
Зарегистрирован: Ср дек 08, 2010 0:39

squid tproxy + rejik. Несовместимость?

Сообщение vad73 »

Режиком пользуюсь давно и успешно (под FreeBSD).
Но недавно возникла потребность задействовать режим tproxy. Был взят пакет lusca-head r14809_5 из портов (по сути squid 2.x).
Так как FreeBSD 8.1 уже поддерживает режим tproxy - все прошло без проблем.

Вот основные настройки, ipfw:

Код: Выделить всё

${fwcmd} add 020 fwd 127.0.0.1,3128 tcp from any to not me 80 in via ${if}
${fwcmd} add 030 fwd 127.0.0.1,3128 tcp from not me 80 to any in via ${if}
и squid.conf:

Код: Выделить всё

http_port 127.0.0.1:3128 transparent tproxy
url_rewrite_program /usr/local/rejik/redirector
Rejik перестает отображать странички (возникают дикие тормоза) из "redirector.conf", типа:

Код: Выделить всё

url http://127.0.0.1/ban/spyware.html
как только в squid.conf добавляю параметр tproxy.

Вдруг кто-то сталкивался с таким? Или это глюк?

Slava
Site Admin
Сообщения: 2251
Зарегистрирован: Пт апр 02, 2004 12:34
Контактная информация:

Re: squid tproxy + rejik. Несовместимость?

Сообщение Slava »

Если страницы блокируются, но не выдает страницу запрета, попробуйте так:
url 302:http://127.0.0.1/ban/spyware.html

vad73
Сообщения: 6
Зарегистрирован: Ср дек 08, 2010 0:39

Re: squid tproxy + rejik. Несовместимость?

Сообщение vad73 »

Именно так и происходит: "блокируются, но не выдает страницу запрета".
Префикс 302: добавлял и действительно в этом случае в адресной строке браузера появляется "http://127.0.0.1/ban/spyware.html",
но сответственно ничего не отображается, так как обращение идет к локальной машине.
Да и реальный адрес прокси сервера не хочется засвечивать.

Slava
Site Admin
Сообщения: 2251
Зарегистрирован: Пт апр 02, 2004 12:34
Контактная информация:

Re: squid tproxy + rejik. Несовместимость?

Сообщение Slava »

vad73 писал(а):Да и реальный адрес прокси сервера не хочется засвечивать.
Тогда Вам надо как-то добиться, что бы клиент, набирая в браузере http://127.0.0.1/ban/spyware.html получал страницу с сервера.

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

Если же они все же идут на прокси, то можно попробовать опцией raw_change делать замену в урле.

vad73
Сообщения: 6
Зарегистрирован: Ср дек 08, 2010 0:39

Re: squid tproxy + rejik. Несовместимость?

Сообщение vad73 »

Это я немного "погорячился". Естественно никуда они не идут, получая 127.0.0.1 в адресной строке.

vad73
Сообщения: 6
Зарегистрирован: Ср дек 08, 2010 0:39

Re: squid tproxy + rejik. Несовместимость?

Сообщение vad73 »

Слава, тогда несколько вопросов:

1) Т.о. видимо на данный момент решение только одно - прописать в "redirector.conf" строку вида:
"url 302:http://172.16.5.55/ban/spyware.html", с реальным IP сервера (с засвечивание нашего сервера клиентам)?

2) И я так понимаю - что пока "нормального" решения в режиме tproxy (для FreeBSD) не существует?

3) Я понимаю - что tproxy под FreeBSD только появился, просто Вам как автору - лучше представлять процессы взаимодействия Squid'a и Rejik'a.
Но просто интересно - что это: проблемы Rejik'a, Squid'a или может быть маршрутизации. Интересно будете ли воспроизводить эту ошибку у себя?

Slava
Site Admin
Сообщения: 2251
Зарегистрирован: Пт апр 02, 2004 12:34
Контактная информация:

Re: squid tproxy + rejik. Несовместимость?

Сообщение Slava »

Попробуйте прописать без 302, но с реальным адресом прокси, типа url http://172.16.5.55/ban/spyware.html

vad73
Сообщения: 6
Зарегистрирован: Ср дек 08, 2010 0:39

Re: squid tproxy + rejik. Несовместимость?

Сообщение vad73 »

Попробовал. Не работает.

Slava
Site Admin
Сообщения: 2251
Зарегистрирован: Пт апр 02, 2004 12:34
Контактная информация:

Re: squid tproxy + rejik. Несовместимость?

Сообщение Slava »

У меня нет прозрачной прокси, проверить не могу, но народ пишет об успешном использовании
viewtopic.php?f=1&p=4627&sid=e99447df15 ... 747c#p4627
viewtopic.php?f=1&t=43

vad73
Сообщения: 6
Зарегистрирован: Ср дек 08, 2010 0:39

Re: squid tproxy + rejik. Несовместимость?

Сообщение vad73 »

Решил проблему!
Уточню мой конфиг: FreeBSD 8.1, lusca-head r14809_5(squid 2.x) + tproxy + WCCPv2 + ipfw, с одним сетевым интерфейсом.

Все это было сделано в помошь Cisco роутеру, в основном для снижения нагрузки на канал.
Весь нюанс оказался в том, что используется только один интерфейс (как на вход, так и на выход).
В этом случае маршрутизация вернувшихся пакетов д.б. прописана явно - в том числе и для страничек с отлупами, которые выдает Rejik.
Соответственно сейчас правила ipfw выглядят так:

Код: Выделить всё

# Default rule to transparent proxy
${fwcmd} add 020 fwd 127.0.0.1,3128 tcp from any to not me 80 in via ${if}
# Catch the packets that come back using the clients IPs
${fwcmd} add 030 fwd 127.0.0.1,3128 tcp from not me 80 to any in via ${if}
${fwcmd} add 035 fwd 127.0.0.1,3128 tcp from 127.0.0.1 80 to any out via ${if}	// for rejik
Надеюсь, что кому-то это пригодится.

Ответить