Как настроить фильтр контента

Контентная фильтрация в образовательных учреждениях

Приветствую, %username%

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

Суть проблемы

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

Как это должно быть в идеале
Вариант №1

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

Читайте также:  Что делать если не все ядра процессора работают
Вариант №2

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

К сожалению, в жизни все по другому. По сути, школы представлены сами себе, а у министерства явно не в приоритете помочь школам в данном вопросе. Предвидя реплики типа: «в школе есть системный администратор, вот пусть этим и занимается», по своему личному опыту знаю, что в некоторых школах ставка системный администратор вообще не предусмотрена. В моем случае, я просто специалист по кабинету информатики.

Что можно использовать
Интернет-цензор

Бесплатный интернет-фильтр для детей. К сожалению, он только под Windows и нет возможности централизованного управления для всех компьютеров в сети. Это решение больше подойдет для небольшой группы компьютеров. При установке просит придумать пароль и указать электронную почту для восстановления пароля и отправки уведомлений.

Личный опыт: На нескольких компьютерах, через некоторое время после установки программа сообщала что она повреждена и просила переустановку. После переустановки работала пару дней, и все повторялось. Что интересно, фильтрация по прежнему работала. Также были случаи, когда пользователь просто забывал пароль, и при нажатии на кнопку «Восстановить пароль» программа сообщала, что интернет отсутствует и соответственно узнать/восстановить пароль через электронную почту не выйдет. Удалить без знания пароля и вреда для системы лично у меня не вышло.

SkyDNS

Российский облачный интернет-сервис, предоставляющий услуги контент-фильтрации. Вся суть в замене DNS-серверов компьютера на предоставленный DNS-сервер компании. Можно указать вручную, или установить программу-клиент с официального сайта, которая сделает все сама, плюс прямо из программы можно выбрать категории фильтрации. Клиент только для ОС Windows. Если клиент не использовать, необходим внешний статический IP-адрес и вручную сделать привязку в личном кабинете на сайте.

Личный опыт: В целом, сервис довольно неплохой. Имеются черные и белые списки сайтов, статистика, можно включить переадресацию всех поисковых систем на безопасный поиск самого сервиса. За небольшую плату в год, можно настроить страницу блокировки и включить режим работы только по белому списку сайтов, который включает в себя несколько тысяч адресов безопасных сайтов.

Как вариант, можно использовать другие безопасные DNS-серверы, например от Яндекс:

DNS1: 77.88.8.7
DNS2: 77.88.8.3

P.S. Логичней всего DNS-сервер указывать на роутере, или в настройках DHCP-сервера, если таковой используется.

UserGate Proxy & Firewall

Представляет собой интернет-шлюз, который устанавливается на отдельный компьютер под управлением Windows. В комплекте идет трехъядерный антивирус, межсетевой экран, контент-фильтр, контроль и мониторинг пользователей и еще пару полезных плюшек.

Личный опыт: Изначально я считал плохой идеей держать компьютер под управлением Windows для таких задач, но тем не менее данный продукт проработал у нас более года. За это время, частенько падал интернет, были различные глюки и приходилось делать рестарт системы. Учитывая, что доступ к этому компьютеру был не только у меня, находились умельцы посидеть за этим компьютеров и притащить туда вирусы.
Финал настал, когда фирма каждый раз выпуская новую версию просила доплатить за обновление. Более того, за лицензию на контент-фильтр Entensys URL Filtering надо было приобретать отдельно, и причем каждый год.

KinderGate
Контент-фильтр, разработан компанией Entensys, как и UserGate. Есть клиенты под основые ОС, фильтрация по содержимому сайта, фильтр по категориям, родительский контроль, безопасный поиск, контроль загрузки файлов, поддерживает кластеризацию и фильтрацию HTTPS-протокола. Стоимость составляет 490 рублей на компьютер в год.

Личный опыт: Данное ПО очень активно рекламируют в образовательных учреждениях. Наша школа данный продукт не заказывала, ввиду большой конечной стоимости. В соседних школах и детских садах были куплены 1-2 лицензии, говорят стал медленнее работать интернет и очень частые срабатывания, а значит поиск в интернете стал в разы больше. Видимо работает по принципу лучше пере, чем недо.

Интернет Контроль Сервер
Интернет-шлюз, разработанный на базе FreeBSD. Имеет внушительный функционал. В комплекте идут контентная фильтрация, категории трафика SkyDNS, модуль DLP и IP-телефонии, встроенный антивирус, учет трафика и контроль доступа, прокси-сервер, защита корпоративной сети, почта, FTP, Web и Jabber сервер. Явные преимущества этого решения в том, что можно бесплатно использовать полнофункциональную версию на 8 пользователей.

Источник

Организация контентной фильтрации в образовательных учреждениях

Вряд ли сейчас найдется системный администратор, работающий в сфере образования, который не знает что такое ФЗ-436 «О защите детей от информации, причиняющей вред их здоровью и развитию» со всеми вытекающими последствиями. Наиболее острой для меня эта проблема стала после получения распоряжения от руководителя подготовиться к приходу прокуратуры. Из известных на тот момент мне решений:

  • Squid + DG + каким то образом настраивать обновление списков, которые должны коррелировать со списком запрещенных ресурсов Минюстом
  • Решения для рабочих станций (NetPolice, iCensor и т.п.)
  • Различные «виндосерверные» решения, выступающие в роли шлюза

ни одно не показалось мне привлекательным. Имея маломощный сервер и 50 рабочих станций, нуждающихся в защите, хотелось бы использовать Unix-like решение. Очевидно, что без Squid не обойтись. Начались поиски решения удовлетворяющего установленные требования. В результате был найден интересный вариант от не безызвестной компании Entensys, выпускающей ПО под названием UserGate. Программное решение для контентной фильтрации называется UserGate WebFilter. Основываясь на опыте давно ушедших лет, тех лет, когда интернет траффик был дороже золота, и, когда прокси был просто необходим, UserGate не нравился ввиду своей глючности и ресурсоемкости (в контексте тех самых прошлых лет), однако, позабыв старые обиды, а также несмотря на то, что продукт проприетарный, было решено его опробовать.

ЧАСТЬ 0. Возможности продукта

Перечислю наиболее важные для меня возможности:

  • Фильтрация по двум направлениям: DNS и HTTP
  • Морфологический анализ страницы
  • Наличие автоматически обновляемых черных и белых списков доменов, морфологической базы
  • Приятная мелочь — фильтрация результатов поисковых запросов
  • Возможность гибкой настройки всего вышеперечисленного через веб-интерфейс
  • И самое главное: соответствие требованиям законодательства

Всю остальную информацию, в том числе цены и полный перечень возможностей можно получить на сайте Entensys.

ЧАСТЬ 1. Подготовка к установке

Что касается системных требований: как заявляет сам производитель, ПО будет работать на следующих ОС:

  • Ubuntu Server 12.04 i386, amd64
  • Ubuntu Desktop 12.04 i386, amd64
  • Debian 6, 7 i386, amd64
  • CentOS 6 i386, amd64

Минимальные требования к железу, до 100 пользователей: Intel Atom D2500 1.86GHz, 2Gb RAM, HDD 500Gb
Ну и разумеется прокси сервер Squid, собранный с поддержкой ICAP-клиента, а так же клиентский машины, заранее настроенные на использование прокси. Требования к версии Squid не указываются, однако интуиция подсказывает что достаточно не менее 3.0.
На деле имеется следующее: Intel Core2Duo, 4GB RAM с установленной Debian 7 на борту и Squid3 в режиме transparent.

ЧАСТЬ 2. Установка

У компании Entensys имеются свои репозитории, поэтому установка до безобразия тривиальна:

Первоначальная настройка сводится к следующему:

  1. Заходим в веб-интерфейс по адресу serverip:4040
  2. Выбираем тип узла «Главный»
  3. Указываем пароли и жмем «Установить»
  4. Настраиваем Squid по инструкции в документации

Webfilter генерирует все необходимые конфигурационные файлы и запускает демоны.
Сразу после установки напугало количество прослушиваемых портов, однако в моей ситуации, с политикой DROP в цепочке INPUT таблицы filter, особой угрозы это не представляет. Во всей этой куче прослушиваемых портом различимы 1344 (ICAP сервер), 4040 (веб-интерфейс), 10053 (backend для DNS Запросов).

По ходу адаптации нового ПО к локальной инфраструктуре столкнулся с такой особенностью: помимо основного демона webfilter3 имеется так же init скрипт webfilter3_rules, который при старте добавляет правила в iptables для перенаправления всего входящего dns траффика на 10053 порт, для его фильтрации, а также, правила для перенаправления http траффика. Для меня (параноика), имеющего собственноручно настроенный firewall, вмешательство в таблицы iptables было просто недопустимо, поэтому:

Теперь встает вопрос о том, как фильтровать входящие dns запросы. Логичным кажется перенаправление через iptables с порта 53 на 10053. Для тех у кого нет собственных dns записей, у кого весь dns-траффик беспрекословно форвардится на другой сервер, это решение отлично подойдет (или оставить включенным webfilter3_rules). У меня же имелись статические записи в /etc/hosts и в конфиге dnsmasq, кроме того, имелись особые опции работы dnsmasq. Поэтому я решил поступить следующим образом:

При такой конфигурации dnsmasq будет перенаправлять запросы, на которые не смог ответить сам, DNS фильтру.

ЧАСТЬ 3. Настройка

Настройка работы фильтра осуществляется через веб-интерфейс. Все детали настройки подробно расписаны в документации. Краткий алгоритм минимальной настройки следующий:

  1. Добавляем группу пользователей. Настраиваем используемые списки. В моем случае были использованы все встроенные списки
  2. Добавляем пользователей. Доступны следующие механизмы авторизации:
    • ip
    • диапазон ip
    • логин: пароль посредством radius-сервера

  3. Создаем правила фильтрации:
    1. Для наиболее строгой фильтрации, логика правила должна быть «ИЛИ»
    2. Выбираем категории сайтов которые будут запрещены (порнография и насилие, мошеннические сайты и пр.)
    3. Выбираем категории морфологии, которые будут учтены при анализе содержимого страницы
    4. Настраиваем индивидуальное расписание работы правила. (В случае если логика правила «ИЛИ», логичным будет оставить все дни пустыми, в противном случае, правило будет срабатывать при любом запросе в отмеченный день)
  4. Активируем созданное правило фильтрации в настройках пользователя или группы
  5. Изменяем адрес страницы на которую будет перенаправлен пользователь в случае блокировки страницы
  6. Проверяем работу правил:
    1. Переходим в меню «Проверить URL»
    2. В качестве проверяемого адреса используем pornhub.com или pornolab.net
    3. Нажимаем проверить
    4. В случае правильной настройки результат должен иметь следующий вид:

      где не пустое значение в поле «Блокировка по правилам» означает что правило включено и работает

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

ЧАСТЬ 4. Тестирование

Скорость

Закономерный вопрос: «Насколько фильтрация замедляет загрузку сайтов». Изначально хотел провести тестирование и сравнить скорость загрузки различных сайтов и предоставить результат в виде таблицы. Замеры производились с помощью инструментов разработчика встроенных в Chrome. Если в случае с загрузкой без фильтра можно было вычислить среднее время загрузки исходя из 10 запросов, то под фильтром время загрузки колебалось уже очень сильно, в некоторых случаях от 100 до 500 мс, поэтому я решил что такой сравнительный анализ ничего не даст. Факт в том, что время загрузки возрастает, самое большее что мне удалось поймать — в 3 раза. Однако, имея высокоскоростной интернет, разница между 100 мс и 300 мс, глазу не ощутима, разница между 200 мс и 600 мс ощутима совсем слегка и особого дискомфорта не доставляет. В общем, по субъективным ощущениям, сайты грузятся быстро.

Фильтрация

Фильтрация в UserGate WebFilter просто потрясающая. Список запрещенных доменов очень обширный. Большинство «плохих» сайтов на которые я пытался зайти, отбрасываются именно по спискам доменов, таким образом до морфологического анализа дело даже и не доходит.
Что касается морфологического анализа — тут тоже все очень хорошо. В качестве теста пробовал заходить на сайты, которые находятся в списке экстремистских материалов, утвержденном минюстом. Отрабатывает отлично. Тем не менее, случаи пропуска нежелательного контента тоже были, но их количество стремится к нулю.

Отказоустойчивость

На момент написания статьи сервер работает чуть более месяца, перезагрузка ни разу не потребовалась: ни демона webfilter, ни сервера целиком. В пиковые часы HTTP траффик проходит через сервер со скорость до 8 Мб\с в течении продолжительного времени. На глюки, зависания и прочие неисправности, пользователи не жалуются.

Заключение

От работы с данным ПО остались исключительно приятные впечатления. Весь заявленный функционал работает исправно. Учитывая невысокую стоимость ПО (например: на 50 ПК годовая лицензия обойдется в 13 500 р.), по моему личному мнению, данное ПО является идеальным решением контентной фильтрации в учебных заведениях.

Источник

Оцените статью