Режем баннеры рекламы squidGuard'ом используя листы Adblock

Jul 17, 2013 11:21



для начала ставим squidGuard

apt-get install squidguard

в debian он ставится по умолчанию в /usr/bin/squidGuard и создает конфиг /etc/squid/squidGuard.conf это важно учитывать при правке конфигов ниже.
правим конфиг файл squid

nano /etc/squid/squid.conf

добавляем строку с учетом расположения файлов

url_rewrite_program /usr/bin/squidGuard -c /etc/squid/squidGuard.conf
url_rewrite_children 5

вторая строчка количество одновременных обработчиков squidGuard по желанию чем больше тем быстрее отдастся страничка пользователю.
Далее идем на сайт https://easylist.adblockplus.org/en/ и качаем в /tmp/ easylist на момент написания статьи он хранился по https://easylist-downloads.adblockplus.org/easylist.txt
Рядом со скаченным файлом создаем adblock.sed со следующим содержимым

/@@.*/d;
/^!.*/d;
/^\[.*\]$/d;
s#http://#^#g;
s,[.?=&/|()[],\\&,g;
s#*#.*#g;
s,\$.*$,,g;

сохраняемся и выполняем

cd /tmp #если качали в tmp все вышеуказанные файлы.
mkdir /var/lib/squidguard/adblock
cat easylist.txt | sed -f adblock.sed > /var/lib/squidguard/adblock/expressions

Ну и наконец правим файлик /etc/squid/squidGuard.conf

logdir /var/log/squidguard
dbhome /var/lib/squidguard

dest adblock {
expressionlist adblock/expressions
}
acl {
default {
pass !adblock all
redirect http://ya.ru
}
}

Обязательно генерим db для squidGuard'a командой

squidGuard -d -C all

И рестартим squid /etc/init.d/squid restart
проверяем на каком нибудь сайте с рекламой qiq.ws например)

Previous post Next post
Up