Перенаправления запросов заблокированных сайтов в SQUID
Появилась необходимость настроить в Squid перенаправление на определенный сайт в случае если пользователь пытается зайти на сайт который находится в списке заблокированных. Я нашел для себя несколько способов реализовать данную задачу.
Способ #1
Рассмотрим способ мгновенного редиректа на заданный сайт.
HTTP сайтов. К сожалению с HTTPS сайтами перенаправление работать не будет.В данном способе используем директиву deny_info, синтаксис ее выглядит так:
deny_info http://... acl— с указанием внешнего сайта для редиректа.deny_info err_access_denied acl— в указанием информационных страниц Squid
Пример использования с заданным ACL со списком запрещенных сайтов — /etc/squid/blackList.txt
acl blackList dstdomain "/etc/squid/blackList.txt"
...
http_access deny blackList
deny_info http://www.yandex.ru blackListТеперь если пользователь попытается зайти на заблокированный сайт, то он сразу будет перенаправлен на сайт http://www.yandex.ru
Способ #2
Данный способ отличается от первого тем что, пользователь сперва видит страницу ERR_ACCESS_DENIED и через несколько секунд перенаправляется на заданную нами страницу.
Сперва нужно подготовить страницу ERR_ACCESS_DENIED для редиректа на заданный веб-сайт. Все страницы заготовки находятся тут — /usr/share/squid/errors/Russian-koi8-r.
В файле /usr/share/squid/errors/Russian-koi8-r/ERR_ACCESS_DENIED находим параметр <meta> в секции <head></head>, находим строчку — <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> и приводим ее к виду — <meta http-equiv="refresh" content="5;http://www.yandex.ru">
Пояснения:
http-equiv="refresh"— Загрузить другой документ в текущее окно браузера.content="5;http://www.yandex.ru">— где 5 кол-во секунд и адрес сайта который нужно загрузить.
Теперь если пользователь попытается зайти на заблокированный сайт, то он сразу увидит страницу ERR_ACCESS_DENIED и через 5 секунд будет перенаправлен на сайт http://www.yandex.ru.
Для применения того или иного способа, не забываем перечитать конфигурацию squid.
squid -k reconfigure
ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ
Обсуждение
Нет комментариев.