Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #89, МАЙ 2006 г.

Экономим деньги с туксом

Колисниченко Денис

Хакер, номер #089, стр. 089-100-3


// директория, где будет помещен кэш; первое число - это размер кэша в Мб, если нужно, чтобы он занимал весь раздел, отними от размера раздела 20% и укажи это значение; второе - количество каталогов первого уровня; третье - количество каталогов второго уровня

cache_dir /usr/local/squid 1024 16 256

// хосты, с которых разрешен доступ к прокси

acl allowed_hosts src 192.168.1.0/255.255.255.0

acl localhost src 127.0.0.1/255.255.255.255

// список разрешенных портов

acl allow_ports port 80

acl allow_ports port 21

acl SSL_ports port 443 563

// запрещаем все порты, кроме указанных в "allow_ports"

http_access deny !allow_ports

// запрещаем метод CONNECT для всех портов, кроме указанных в "acl SSL_ports"

http_access deny CONNECT !SSL_ports

// разграничиваем права доступа

http_access allow localhost

http_access allow allowed_hosts

http_access allow SSL_ports

http_access deny all

// опционально можно прописать пользователей, которым разрешено применять squid (den, admin)

ident_lookup on

acl allowed_users user den admin

http_access allow allowed_users

http_access deny all

Конечно, это далеко не полный конфиг, но дальше, думаю, ты справишься сам. Замечу только, что список узлов, которым разрешен http-доступ, можно задавать в отдельном файле, например:

acl allowed_hosts src "/etc/squid/hosts.txt"

Сам /etc/squid/hosts.txt в этом случае будет выглядеть так:

# vi /etc/squid/hosts.txt

# Денис

192.168.1.2/255.255.255.255

# Макс

192.168.1.3/255.255.255.255

# Лена

192.168.1.4/255.255.255.255

Отдельный файл использовать удобнее, чтобы не "засорять" основной конфиг. Обрати внимание: права доступа к hosts.txt должны быть такими же, как к squid.conf. Теперь попробуем создать черный список URL:

acl blacklist url_regex games

http_access deny blaklist

http_access allow all

Данный черный список не пропускает URL'ы, содержащие слово "games". По аналогии можно создать отдельный файл и записать в него все "плохие" URL'ы. Заметь, все это мы сделали средствами Squid, не привлекая squidGuard.

Запустить squid просто:

# service squid start

Не забудь, что клиентов нужно настроить на порт 3128/tcp.

[squidGuard - личный охранник твоего трафика]

В предыдущем примере мы заблокировали доступ к любому узлу, в URL'е которого присутствует слово "games". Ясно, что тут никаких сил не хватит описывать все URL'ы, содержащие запрещенный контент, а именно: порно, насилие, рекламу, информацию о наркотиках и тому подобные вещи. Таких узлов в мире невероятно много. И тут на помощь приходит squidGuard. Он дополняет Squid базой данных по запрещенным узлам. Ясно, что эту БД нужно периодически обновлять, но зато больше не нужно самому искать узлы с запрещенным контентом и вносить их в список - все уже сделано за нас. Существует три основные базы:

* база squidGuard, доступна по адресу: www.squidguard.org/blacklist/

* база MESD, доступна по адресу: squidguard.mesd.k12.or.us/blacklists.tgz

* база Dansguardian, ее адрес: blacklist.dansguardian.org/cgi-bin/download.pl?type=download&file=bigblacklist

Мы будем использовать базу squidGuard, поскольку она поставляется "в комплекте" с самим squidGuard. Данная база охватывает рекламу, порносайты, посвященные агрессии, наркотикам, азартным играм, насилию и т.д. Представляешь, сколько трафика сэкономит фирма, если закрыть пользователям доступ ко всем этому? После установки база обычно устанавливается в каталог /usr/share/squidGuard-1-x-x/db.

Назад на стр. 089-100-2  Содержание  Вперед на стр. 089-100-4