Консультация Oblako.kz

Настройка редиректора Squidguard

Squidguard — это программа-редиректор для прокси-сервера Squid.

Для установки SquidGuard используется пакетный менеджер. Например в Centos это yum.

yum install squidGuard

Теперь можно переходить к настройке SquidGuard. Его настройки стандартно находятся в файле /etc/squid/squidGuard.conf

Чтобы не вносить вручную адреса запрещенных сайтов можно скачать уже готовую. Они есть в интернете, например даже на официальном сайте. Некоторые из них бесплатны полностью, некоторые только для личного использования, некоторые чисто коммерческие.

Создадим папку для блеклистов используя команду создания каталогов mkdir с ключом -p, создающим также всю структуру каталогов, если ее нет.

mkdir -p /var/squidGuard/blacklists

Перейдем туда командой смены каталога cd.

cd /var/squidGuard/blacklists

Скачаем туда свежую базу.

wget http://www.shallalist.de/Downloads/shallalist.tar.gz

И распакуем командой tar

tar xzvf shallalist.tar.gz
  • x- распаковать архив
  • z - указывает что архив упакован архиватором gzip (т.е надо еще и разархивировать)
  • v - показывать ход выполнения
  • f - архивировать в файл (tar может архивировать и напрямую на устройства, например стримерные ленты)

Теперь настроим сам Squidguard. Его настройки хранятся в файле /etc/squid/squidGuard.conf. Это можно сделать любым текстовым редактором - например vi или nano.

vi /etc/squid/squidGuard.conf nano /etc/squid/squidGuard.conf

Ниже я приведу свой файл конфигурации с описанием параметров. Настройки также достаточно подробно описаны на официальном сайте squdguard.org.

#Каталоги для базы блокируемых сайтов и логов

dbhome /var/squidGuard/ logdir /var/log/squidGuard

#Так описываются временные периоды.

# s = sun, m = mon, t =tue, w = wed, h = thu, f = fri, a = sat

time workhours { weekly mtwhf 08:00 - 16:30 date *-*-01 08:00 - 16:30 }

#Адреса и/или имена пользователей источников. Можно указать в какие часы траффик будет фильтроваться, а в какие нет. Например группа Admin будет фильтроваться только в рабочие часы, а locnet всегда. Можно задавать ip отдельно через пробел, диапазоном через тире или полной записью CIDR ip/mask.

src admin { ip 10.0.0.17 user root within workhours } src locnet { ip 10.0.0.1-10.0.0.16 10.0.0.18 }
  • # Группы ресурсов назначения:
  • # adv - реклама
  • #good хорошие сайты
  • #violence - насилие и т.д.

Группа содержит список доменов для блокировки (domainlist), отдельных адресов (urls), а также страницу, которая будет показываться вместо запрашиваемой страницы (redirect). Пути к спискам доменов и url указываются относительно dbhome.

dest adult { domainlist BL/porn/domains urllist BL/porn/urls redirect http:/127.0.0.1/cgi/blocked.html }

Сами правила фильтрации выглядят как показано ниже. Слово pass означает разрешение, deny - запрет, any - любой. Например группа admin может ходить куда угодно, locnet в рабочие часы везде кроме порно, в остальное время вообще везде, все остальные никуда ходить не могут.

acl { admin { pass any } locnet within workhours { pass good !adult } else { pass any } default { deny any redirect http:/127.0.0.1/blocked.html } }

После завершения настройки SquidGuard необходимо выполнить перенастройку и перезапуск Squid. для этого в файле настройки /etc/squid/squid.conf необходимо раскомментировать опцию url_rewrite_program и вписать туда команду запуска SquidGuard. В нашем случае строка выглядит так:

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

После этого Squid необходимо перезагрузить и перечитать его файл конфигурации. Воспользуемся командой squid с ключем -k, посылающем Squid команду перечитать файл конфигурации.

squid -k reconfigure

На этом настройка редиректора Squidguard окончена. В нашей базе знаний вы найдёте ещё множество статей посвящённых различным аспектам работы в Linux, а если вы ищете надежный виртуальный сервер под управлением Linux, обратите внимания на нашу услугу — Аренда виртуального сервера на базе Linux.

 
Последнее обновление: 01.11.2023