Инструменты пользователя

Инструменты сайта


www:squidguard

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

www:squidguard [2009/11/17 10:24]
www:squidguard [2009/11/17 10:24] (текущий)
Строка 1: Строка 1:
 +====== SquidGuard - борьба с нарушителями ======
  
 +===== Вступление =====
 +
 +Думаю перед каждым администратором рано или поздно встает вопрос,​ как бороться с нецелевым использованием интеренет трафика,​ или если по простому,​ как запретить пользователям скачивать музыку,​ видео, просматривать порно сайты и т.д. и т.п.
 +
 +Конечно это можно сделать и с помощью самого squid, с помощью acl, но на мой взгляд для этих целей более подходит squidGuard. Принцып работы тот же, т.е. мы создаем acl (Access Control List) списки управления доступом и затем разрешаем/​запрещаем определенным классам пользователей те или инные категории.
 +
 +В предыдущей статье я описывал настройку [[./​squid-ad.php|прокси сервера squid]]. Поэтому буду исходить из того, что squid у вас уже настроен и работает.
 +
 +===== Настройка squidguard =====
 +
 +Итак, как всегда,​ устанавливаем все ПО из портов,​ squidguard не исключение.
 +
 +<cli>
 +# cd /​usr/​ports/​www/​squidguard/​
 +# setenv SQUID_UID squid
 +# setenv SQUID_GID squid
 +# make install clean
 +# rehash
 +</​cli>​
 +
 +Вместе с squidGuard идет так называемый blacklist, т.е. список запрещенных сайтов,​ разбитых по категориям. Но я не рекомендовал бы его использовать,​ так как он довольно таки старый и маленький. Я рекомендую скачать [[http://​urlblacklist.com/​cgi-bin/​commercialdownload.pl?​type=download&​file=bigblacklist|bigblacklist]]. Хоть занимает он много ~18 МБ, но он того стоит.
 +
 +<cli>
 +# cd /tmp
 +# tar zxvf bigblacklist.tar.gz
 +x blacklists/
 +x blacklists/​CATEGORIES
 +x blacklists/​ads/​
 +x blacklists/​ads/​domains
 +x blacklists/​ads/​urls
 +x blacklists/​ads/​expressions
 +x blacklists/​adult/​
 +...
 +...
 +...
 +x blacklists/​weather/​urls
 +x blacklists/​webmail/​
 +x blacklists/​webmail/​domains
 +x blacklists/​webmail/​urls
 +x blacklists/​whitelist/​
 +x blacklists/​whitelist/​domains
 +x blacklists/​whitelist/​urls
 +</​cli>​
 +
 +После этого, удаляем текущие базы и копируем новые
 +<cli>
 +# rm -fr /​var/​db/​squidGuard/​*
 +# cp -R blacklists/ /​var/​db/​squidGuard/​
 +</​cli>​
 +
 +Если вы все сделали правильно,​ то у нас должна получиться такая структура папок
 +<cli>
 +# ls -l /​var/​db/​squidGuard/​
 +total 132
 +-rw-rw---- ​ 1 root   ​wheel ​ 3664 May  9 17:55 CATEGORIES
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 ads
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 adult
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 aggressive
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 antispyware
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 artnudes
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 audio-video
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 banking
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 beerliquorinfo
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 beerliquorsale
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 cellphones
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 chat
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 childcare
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 cleaning
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 clothing
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 culinary
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 dating
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 dialers
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 drugs
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 ecommerce
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 entertainment
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 frencheducation
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 gambling
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 games
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 gardening
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 government
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 hacking
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 homerepair
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 hygiene
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 instantmessaging
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 jewelry
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 jobsearch
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 kidstimewasting
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 mail
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 mixed_adult
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 mobile-phone
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 naturism
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 news
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 onlineauctions
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 onlinegames
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 onlinepayment
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 personalfinance
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 pets
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 phishing
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 porn
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 proxy
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 radio
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 reaffected
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 religion
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 ringtones
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 searchengines
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 sexual_education
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 sexuality
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 sportnews
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 sports
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 spyware
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 updatesites
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 vacation
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 violence
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 virusinfected
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 warez
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 weapons
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 weather
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 webmail
 +drw-rw---- ​ 2 root   ​wheel ​  512 May  9 17:55 whitelist
 +</​cli>​
 +
 +Собственно sports, violence, porn это и есть категории запретов (спорт,​ насилие,​ порнография). В файле /​var/​db/​squidGuard/​CATEGORIES приводится краткое описание к каждой из категорий.
 +
 +Теперь нам надо настроить squidGuard, для этого необходимо изменить его конфигурационный файл squidGuard.conf
 +<cli>
 +# cd /​usr/​local/​etc/​squid/​
 +# cp squidGuard.conf.sample squidGuard.conf
 +</​cli>​
 +
 +<​code>​
 +#
 +#   /​usr/​local/​etc/​squid/​squidGuard.conf
 +#
 +
 +# Указываем где у нас располагаются наши базы
 +dbhome /​var/​db/​squidGuard
 +
 +# Указываем где будет храниться log файл squidGuard
 +logdir /var/log/
 +
 +# Описываем классы доступа. Затем мы для каждого из классов
 +# (admins, clients) создадим свой набор правил доступа.
 +src admins {
 +ip  192.168.127.50
 +ip  192.168.127.100
 +}
 +
 +src clients {
 +ip  192.168.127.10
 +ip  192.168.127.11
 +ip  192.168.127.12
 +ip  192.168.127.13
 +ip  192.168.127.14
 +ip  192.168.127.15
 +}
 +
 +# В целях увеличения производительности желательно использовать
 +# диапазон адресов,​ например ip 192.168.127.10-192.168.127.15
 +
 +# Далее описываем все категории запретов
 +dest ads {
 +domainlist ​      ​ads/​domains
 +expressionlist ​  ​ads/​expressions
 +urllist ​         ads/urls
 +redirect ​        ​http://​192.168.127.230/​block/​ads.html
 +}
 +
 +dest adult {
 +domainlist ​      ​adult/​domains
 +urllist ​         adult/urls
 +redirect ​        ​http://​192.168.127.230/​block/​adult.html
 +}
 +
 +...
 +...
 +...
 +
 +dest webmail {
 +domainlist ​      ​webmail/​domains
 +urllist ​         webmail/​urls
 +redirect ​        ​http://​192.168.127.230/​block/​webmail.html
 +}
 +
 +dest whitelist {
 +domainlist ​      ​whitelist/​domains
 +urllist ​         whitelist/​urls
 +redirect ​        ​http://​192.168.127.230/​block/​whitelist.html
 +}
 +
 +# Ну а теперь непосредственно делаем раздачу слонов.
 +# Клиентам,​ разрешаем все, кроме запрещенного,​
 +# т.е. после слова pass вы должны указать все категории запрета,​
 +# которые вы описывали с помощью ключевого слова dest.
 +# знак ! означает отрицание,​ т.е. если вы написали pass !porn,
 +# это значит что данные пользователи не смогут просматривать сайты,
 +# попадающие под категорию porn
 +acl {
 +clients ​ {
 +            pass !ads !adult ... !porn !warez all
 +         }
 +
 +# Себе разрешаем все, кроме баннеров
 +admins ​  {
 +            pass !banner all
 +         }
 +
 +# И наконец,​ задаем правило по умолчанию - всем все запрещаем.
 +default ​ {
 +            pass     none
 +            redirect http://​192.168.127.230/​block/​default.html
 +         }
 +}
 +</​code>​
 +
 +Сейчас я напримере опишу принцип построения файла squidGuard.conf,​ чтобы не приводить все категории запрета,​ так как их очень много. А принцип построения у них одинаковый.
 +
 +Итак, в папке /​var/​db/​squidGuard есть папки - ads, adult, porno и т.д. Каждая из этих папок соответствует отдельной категории запрета. В каждой из этих папок может находиться 3 файла:
 +
 +    * domains - в данном файле содержатся запрещенные домены.
 +    * expressions - в данном файле содержатся регулярные выражения,​ которые применяются к запрашиваемому url. Т.е. для борьбы с порнографией вы добавляете сюда, наиболее часто встречаемые слова, например,​ pornstar, sexdream, showgirl, striptease) и т.д. Если какое-нибудь из этих слов встретится в url, то этот адрес будет заблокирован.
 +    * urls - из названия понятно,​ что здесь необходимо указывать запрещенные url, если вам надо заблокировать только определенный адрес, а не весь домен.
 +
 +===== Domainlist, Urllist, Expressionlist =====
 +
 +
 +==== DOMAINLIST ====
 +Например,​ если у вас в файле domains есть строка sex.com, то будут блокироваться следующие адреса:​
 +<​code>​
 +sex.com,
 +www.sex.com,​
 +whatever.sex.com,​
 +www.what.ever.sex.com
 +</​code>​
 +А адреса www.lesbian-sex.com,​ www.geysex.com уже не будут попадать под это правило.
 +
 +
 +==== URLLIST ====
 +Например,​ если у вас в файле urls есть строка sex.com/​geys,​ то будут блокироваться следующие адреса:​
 +<​code>​
 +http://​sex.com/​geys
 +http://​sex.com/​geys/​whatever,​
 +ftp://​sex.com/​geys/​whatever,​
 +ftp://​www.sex.com/​geys/​whatever,​
 +ftp://​web.sex.com/​geys/​whatever,​
 +ftp://​www3.sex.com/​geys/​whatever,​
 +</​code>​
 +А адреса sex.com/​lesbians,​ sex.com/​adult уже не будут попадать под это правило.
 +
 +==== EXPRESSIONLIST ====
 +
 +Допустим мы хотим блокировать загрузку аудио и видео файлов,​ наиболее распространенных форматов. В этом случае наиболее эффективным будет использование регулярного выражения следующего вида:
 +<​code>​
 +\.(ra?​m|mpe?​g?​|mov|movie|qt|avi|dif|dvd?​|mpv2|mp3|asf)($|\?​)
 +</​code>​
 +
 +Думаю синтаксис данного файла очевиден,​ именно благодаря этому списку запросы типа:
 +  * http://​www.music.ru/​whatever.mp3,​
 +  * http://​www.video.com/​thematrix.avi
 +  * http://​www.whatever.com/​whatever.mpg
 +попадут под категорию запрета и будут блокированы.
 +
 +Учитывайте эти особенности при добавлении новых правил.
 +Регулярные выражения и производительность
 +Советую не злоупотреблять регулярными выражениями,​ особенно при большой нагрузке. Так как они потребляют очень много ресурсов. Производительность зависит от сложности самого регулярного выражения,​ а так же от производительности библиотеки регулярных выражений,​ с которой был собран squidGuard.
 +
 +Каждая категория запрета описывается с помощью ключевого слова dest. И имеет следующий синтаксис
 +<​code>​
 +dest имя_категории {
 +domainlist ​      ​путь_к_файлу/​имя_файла
 +expressionlist ​  ​путь_к_файлу/​имя_файла
 +urllist ​         путь_к_файлу/​имя_файла
 +дествие,​ если адрес попал под данную категорию запрета
 +}
 +</​code>​
 +
 +<note tip>​Все пути в dest задаются относительно директории,​ указанной в параметре dbhome. Например,​ если вы указали dbhome /​var/​db/​squidGuard,​ а в dest указали - domainlist ads/​domains,​ то это значит,​ что у вас список с запрещенными доменами должен находиться в /​var/​db/​squidGuard/​ads,​ а сам файл должен называться domains.
 +</​note>​
 +
 +Для составления полного списка категорий запрета,​ вы заходите в каждую из папок находящихся в /​var/​db/​squidGuard/​ и в зависимости от того, какие там файлы находятся,​ составляете соовтетствующее правило. Рекомендую давать имя категории запрета,​ совпадающее с именем папки, например,​ если папка называется audio-video,​ то имя категории будет - dest audio-video. Особо ленивые могут взять готовый squidGuard.conf
 +
 +После того, как мы составили конфигурационный файл, нам необходимо преобразовать наши текстовые файлы в БД (используется Berkeley DB), для обеспечения наилучшего быстродействия при поиске данных.
 +
 +Для этого воспользуемся следующей командой
 +<cli>
 +# squidGuard -d -C all
 +2006-05-09 18:59:29 [40660] init domainlist /​var/​db/​squidGuard/​ads/​domains
 +2006-05-09 18:59:32 [40660] create new dbfile /​var/​db/​squidGuard/​ads/​domains.db
 +2006-05-09 18:59:32 [40660] init expressionlist /​var/​db/​squidGuard/​ads/​expressions
 +2006-05-09 18:59:32 [40660] init urllist /​var/​db/​squidGuard/​ads/​urls
 +2006-05-09 18:59:32 [40660] create new dbfile /​var/​db/​squidGuard/​ads/​urls.db
 +...
 +...
 +...
 +2006-05-09 19:09:35 [40660] init urllist /​var/​db/​squidGuard/​whitelist/​urls
 +2006-05-09 19:09:35 [40660] create new dbfile /​var/​db/​squidGuard/​whitelist/​urls.db
 +2006-05-09 19:09:35 [40660] squidGuard 1.2.0 started (1147201169.478)
 +2006-05-09 19:09:35 [40660] db update done
 +2006-05-09 19:09:35 [40660] squidGuard stopped (1147201775.362)
 +</​cli>​
 +
 +Как видно из сообщений файлы с БД называются urls.db и domains.db, старые файлы urls и domains нужно удалить. Теперь нам осталось только выставить необходимые права и создать лог файл.
 +<cli>
 +# chown -R squid:squid /​var/​db/​squidGuard
 +# chmod -R 640 /​var/​db/​squidGuard
 +# chmod 550 /​var/​db/​squidGuard
 +# chmod 550 /​var/​db/​squidGuard/​*
 +# touch /​var/​log/​squidGuard.log
 +# chown squid:squid /​var/​log/​squidGuard.log
 +</​cli>​
 +
 +Все, со squidGuard мы закончили. Теперь осталось только указать squid использовать в качестве редиректора squidGuard. Для этого внесем изменения в squid.conf.
 +
 +<​code>​
 +#
 +#   /​usr/​local/​etc/​squid/​squid.conf
 +
 +#  TAG: redirect_program
 +# Указываем путь к squidGuard
 +redirect_program /​usr/​local/​bin/​squidGuard
 +
 +#  TAG: redirect_children
 +# Количество одновременно запускаемых процессов squidGuard.
 +redirect_children 5
 +</​code>​
 +
 +<note tip>В ветке 2.6.STABLE произошли изменения и теперь вместо параметров redirect_program и redirect_children необходимо использовать url_rewrite_program и url_rewrite_children соответственно.
 +</​note>​
 +
 +Теперь у нас все готово к запуску нашей связки.
 +<cli>
 +# /​usr/​local/​etc/​rc.d/​squid.sh start
 +Starting squid.
 +
 +# cat /​var/​log/​squidGuard.log
 +2006-05-09 19:12:33 [40744] init domainlist /​var/​db/​squidGuard/​ads/​domains
 +2006-05-09 19:12:33 [40744] loading dbfile /​var/​db/​squidGuard/​ads/​domains.db
 +2006-05-09 19:12:33 [40743] init domainlist /​var/​db/​squidGuard/​ads/​domains
 +2006-05-09 19:12:33 [40743] loading dbfile /​var/​db/​squidGuard/​ads/​domains.db
 +2006-05-09 19:12:33 [40744] init expressionlist /​var/​db/​squidGuard/​ads/​expressions
 +...
 +...
 +...
 +2006-05-09 19:12:34 [40745] init urllist /​var/​db/​squidGuard/​whitelist/​urls
 +2006-05-09 19:12:34 [40745] loading dbfile /​var/​db/​squidGuard/​whitelist/​urls.db
 +2006-05-09 19:12:34 [40745] squidGuard 1.2.0 started (1147201953.012)
 +2006-05-09 19:12:34 [40745] squidGuard ready for requests (1147201954.939)
 +</​cli>​
 +
 +<cli>
 +# cat /​usr/​local/​squid/​logs/​cache.log | grep squidGuard
 +2006/05/09 19:12:32| helperOpenServers:​ Starting 5 '​squidGuard'​ processes
 +</​cli>​
 +
 +===== Тестирование squidguard =====
 +
 +После этого можно протестировать squidGuard, для этого воспользуйтесь скриптом
 +
 +<cli>
 +# perl squidGuard.pl
 +Введите тестируемый адрес:
 +192.168.127.10
 +</​cli>​
 +
 +В результате будет создан файл result.txt, с таким содержимым
 +
 +<cli>
 +# cat result.txt
 +Запрос:​ http://​www.sex.com 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​adult.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.adult.com 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​adult.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.aport.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.porno.ru 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​adult.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.chat.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.test.com 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​ads.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.aport.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​adv.aport.ru/​banners/​ban_1342.gif 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​ads.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.bs.yandex.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.riva.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​linkexchange.ru/​banners/​bnr_dfg12.gif 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​ads.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.sga/​read.mp3 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​audio-video.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.service.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.delit.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.teenslut.com 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​adult.html 192.168.127.10/​- - GET
 +
 +Запрос:​ http://​www.abort.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​engine.awaps.ru:​8000/​br/​GOLDEN.gif 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.rikki.ru 192.168.127.10/​- - GET
 +Результат:​ OK
 +
 +Запрос:​ http://​www.mus.ru/​read_me.mp3 192.168.127.10/​- - GET
 +Результат:​ http://​192.168.127.253/​block/​audio-video.html 192.168.127.10/​- - GET
 +</​cli>​
 +
 +Ну вот собственно и вся настройка. Теперь вы сэкономите много трафика.
 +
 +===== Обновление БД =====
 +
 +Часто возникает необходимость запретить или разрешить тот или иной url/​домен. Я специально создавал для каждой категории запрета свою страничку. Так намного легче будет найти под какую категорию запрета попал тот или иной адрес.
 +
 +После того, как вы узнали в какой категории содержится необходимый адрес, необходимо удалить или добавить его. Для этого мы создаем такой файл. Для примера я учитываю,​ что нужный адрес попал под категорию ADS.
 +
 +Для этого, мы создаем файл domains.diff в папке /​var/​db/​squidGuard/​ads следующего содержания
 +<​code>​
 ++domain1.com
 ++domain2.com
 ++domain3.com
 +...
 +-domain5.com
 +-domain6.com
 +-domain7.com
 +</​code>​
 +
 +Думаю, синтаксис и так понятен. Домены,​ перед которыми стоит знак + будут добавлены в список,​ а со знаком минус соответственно удалены из него. После того как вы создали файл, обновляем БД
 +
 +<cli>
 +# squidguard -d -u /​var/​db/​squidGuard/​ads/​domains.diff
 +2009-11-17 10:17:47 [20777] New setting: dbhome: /​var/​db/​squidGuard/​
 +2009-11-17 10:17:47 [20777] New setting: logdir: /​var/​log/​squid
 +2009-11-17 10:17:47 [20777] init domainlist /​var/​db/​squidGuard/​ads/​domains
 +2009-11-17 10:17:47 [20777] loading dbfile /​var/​db/​squidGuard/​ads/​domains.db
 +2009-11-17 10:17:47 [20777] update dbfile /​var/​db/​squidGuard/​ads/​domains.db
 +Processing file and database /​var/​db/​squidGuard/​ads/​domains.diff ​   ​
 +2009-11-17 10:17:47 [20777] update: added 3 entries, deleted 3 entries======================================] 100 % done
 +2009-11-17 10:17:47 [20777] squidGuard 1.2.0 started (1258445867.572)
 +2009-11-17 10:17:47 [20777] db update done
 +2009-11-17 10:17:47 [20777] squidGuard stopped (1258445867.686)
 +</​cli>​
 +
 +И даем команду squid на реконфигурацию,​ чтобы он заново загрузил обновленные БД.
 +<cli>
 +# squid -k reconfigure
 +</​cli>​
www/squidguard.txt · Последние изменения: 2009/11/17 10:24 (внешнее изменение)