среда, 14 ноября 2007 г.

Базовая конфигурация SquidGuard



( оригинал - http://www.squidguard.org/Doc/configure.html )


Когда SquidGuard успешно установлен, вы захотите настроить его в соответствии с вашими нуждами. Простая конфигурация устанавливается в каталог /usr/local/squidGuard (или в любой другой каталог, который вы укажете при инсталляции).
Ниже вы найдете три примера для базовой конфигурации SquidGuard.

1.Самая простая конфигурация:

#
# CONFIG FILE FOR SQUIDGUARD
#

dbhome /usr/local/squidGuard/db
logdir /usr/local/squidGuard/logs

dest porn {
domainlist porn/domains
urllist porn/urls
}

acl {
default {
pass !porn all
redirect http://localhost/block.html
}
}

Всегда проверяйте, что самая первая строка в вашем файле squidGuard.conf не пуста!
Параметры имеют следующее значение:

dbhome
  • Местоположение «черных» списков
logdir
  • Местоположение журнальных файлов
dest
  • Определение категории блокирования
acl
  • Действующее определение блокирования. В нашем примере отображено только правило по умолчанию. У вас может быть более чем одно определение acl. Категория porn, определенная вами в параметре dest, блокируется выражением !porn. Вам следует добавить идентификатор all после списка блокирования или ваших пользователей, которые не будут иметь возможность веб-серфинга вообще.

Изменение более чем одной категории для блокирования

Во-первых, определите ваши категории. Определите их подобно категории porn в примере выше. Например:

dest adv {
domainlist adv/domains
urllist adv/urls
}
dest porn {
domainlist porn/domains
urllist porn/urls
}
dest warez {
domainlist warez/domains
urllist warez/urls
}
Теперь ваш acl должен выглядеть так:

acl {
default {
pass !adv !porn !warez all
redirect http://localhost/block.html
}
}

2.«Белый» список

Иногда требуется разрешить определенным URL и доменам, даже если они являются частью списка блокирования по некоторым причинам. В этом случае вам нужно создать белый список с этиси доменами и URL.

dest white {
domainlist white/domains
urllist white/urls
}

acl {
default {
pass white !adv !porn !warez all
redirect http://localhost/block.html
}
}

В этом примере мы предполагаем, что ваш белый список располагается в каталоге, называемом white, внутри каталога черных списков, который вы определили параметром dbhome. Убедитесь, что ваш идентификатор white — первый в строке директивы pass. Он не должен иметь восклицательного знака вначале (иначе все данные, располагающиеся в white, будут также блокироваться).

3. Инициализация черных списков.

До того, как вы запустите свой SquidGuard, вы должны инициализировать черные списки, т.е. конвертировать их из текстовых файлов в db-файлы. При использовании db-формата будет ускорен процесс проверки и блокировки.
Инициализация выполняется следующей командой:

squidGuard -C all
chown -R squiduser /usr/local/squidGuard/db/*

Вторая команда гарантирует, что ваш squid будет иметь доступ к черным спискам. Вместо squiduser используйте uid вашего squid.
В зависимости от размера ваших черных списков и мощности вашего компьютера это может занять некоторое время. Если что-то выполняется успешно, вы должны увидеть в ваших журнальных файлах нечто подобное следующим строкам:

2006-01-29 12:16:14 [31977] squidGuard 1.2.0p2 started (1138533256.959)
2006-01-29 12:16:14 [31977] db update done
2006-01-29 12:16:14 [31977] squidGuard stopped (1138533374.571)

Если вы посмотрите в каталог, содержащий файлы domains и urls, вы увидите, что дополнительные файлы уже созданы: domains.db и urls.db. Эти новые файлы должны быть не пусты!
Конвертируются только те файлы, которые вы определили, чтобы блокировать или определить белые списки в вашем файле squidGuard.conf.