Squid: режем порнуху

Быстрый способ порезать порнуху:
В /etc/squid/squid.conf добавляем:
acl porn-urlregex url_regex -i "/etc/squid/porn-urlregex"
acl porn dstdomain -i "/etc/squid/porn"
http_access deny porn-urlregex
http_access deny porn

Делаем файл для правила porn-urlregex
cat /etc/squid/porn-urlregex
porn|sex|blowjob|xxx|gay|lesb|fuck|adult

Здесь главное не переусердствовать.
Ну а файл /etc/squid/porn с базой порно хостов ищем в интернете и пользуем, не выкладываю здесь, скажу лишь, что желательно брать те которые хоть иногда обновляются.
У меня текстовый файл почти 30 мегабайт, где взял не помню 🙂

Squid: режем баннеры

Достали меня всяческие баннеры на веб-ресурсах.
И вспомнил я о кеширующем прокси компании. 🙂
И был это старый добрый squid.
Старый в прямом и переносном смысле ибо centos 4.7 ну никак не назовешь новым )))
Чаще всего для резания баннеров и т.д применяется связка c rejik.
Мне это решение показалось чересчур обременительным на данном этапе, поэтому я ограничился перловым скриптом, который каждый может адаптировать под свои нужды.
В конец /etc/squid/squid.conf добавляется две строчки:
redirect_program /etc/squid/redirector.pl
redirect_children 5
Т.е. мы просто указываем путь к скрипту, осуществляющему сам редирект и указываем количество процессов.
Ну и собственно сам скрипт:
# cat /etc/squid/redirector.pl
#!/usr/bin/perl
$|=1;
while (<>) {
s@.*rambler.ru/top100.cnt\?.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*/cgi-bin/banner.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*cgi/bn.pl.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*/advert.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*/adverts.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*banner.linkexchange.com.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*www.linkexchange.ru/cgi-bin/.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*/cgi/flamingo-image.pl.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*bizlink.ru/cgi-bin/irads.cgi.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*/cgi-bin/ads/.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*www.geocities.com/sponsor/.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*reklama.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@http://1000.stars.ru/cgi-bin/1000.cgi.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*ranker/ranker.asp.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*adnet.com.ua/banners/.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*adriver.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*ad_click.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*b.ex.ua.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*k.img.com.ua/static/img/banners/.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*jsu.dt00.net.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*adonweb.ru.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*rmbn.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
s@.*r.mail.ru.*@http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif@;
print;}

Т.е. всё что подпадает под условия редиректится на прозрачный гиф размером 1 на 1 пиксел
http://upload.wikimedia.org/wikipedia/commons/c/ce/Transparent.gif
Вы же можете указать альтернативный путь к картинке.
Теперь баннеров стало гораздо меньше, а если какой и пролезет – можно добавить в скрипт и сказать squid -k reconfigure – данная команда перечитывает конфиг сквида.