Документация по ОС FreeBSD Воскресенье, 28.04.2024, 12:56
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Apache [58]
DNS [25]
FTP [27]
Mail [74]
Samba [24]
Squid [46]
SSH [23]
VPN [35]
РРР [20]
Net [173]

Главная » Статьи » Сеть » Squid

Запрещаем скачку файлов по расширению [2010]
В данной статье расскажу о том, как можно это сделать с помощью связки squid+rejik. Вообще-то, это можно сделать и с помощью самого squid'a, но мне показалось, что rejik это делает эффективнее. Предполагается, что squid у вас настроен и работает, в противном случае - настройку squid'a можно почерпнуть из статей на нашем портале. И так, приступим.

Установка

Обновляем порты и ставим squid. Рекомендую ставить версию 3.0:

cd /usr/ports/www/squid30 && make install clean

После установки открываем файл squid.conf и добавляем такую строчку

redirect_program /usr/local/rejik/redirector /usr/local/rejik/redirector.conf

Установка и настройка rejik

Идём в порты и ставим:

cd /usr/ports/www/rejik && make install clean

Выбираем такие опции:

[X] BAN  With banlists
[X] WWW  With error pages

После установки появится идём в каталог /usr/local/rejik открываем конфигурационный файл redirector.conf и приводим его к такому виду:

error_log /var/log/squid/rejik/redirector.err
change_log /var/log/squid/rejik/redirector.log
make-cache /usr/local/rejik/make-cache

work_ip 10.10.10.0/255.255.255.0

#bag guys net 10.10.10.0/24
<BG>
ban_dir /usr/local/rejik/banlists/bg
url http:// 127.0.0.1/access_denied.html

Первые 2 строчки определяют местоположение лог-файлов. У вас оно может быть другим. Очень важно, что бы эти файлы принадлежали squid:squid.
Параметр work_ip указывает к кому применять данные ограничения.
После этого собственно идёт описание ограничений: в угловых скобках имя правила, далее путь к папке, где находится файл prce (файл с регулярными выражениями) с ограничениями ну и наконец страничка с ошибкой.
А вот то, что мы поместили в файл /usr/local/rejik/banlists/bg/prce :

\.Z([\W_]|$)
\.ace([\W_]|$)
\.arj([\W_]|$)
\.au([\W_]|$)
\.avi([\W_]|$)
\.bz2([\W_]|$)
\.exe([\W_]|$)
\.gz([\W_]|$)
\.kar([\W_]|$)
\.mov([\W_]|$)
\.mp2([\W_]|$)
\.mp3([\W_]|$)
\.mid([\W_]|$)
\.midi([\W_]|$)
\.mpe([\W_]|$)
\.mpeg([\W_]|$)
\.mpg([\W_]|$)
\.mpga([\W_]|$)
\.ogg([\W_]|$)
\.qt([\W_]|$)
\.ra([\W_]|$)
\.ram([\W_]|$)
\.rar([\W_]|$)
\.snd([\W_]|$)
\.tar([\W_]|$)
\.tgz([\W_]|$)
\.vob([\W_]|$)
\.wav([\W_]|$)
\.zip([\W_]|$)

Сам список можно изменять по своему усмотрению.

Настройка squid.

Для нормальной работы требуется добавить следующую строчку в squid.conf:

redirect_program /usr/local/rejik/redirector /usr/local/rejik/redirector.conf

После этого перечитываем конфиг squid'a:

#squid -k reconfigure

и пробуем что-то запрещённое скачать. В логах rejika (не squid'a, а именно rejik'a, в redirector.log) должна появится строчка:

2010-03-22 12:08:40 MP3: 10.10.10.150 - http:// sitecheck2.opera.com/?host=www.mp3.ru&hdn=SFAcG1SS/Ycon4HnPdeGiw== (pcre rule#: 2)
2010-03-22 12:08:40 MP3: 10.10.10.150 - http:// www.mp3.ru/favicon.ico (pcre rule#: 2)
2010-03-22 12:09:15 MP3: 10.10.10.150 - http: //www.mp3.ru/ (pcre rule#: 2)

Значит всё работает. Если нет, тогда смотреть логи на предмет ошибок.
Иногда, когда Rejik не может пропарсить URL, он об этом пишет в файл redirector.err и разрешает скачивать контент:

2010-03-05 09:29:30 [1858] REDIRECTOR: WARNING: Can't parse url: http:// u11507.93.spylog.com/cnt?cid=1150793&p=0&c=1&fr=0&fl=9.0&px=16&sl=1.8&wh=1024x768&j=Y&
t=-120&pg=http://www.margosha.su/photos-lv.php&r=http://www.margosha.su/news-victoria-lukina.php&title=%u0412%u0438%u043A%u0442%u043E%u0440%u0438%u044F %u041B
%u0443%u043A%u0438%u043D%u0430(%u041B%u044E%u0441%u044F) :: %u0424%u043E%u0442%u043E%u0433%u0440%u0430%u0444%u0438%u0438 :: %u041C%u0430%u0440%u0433%u043E%u04
48%u0430 - %u0444%u0430%u043D %u043A%u043B%u0443%u0431 %u043F%u043E%u043A%u043B%u043E%u043D%u043D%u0438%u043A%u043E%u0432 %u0442%u0435%u043B%u0435%u0441%u0435
%u0440%u0438%u0430%u043B%u0430 :: %u041E%u043F%u0438%u0441%u0430%u043D%u0438%u044F %u0441%u0435%u0440%u0438%u0439, %u0444%u043E%u0442%u043E%u0433%u0440%u0430%
u0444%u0438%u0438, %u0438%u043D%u0442%u0435%u0432%u044C%u044E %u0430%u043A%u0442%u0435%u0440%u043E%u0432, %u0431%u0438%u043E%u0433%u0440%u0430%u0444%u0438%u04
38, %u043C%u0443%u0437%u044B%u043A%u0430 %u0438%u0437 %u0442%u0435%u043B%u0435%u0441%u0435%u0440%u0438%u0430%u043B%u0430 %u041C%u0430%u0440%u0433%u043E%u0448%
u0430&rn=0.26691776656350064. Pass.


Источник: http://root.ua/materialy/stati/full/article/zapreshchaem-skachku-failov-po-razshireniju/507.html
Категория: Squid | Добавил: oleg (27.05.2010) | Автор: skeletor
Просмотров: 2580 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
links

Copyright MyCorp © 2024