Прокси-каскад, проброс трафика через Squid

91 views
Skip to first unread message

smallcms

unread,
Jun 22, 2009, 4:57:04 PM6/22/09
to NoDeny
Необходимо для пресета "1" перебросить трафик клиентов этого пресера с
80 порта на локальный Squid (для последующего переброса каскадом в
вышестоящий Squid). Вижу в направлении можно указать номер таблицы.
Само правило будет что-то вроде
rdr pass inet proto tcp from any to !192.168.0.23 port 80 ->
192.168.0.23 port 3128

Поясните, пожалуйста, нужно что-то менять в nofire.pl или в
rc.firewall?
Как создать таблицу (кажем под номером 121)?

Версия NoDeny 49.17, установлен по инструкции (ipfw, ipcad).

s...@ukr.net

unread,
Jun 22, 2009, 8:14:04 PM6/22/09
to NoDeny
Не совсем понял фразу "клиенты этого пресета". Пресет характеризует
удаленную сторону. т.е. сети с которыми идет обмен трафика. Не
клиенты. Или ты имеешь ввиду, что клиенты, использующие тарифы, у
который указан пресет 1, должны заворачиваться на прозрачный прокси-
сервер?

Предлагаю поступить иначе: в тарифах "создай галочку" "заворачивать на
прокси-сервер" - см. tarif.pl, там добавишь одну строку, интуитивно
понятно, уверен не ошибешься. В самом nofire.pl смотри в plan_flags
на предмет утановки этого флага:

if ($p->{plan_flags}=~/r/) { Записать ip в таблицу редиректа на
сквид }

где r - имя флага, который ты укажешь в tarif.pl

smallcms

unread,
Jun 23, 2009, 10:02:41 PM6/23/09
to NoDeny
Спасибо, всё получилось. Не уверен по поводу размещения строки правила
в rc.firawall, но всё же (как пометка).

tarif.pl:
'r' => 'заворачивать на прокси-сервер',

nofire.pl:
# Пробрасывать трафик через прокси-сервер
if ($plan_flags=~/r/)
{ # добавляем ip в 122 таблицу. номер 122 взят как свободный.
&Add_Tbl_Rule(122,$ip);
&Add_Tbl_Rule(122,$ip);
}

cd /usr/ports/www/squid/
make config
отметил
[X] SQUID_DELAY_POOLS
[X] SQUID_SNMP
[X] SQUID_CARP
[X] SQUID_SSL
[X] SQUID_WCCP
[X] SQUID_IDENT
[X] SQUID_PF
[X] SQUID_IPFILTER
[X] SQUID_KQUEUE

make install clean

echo squid_enable=\"YES\" >> /etc/rc.conf

ee /usr/local/etc/squid/squid.conf
добавил "transparent"
http_port 3128 transparent

ee /etc/rc.firewall
${f} add 54 fwd 127.0.0.1,3128 tcp from "table(122)" to any 80 in

насчёт последнего не уверен, а так получился http-акселератор. по
крайней мере у меня работает.

Reply all
Reply to author
Forward
0 new messages