acl banners_path_regex urlpath_regex «/usr/local/Squid/etc/banners_path_regex»

acl banners_regex url_regex "/usr/local/Squid/etc/banners_regex"

acl banners_exclusion url_regex "/usr/local/Squid/etc/banners_exclusion"

http_access deny banners_path_regex !banners_exclusion

http_access deny banners_regex !banners_exclus ion

Вариант 2

Замена рекламных баннеров на свою картинку, которая находится на локальном для proxy-сервера компьютере.

1. Определяем сайты банерных сетей и создаем для них регулярные выражения.

2. На своем сервере создаем «заменитель» рекламных картинок – файл mybanner.gif.

3. Настраиваем перенаправление (редиректор) в файле Squid.conf – redirect_program /usr/local/Squid/bin/banner.pl.

4. Создаем прстой скрипт на Perl – banner.pl:

#!/usr/bin/perl

$|=1;

while (<>)

{

s@регулярное-выражение@httр://www.myhost.оrg/mybanner.gif@;

print;

}

Конечно, можно сделать более элегагантно, однако данный метод работает, а настроить proxy-сервер можно за пару минут.

Разделение внешнего канала

Часто бывает так, что у вас есть внешний канал – скажем, 128 Кбит, и есть несколько групп пользователей с определенным приоритетом. И требуется, чтобы группа 1 имела одну фиксированную ширину наружного канала (скажем, 64 Кбит), а группа 2 и 3 – ширину наружного канала по 32 Кбит. Для решения этой непростой задачи мы также можем воспользоваться Squid.

Немного терминологии:

• пул – набор групп «емкостей» определенного класса;

• группа «емкостей» – часть пула, привязанная к хосту, сети или общая для всех;

• «емкость» ограниченного объема – та, в которую с определенной скоростью вливается внешний трафик, и из которой он раздается клиенту.

Определены три класса пулов:

• одна «емкость» на всех из этого класса;

• одна общая «емкость» и 255 отдельных для каждого хоста из сети класса С;

• 255 «емкостей» для каждой сетки класса В и отдельная «емкость» для каждого хоста.

Пример конфигурации Squid для трех классов пулов:

delay_pools 3 #3 poolы

delay_class 1 1 # 1 pool 1 класса

delay_class 2 1 # 2 pool 1 класса

delay_class 3 3 # 3 pool 3 класса

delay_access 1 allow staff

delay_access 1 deny all

delay_access 2 allow students

delay_access 2 deny all

delay_access 3 allow college

delay_access 3 deny all

delay_parameters 1 640000/640000

delay_parameters 2 64000/64000

delay_parameters 3 64000/64000 32000/64000 6400/32000

Строка, определяющая максимальную ширину виртуального канала, имеет следующий вид:

delay_parameters pool total_rest/total_max net_rest/net_max ind_rest/ind_max

где:

• pool – номер пула, для которого определяются каналы;

• total – ширина канала на всех;

• net – ширина канала на подсеть;

• ind – ширина канала на отдельный адрес;

• rest – скорость заполнения (байт/с);

• max – объем «емкости» (байт).

Обработка статистики

В стандартную поставку пакета Squid входят скрипты, написанные на Perl, позволяющие создавать отчеты о работе программы Squid:

Перейти на страницу:

Все книги серии Наиболее полное руководство

Похожие книги