Устанавливаем SquidGuard. Режем социальные сети и не только их. | Выделенный сервер своими руками

Устанавливаем SquidGuard. Режем социальные сети и не только их.

Администраторы Linux серверов, которые предоставляют доступ пользователей локальной сети к ресурсам сети Интернет, всегда сталкиваются с проблемой блокировки нежелательных адресов. Обычно под эту категорию попадают сайты порнографического содержания, варез, шпионский софт, социальные сети и так далее. Одним из наиболее продвинутых средств для такой блокировки является URL редиректор SquidGuard.

Заметка предназначена для RPM-Based дистрибутивов линукс, но с небольшой доработкой может использоваться и в версиях линукс, основанных на других репозитариях.
Установка SquidGuard достаточно проста. Заходим в консоль сервера как пользователь root и пишем:
wget http://www.squidguard.org/Downloads/squidGuard-1.4.tar.gz
tar zxvf squidGuard-1.4.tar.gz
cd squidGuard-1.4
./configure
make
make install
Для работы SquidGuard также необходимо наличие в системе установленной BerkeleyDB. Как пишет Википедия:"Berkeley DB (BDB) — высокопроизводительная встраиваемая база данных, реализованная в виде библиотеки". Вот именно в формате Berkeley DB и будут храниться и использоваться SquidGuard-ом списки URL для фильтрации.
Проверим есть ли в системе установленная Berkeley DB. Подходит для CentOS 4.x
rpm -qa | grep db4
Если вывод команды примерно такой:
db4-utils-4.2.52-7.1
db4-devel-4.2.52-7.1
db4-4.2.52-7.1

значит все в порядке.
Если нет, то устанавливаем Berkeley DB командой: yum install db4* и проводим установку SquidGuard повторно.
Далее нам необходимо скачать список запрещенных URL. К счастью создавать их самостоятельно необходимости нет. Есть соответствующие сервисы в сети. Я использую бесплатный сервис http://www.shallalist.de/ Скачиваем архив ссылок и распаковываем его в каталог /usr/local/squidGuard/db. В нашем случае выполняем следующие действия:
cd /usr/local/squidGuard/db
wget http://www.shallalist.de/Downloads/shallalist.tar.gz
tar zxvf shallalist.tar.gz
cp -R BL/* /usr/local/squidGuard/db/
rm -R BL
Настройка SquidGuard выполняется с помощью редактирования файла squidGuard.conf в каталоге /usr/local/squidGuard. Настроек хватает в нем, они хорошо описаны в в соответствующем примере по умолчанию. Приведу один из наиболее простых конфигов:
dbhome /usr/local/squidGuard/db
logdir /usr/local/squidGuard/logs
dest porn {
domainlist porn/domains
urllist porn/urls
}
dest redirector
{
domainlist redirector/domains
urllist redirector/urls
}
dest spyware
{
domainlist spyware/domains
urllist spyware/urls
}
acl {
default {
pass !redirector !porn !spyware all
redirect http://172.16.0.1/block.html
}
}
Далее необходимо инициализировать наш блэклист, заданный в squidGuard.conf, а именно, преобразовать список ссылок в соответствующий db файл. Делается это следующей командой:
squidGuard -C all
chown -R squid /usr/local/squidGuard/db/*
где squid - это пользователь, от имени которого в системе запускается прокси сервер Squid. При изменении конфиг файла squidGuard.conf, а именно при добавлении новых списков блокировки, каждый раз необходимо повторять вышеуказанную инициализацию.
На этом настройка SquidGuard завершена. Перейдем к настройке squid, чтобы он начал использование SquidGuard для блокировки нежелательных URL.
Открываем файл squid.conf и вставляем в него следующую строку (для версии squid 2.5.*)
redirect_program /usr/local/bin/squidGuard -c /usr/local/squidGuard/squidGuard.conf
Для версии squid 2.6.* строка будет выглядеть так:
url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/squidGuard/squidGuard.conf
После чего перезапускаем прокси сервер и наслаждаемся полученным эффектом.

Привет. Помогите пожалуйста..

Привет. Помогите пожалуйста.. как филировать HTTPS трафик?

http://www.youtube.com/ блокируются

HTTPS://www.youtube.com/ Не блокируются

Небольшое добавление по

Небольшое добавление по поводу подключаемых блэклистов - есть еще неплохой http://www.urlblacklist.com и недавно запущенный http://www.digincore.org - там есть и встроенный контроль качества списков, и регулярное обновление, и ориентация на русскоязычные сайты.

Во времена стихиного бедствия

Во времена стихиного бедствия под названием Conficer/Kido, squidGuard очень помог сдержать работу этой заразы и недопустить ее обновления с дальнейшей мутацией.
Но версия 1.2 доблестного squidGuard просто ложилась под натиском сетевого червя.
Делал белые списки для подверженных заражению и черные для неподверженных - чтоб не шатались где не надо в рабочее время.

Кстати, установка пакетом очень облегчит жизнь: можно легко снести и обновить.
RPM-системы: http://www.squidguard.org/Downloads/Contrib/squidguard-1.4-1_ArcosCom.i386.rpm
Под debian/ubuntu можно взят пакет отсюда: https://launchpad.net/~grexk/+archive/ppa/+build/999680

Думаю не стоит специально

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

предлогаю провести скрытое

предлогаю провести скрытое исследвание, а потом опубликовать результат
намыльте мне жабир, ffsdmad@jabber.ru

Во первых: за увеличением

Во первых: за увеличением параметров моего сайта я не гонюсь, люди сами как-то приходят. Спасибо кстати что поинтересовались ими. Во вторых: хочу поздравляю вас с разработкой таких улетных фильтров как у вас на сайте. Спам не проходит? Супер! Поделиться наработками с общественностью желания нет? А у меня, к сожалению, по 300 с лишним сообщений о продаже виагры и ксанакса, и ролексов, и всякой ерунды приходило в день. После установки капчи ситуация несколько улучшилась. Но, действительно, делать что-то нужно. Один из вариантов: удалить поле URL в форме коментариев. ДУмаю тогда я буду совершенно неинтересен для спамеров и спокойно уберу капчу. Может вместе с критикой дадите совет? Какое решение использовать?

По теме материала. Каждый решает одни и те же задачи по-своему. Я свое мнение не навязываю никому, а лишь пишу о том, как это возможно сделать. Стараюсь подать материал в максимально универсальном виде. Хотя и затачивается у меня ввсе в основном под CentOS. Для чего ставить системный софт в $HOME мне вообще понятно мало. Хотя, опять же, у каждого свои пути.

зы, по теме не считаю ваш

зы, по теме
не считаю ваш подход к установке софта в пакетном дистрибутиве правильным и достойным примера перед другими
либо ставим делаем это в шлаке
либо ставим в $HOME
либо собираем пакет для своего дистра

Объясните какой спам вас

Объясните какой спам вас достал?
с параметрами вашего сайта он далеко не самая интересная добыча
вот у меня, параметры выше, включая посещаемость
а ни какой капчи нет и нет ни каких спамеров
Разумеется есть коменты, но они людьми оставлены
Людьми выражающими мнение по поводу заметок, это разумеется не является спамом который нужно автоматически отбрасывать
с марта месяца, я тогда разработал 2 очень простых фильтра, у меня нет ни одной спамины содержащей рекламу или не относящихся по теме к блогу или заметкам
капчой хозяин блога унижает своих посетителей

Большое спасибо за

Большое спасибо за коментарии. Пусть и нелестные. Для начала попробую ответитиь на ваши вопросы и критику. Во первых: статья ужастной сделана специально. Вы, наверное, не представляете сколько раз эту заметку уже содрали на другие ресурсы. В оригинале я ее поправлю. Во вторых. В начале своих заметок я писал о том, что я работаю в RedHat Based дистрибутивах и писать буду в основном для них. Но название статьи дополню. Насчет капчи - обязательно поправлю, но спам на самом деле уже реально поднадоел. Может быть предложите решение получше? Опять же насчет критики. Уважаемый selivan! Не желаете поучаствовать в написании статей? Только не молчите. Господину ffsdmad. В репозитариях обычно лежат староватые дистрибутивы. В моем случае версия 1.2 А я ставлю 1.4 А она намного лучше. Почитайте список фиксов и Вам многое станет ясно. Насчет капчи. Без мата никак нельзя? Почитал ваш блог. Многое понял.

Еще раз спасибо за отзывы, хоть через капчу пробиться было сложно. :)

А в репозитариях разве нет

А в репозитариях разве нет готового пакета?

и ешё, хочешь чтобы люди к тебе тянулись сделай что то с коментами
капча - просто охуевайтунг, особенно учитывая, что теряется набранный текст
обязательный верхний регистр - как бы намекает, что автор блондинка

> Заходим в консоль сервера

> Заходим в консоль сервера как пользователь root и пишем:
squidGuard есть в большинстве распространённых дистрибутивов, собирать нужно только если нужна самая свежая версия или какие-нибудь специфичные опции сборки. А если gcc и прочий build-essential не установлен? Обычное дело в десктопных дистрибутивах вроде Ubuntu/Mandriva. Новичок может ничего об этом не знать.
>...
> устанавливаем Berkeley DB командой: yum install db4*
selivan@tux:~$ yum install db4*
bash: yum: command not found
Далеко не у всех стоит Fedora/RedHat. Меня конечно это не смутит, но статья ведь рассчитана на начинающих! Назови её "Устанавливаем squidGuard в Fedora" или объясни, что yum - менеджер пакетов, назови аналоги в других дистрибутивах. Смотри как это выглядит с точки зрения новичка: "В статье написано какое-то непонятное консольное заклинание. У меня оно не работает, ругается по-страшному! А у них всё работает! Непонятный этот ваш линукс, сложный и глючной. Ухожу :( "
> Приведу один из наиболее простых конфигов
А объяснять что в этом конфиге написано кто будет?!! Одна из немаловажных граней Unix-way состоит в полном понимании происходящего процесса. Бездумное выставление галочек(или, что одно и то же, бездумное копирование найденного в сети конфига) иногда(только иногда!) работает в Window$, эта система заточена на использование не слишком грамотным пользователем. В *nix такое поведение приведёт к дальнейшим проблемам, даже если поначалу такое решение заработало.
> Открываем файл squid.conf и вставляем в него следующую строку
Опять то же самое. Что значит эта строка? Что такое редиректор, как он используется? Не, не будем рассказывать, будем дальше шаманство разводить: эту строчку копипастим сюда, эту - туда...

Статья ужасна, даёт новичкам список инструкций безо всякого объяснения, да ещё и работающих не во всяком дистрибутиве. В результате множатся толпы людей, уверенных что линукс - сложная, непонятная и глючная фигня. Автору незачёт

З. Ы. Капча абсолютно непробиваемая

"Статья ужасна, даёт новичкам

"Статья ужасна, даёт новичкам список инструкций безо всякого объяснения, да ещё и работающих не во всяком дистрибутиве. В результате множатся толпы людей, уверенных что линукс - сложная, непонятная и глючная фигня. Автору незачёт"

видимо все таки обеспечивать в стаьях беспроблемность новичкам, не ведающим как установить дистрибутив без пакета и как обеспечить его библиотеками - не является задачей автора? а может быть и этого сайта. Статья о гварде и его настройках
а пользователи иных дистрибутивов итак видят в тексте то что им надо - фамилиё библиотек и на своих дистрибутивах и без юма справятся

кстати при компиляции из библиотек еще бизон бывает нужен

а статья нормальная для не новичков и новичков желающих стать линуксоидами, кому не дано и сильно трудно - марш на винду эникеить