SCROLL
Среднее время на прочтение: 1 мин.

Перенаправления запросов заблокированных сайтов в SQUID

Появилась необходимость настроить в Squid перенаправление на определенный сайт в случае если пользователь пытается зайти на сайт который находится в списке заблокированных. Я нашел для себя несколько способов реализовать данную задачу.

Способ #1

JUQwJUEwJUQwJUIwJUQxJTgxJUQxJTgxJUQwJUJDJUQwJUJFJUQxJTgyJUQxJTgwJUQwJUI4JUQwJUJDJTIwJUQxJTgxJUQwJUJGJUQwJUJFJUQxJTgxJUQwJUJFJUQwJUIxJTIwJUQwJUJDJUQwJUIzJUQwJUJEJUQwJUJFJUQwJUIyJUQwJUI1JUQwJUJEJUQwJUJEJUQwJUJFJUQwJUIzJUQwJUJFJTIwJUQxJTgwJUQwJUI1JUQwJUI0JUQwJUI4JUQxJTgwJUQwJUI1JUQwJUJBJUQxJTgyJUQwJUIwJTIwJUQwJUJEJUQwJUIwJTIwJUQwJUI3JUQwJUIwJUQwJUI0JUQwJUIwJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUIwJUQwJUI5JUQxJTgyLg==

Сразу хочу предупредить, что выполнить перенаправление на заданную страницу в Squid возможно только при посещении пользователем HTTP сайтов. К сожалению с HTTPS сайтами перенаправление работать не будет.

JUQwJTkyJTIwJUQwJUI0JUQwJUIwJUQwJUJEJUQwJUJEJUQwJUJFJUQwJUJDJTIwJUQxJTgxJUQwJUJGJUQwJUJFJUQxJTgxJUQwJUJFJUQwJUIxJUQwJUI1JTIwJUQwJUI4JUQxJTgxJUQwJUJGJUQwJUJFJUQwJUJCJUQxJThDJUQwJUI3JUQxJTgzJUQwJUI1JUQwJUJDJTIwJUQwJUI0JUQwJUI4JUQxJTgwJUQwJUI1JUQwJUJBJUQxJTgyJUQwJUI4JUQwJUIyJUQxJTgzJTIwZGVueV9pbmZvJTJDJTIwJUQxJTgxJUQwJUI4JUQwJUJEJUQxJTgyJUQwJUIwJUQwJUJBJUQxJTgxJUQwJUI4JUQxJTgxJTIwJUQwJUI1JUQwJUI1JTIwJUQwJUIyJUQxJThCJUQwJUIzJUQwJUJCJUQxJThGJUQwJUI0JUQwJUI4JUQxJTgyJTIwJUQxJTgyJUQwJUIwJUQwJUJBJTNB

  • deny_info http://... acl — с указанием внешнего сайта для редиректа.
  • deny_info err_access_denied acl — в указанием информационных страниц Squid

Пример использования с заданным ACL со списком запрещенных сайтов — /etc/squid/blackList.txt

acl blackList dstdomain "/etc/squid/blackList.txt"
Li4u
aHR0cF9hY2Nlc3MlMjBkZW55JTIwYmxhY2tMaXN0
deny_info http://www.yandex.ru blackList

JUQwJUEyJUQwJUI1JUQwJUJGJUQwJUI1JUQxJTgwJUQxJThDJTIwJUQwJUI1JUQxJTgxJUQwJUJCJUQwJUI4JTIwJUQwJUJGJUQwJUJFJUQwJUJCJUQxJThDJUQwJUI3JUQwJUJFJUQwJUIyJUQwJUIwJUQxJTgyJUQwJUI1JUQwJUJCJUQxJThDJTIwJUQwJUJGJUQwJUJFJUQwJUJGJUQxJThCJUQxJTgyJUQwJUIwJUQwJUI1JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQwJUI3JUQwJUIwJUQwJUI5JUQxJTgyJUQwJUI4JTIwJUQwJUJEJUQwJUIwJTIwJUQwJUI3JUQwJUIwJUQwJUIxJUQwJUJCJUQwJUJFJUQwJUJBJUQwJUI4JUQxJTgwJUQwJUJFJUQwJUIyJUQwJUIwJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUIwJUQwJUI5JUQxJTgyJTJDJTIwJUQxJTgyJUQwJUJFJTIwJUQwJUJFJUQwJUJEJTIwJUQxJTgxJUQxJTgwJUQwJUIwJUQwJUI3JUQxJTgzJTIwJUQwJUIxJUQxJTgzJUQwJUI0JUQwJUI1JUQxJTgyJTIwJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUJEJUQwJUIwJUQwJUJGJUQxJTgwJUQwJUIwJUQwJUIyJUQwJUJCJUQwJUI1JUQwJUJEJTIwJUQwJUJEJUQwJUIwJTIwJUQxJTgxJUQwJUIwJUQwJUI5JUQxJTgyJTIwaHR0cCUzQSUyRiUyRnd3dy55YW5kZXgucnU=

Способ #2

Данный способ отличается от первого тем что, пользователь сперва видит страницу ERR_ACCESS_DENIED и через несколько секунд перенаправляется на заданную нами страницу.

JUQwJUExJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUIyJUQwJUIwJTIwJUQwJUJEJUQxJTgzJUQwJUI2JUQwJUJEJUQwJUJFJTIwJUQwJUJGJUQwJUJFJUQwJUI0JUQwJUIzJUQwJUJFJUQxJTgyJUQwJUJFJUQwJUIyJUQwJUI4JUQxJTgyJUQxJThDJTIwJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUIwJUQwJUJEJUQwJUI4JUQxJTg2JUQxJTgzJTIwRVJSX0FDQ0VTU19ERU5JRUQlMjAlRDAlQjQlRDAlQkIlRDElOEYlMjAlRDElODAlRDAlQjUlRDAlQjQlRDAlQjglRDElODAlRDAlQjUlRDAlQkElRDElODIlRDAlQjAlMjAlRDAlQkQlRDAlQjAlMjAlRDAlQjclRDAlQjAlRDAlQjQlRDAlQjAlRDAlQkQlRDAlQkQlRDElOEIlRDAlQjklMjAlRDAlQjIlRDAlQjUlRDAlQjEtJUQxJTgxJUQwJUIwJUQwJUI5JUQxJTgyLiUyMCVEMCU5MiVEMSU4MSVEMCVCNSUyMCVEMSU4MSVEMSU4MiVEMSU4MCVEMCVCMCVEMCVCRCVEMCVCOCVEMSU4NiVEMSU4QiUyMCVEMCVCNyVEMCVCMCVEMCVCMyVEMCVCRSVEMSU4MiVEMCVCRSVEMCVCMiVEMCVCQSVEMCVCOCUyMCVEMCVCRCVEMCVCMCVEMSU4NSVEMCVCRSVEMCVCNCVEMSU4RiVEMSU4MiVEMSU4MSVEMSU4RiUyMCVEMSU4MiVEMSU4MyVEMSU4MiUyMCVFMiU4MCU5NCUyMCUyRnVzciUyRnNoYXJlJTJGc3F1aWQlMkZlcnJvcnMlMkZSdXNzaWFuLWtvaTgtci4=

В файле /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 кол-во секунд и адрес сайта который нужно загрузить.

JUQwJUEyJUQwJUI1JUQwJUJGJUQwJUI1JUQxJTgwJUQxJThDJTIwJUQwJUI1JUQxJTgxJUQwJUJCJUQwJUI4JTIwJUQwJUJGJUQwJUJFJUQwJUJCJUQxJThDJUQwJUI3JUQwJUJFJUQwJUIyJUQwJUIwJUQxJTgyJUQwJUI1JUQwJUJCJUQxJThDJTIwJUQwJUJGJUQwJUJFJUQwJUJGJUQxJThCJUQxJTgyJUQwJUIwJUQwJUI1JUQxJTgyJUQxJTgxJUQxJThGJTIwJUQwJUI3JUQwJUIwJUQwJUI5JUQxJTgyJUQwJUI4JTIwJUQwJUJEJUQwJUIwJTIwJUQwJUI3JUQwJUIwJUQwJUIxJUQwJUJCJUQwJUJFJUQwJUJBJUQwJUI4JUQxJTgwJUQwJUJFJUQwJUIyJUQwJUIwJUQwJUJEJUQwJUJEJUQxJThCJUQwJUI5JTIwJUQxJTgxJUQwJUIwJUQwJUI5JUQxJTgyJTJDJTIwJUQxJTgyJUQwJUJFJTIwJUQwJUJFJUQwJUJEJTIwJUQxJTgxJUQxJTgwJUQwJUIwJUQwJUI3JUQxJTgzJTIwJUQxJTgzJUQwJUIyJUQwJUI4JUQwJUI0JUQwJUI4JUQxJTgyJTIwJUQxJTgxJUQxJTgyJUQxJTgwJUQwJUIwJUQwJUJEJUQwJUI4JUQxJTg2JUQxJTgzJUMyJUEwRVJSX0FDQ0VTU19ERU5JRUQlMjAlRDAlQjglMjAlRDElODclRDAlQjUlRDElODAlRDAlQjUlRDAlQjclMjA1JTIwJUQxJTgxJUQwJUI1JUQwJUJBJUQxJTgzJUQwJUJEJUQwJUI0JUMyJUEwJUQwJUIxJUQxJTgzJUQwJUI0JUQwJUI1JUQxJTgyJTIwJUQwJUJGJUQwJUI1JUQxJTgwJUQwJUI1JUQwJUJEJUQwJUIwJUQwJUJGJUQxJTgwJUQwJUIwJUQwJUIyJUQwJUJCJUQwJUI1JUQwJUJEJTIwJUQwJUJEJUQwJUIwJTIwJUQxJTgxJUQwJUIwJUQwJUI5JUQxJTgyJTIwaHR0cCUzQSUyRiUyRnd3dy55YW5kZXgucnUu

Для применения того или иного способа, не забываем перечитать конфигурацию squid.

squid -k reconfigure

 

 

ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОДДЕРЖИ АВТОРА ДОНАТОМ

Обсуждение

0 комментариев

Нет комментариев.