Нередко возникает необходимость блокировки доступа для пользователей к отдельным сайтам. Особенно это актуально на рабочих серверах, когда необходимо заблокировать доступ пользователей к социальным сетям, развлекательным порталам, сайтам знакомств и прочему сетевому изобилию отнимающему массу рабочего времени.
К счастью, в Squid это делается довольно легко и быстро.
Пути, описываемые в статье относятся в первую очередь к дистрибутиву Linux Debian. Если у Вас другой, то пути к конфигурационным файлам могут немного отличаться.
Создаем файл /etc/squid/block.acl. И заполняем его сайтами, которые подлежат блокировке:
odnoklassniki.ru vkontakte.ru vk.com facebook.com fishki.net
Теперь открываем конфигурационный файл Squid /etc/squid/squid.conf. В секции acl добавляем строку:
acl block dstdomain "/etc/squid/block.acl"
Важно не забыть поставить в кавычки путь к файлу с заблокированными сайтами!
В секцию http_access добавляем строку:
http_access deny block
Важно поставить эту строку раньше всех остальных инструкций http_access!
Теперь перезагружаем Squid:
# /etc/init.d/squid restart
Все должно заработать, точнее — сайты указанные в списке у пользователей не должны открываться. Если все еще открываются или при перезапуске Squid замкнуло, ищите где Вы сделали ошибку в двух несчастных конфигурационных строчках.
Доброго времени суток!!!
А как реализовать блокировку по времени этого списка сайтов???
Спасибо!!!
Приветствую.
Для управления правилами доступа по времени стоит использовать SquidGuard. Как его настраивать в связке со Squid я описал в статье Squid: Расширяем возможности фильтрации доступа к сетевым ресурсам с помощью Squid+SquidGuard.
Да, уже нашёл!
Спасибо!!!
Попытаюсь завтра реализовать!
Всё очень хорошо разжевано!!!
Спасибо за статью!
так блокирует acl block dstdomain блаблаю.com ,
а из списка dstdomain блокирует только сайты если их в адресной строке написать без www. достаточно подставить www. чтобы обойти список.
у меня squid 2.7 может в этом проблема?
Регулярные выражения спасают ситуацию.
у меня так и закрыто) acl dontgo url_regex » »
тогда смысл создания dstdomain списков в squid отпадает надо редиректорами блокировать.
вроде как точку надо ставить перед каждым адресом? .odnoklassnik.ru и т.д.
тогда будет открыт вход на просто odnoklassniki.ru