- To-do: Фильтруем вся и всё
- Анализ того, что такое есть интернет и как он работает.
- Cредства их осуществления.
- Где происходит фильтрация.
- Надёжность фильтрации.
- О недостатках уровней защиты.
- Возможность обхода пользователем контентной фильтрации.
- Вопрос-производительность.
- Вопрос-иерархия кэшей и прокси.
- Настройка локальной сети
- К нам идёт проверка.
- Настройте веб-фильтры и фильтры поиска для Семейной безопасности
- 6. Fortinet Getting Started v6.0. Web Filtering и Application Control
To-do: Фильтруем вся и всё
Данная статья представляет из себя скорее более FAQ, чем полноценный мануал. Впрочем, многое уже написано на хабре и для того присутствует поиск по тегам. Смысла переписывать всё заново большого нет.
В последнее время наше государство, к счастью или не к счастью, принялась за интернет и его содержимое.
Многие, несомненно, скажут что нарушаются права, свободы и т.п. Конечно, думаю мало у кого возникнуть сомнения по поводу того, что то что придуманные законы сделаны мало понимающими людьми в деле интернетов, да и основная их цель это не защита нас от того, что там есть. Будучи ответственным человеком да подгоняемый и прокурорами в некоторых учреждениях, встаёт вопрос ограничения поступающей информации. К таким учреждениям, к примеру, относятся школы, детсады, университеты и т.п. им учреждения. Да и бизнесу то-же надо заботится об информационной безопасности.
И первый наш пункт на пути к локальному контент фильтру-это
Анализ того, что такое есть интернет и как он работает.
Не для кого не секрет, что 99 процентов интернета-это http. Далее известно, что у каждого сайта есть имя, содержания страницы, url, ip адрес. Известно, также, что на одном ip может сидеть несколько сайтов, как и наоборот. Так-же, url адреса могут быть как динамичны, так и постоянны.
А то, что записано на страничке, то написано. Отсюда делаем выводы, что сайты можно мониторить по:
- Имени сайта
- url страницы
- По содержанию написанного на страничке сайта
- По ip адресу.
Далее, весь контент в интернете можно разделить на три группы:
- Это плохое
- Это неизвестное
- Это хорошее.
И отсюда вытекает два идеологических пути:
- Разрешаем только то, что хорошее и запрещаем плохое и неизвестное. Данный путь носит название — БООЛЬШОЙ(а бывает и маленький) Белый список
- Разрешаем только то, что хорошее и неизвестное. Запрещаем только плохое. Данный путь носит гордое имя Чёрный список.
Ну и конечно между двумя этими путями существует золотая середина-запрещаем плохое, разрешаем хорошее, а неизвестное анализируем и в режиме онлайн выносим решение-плохо или хорошо.
Cредства их осуществления.
Тут опять два пути:
- Берём готовое решение.
Такие решения тоже бывают 3 видов-платные, бесплатные, ограниченные(пока не дашь денежку).
Платные решения-это аппаратные(тобишь коробка с неизвестно чем, но делающая своё дело), аппаратно-программные(это то-же коробка, но уже с полноценной ос и соответствующими приложениями) и программные.
Бесплатные решения-это только программные. Но бывают и исключения, но это как раз тот случай, подтверждающий правило.
К платным относятся такие, как Kaspersky антивирус соответствующего функционала, ideco.ru, netpolice, kerio и т.п. Найти их легко, ибо их хорошо рекламируют и достаточно в строке поиска ввести что-то вроде — контентный фильтр купить.
Бесплатные решения имеют один недостаток-они всё сразу делать не умеют. найти их затруднительнее. Но вот их список: PfSense, SmoothWall(бывает двух видов-платный и бесплатный. Бесплатный немного не функционален), UntangleGateway, Endian Firewall(тоже есть платный и бесплатный), IPCOP, Vyatta, ebox platform, Comixwall(Чудное решение. Можете скачать с моего сайта 93.190.205.100/main/moya-biblioteka/comixwall). Все данные решения обладают одним недостатком — ограниченность.
- Делаем всё руками.
Данный путь самый трудный, но самый и гибкий. Позволяет сотворить всё, что душа пожелает(в том числе и лазейку).
Тут есть великое множество компонентом. Но самые мощные и нужные это-
- Squid.Без прокси ни куда.
- Dansguardian. Это сердце всего контентного фильтра. Единственный ему бесплатный соперник(не считая его форков)-это POESIA фильтр(но он очень дремуч).
- DNS сервер Bind.
- Clamav. Антивирус.
- Squidguard, режик и им подобные редиректоры для прокси.
- Squidclamav.
- Sslstrip. Эта утилита делает из зашифрованного https трафика, расшифрованный http трафик.
www.thoughtcrime.org/software/sslstrip. Аналоги ей прокси-сервер flipper и charly proxy. Но работают аналоги на Windows. А второй платен. Но кому надо, то можно и wine развернуть. - Чёрные списки. Данные списки можно взять с www.shallalist.de (1,7 миллионов сайтов), www.urlblacklist.com (а именно версию big с более чем 10 миллионами сайтов), www.digincore.com (около 4 миллионов), списки режика.
- Белые списки. Тут всё очень туго. Единственный нормальный(значит-большой) русскоязычный список можно получить от лиги безопасного интернета, и то только в качестве proxy лиги безопасного интернета или программы www.ligainternet.ru/encyclopedia-of-security/parents-and-teachers/parents-and-teachers-detail.php?ID=532. Кстати в связи с digest авторизацией на прокси лиги, данный прокси не подцепить к squid. Если кто знает как подцепить в качестве родительского прокси, прокси сервер с digest аутентификацией, прошу сообщить.
- DNS списки. Тут есть два известный варианта. Первый-это skydns фильтр www.skydns.ru.
Второй-это yandex dns dns.yandex.ru.
Skydns более функционален, в отличии от яндекса.
Где происходит фильтрация.
Возможны следующие варианты:
- На компьютерах пользователя без централизованного управления, в качестве системного компонента или приложения.
- То-же, что и первое, но с централизованным управлением(как пример KASPERSKY ADMINISTRATION KIT).
- Компонент к браузеру. Есть для хрома и лиса соответствующие плагины
- На отдельном компьютере или кластере компьютеров(включая вариант-на шлюзе).
- Распределёнка.
1 и 2, 3 варианты с точки зрения быстроты фильтрации-самые быстрые при массовом использовании сети.
С точки зрения трудозатрат, 1 и 3-самые трудозатратные.
С точки зрения надёжности не обхода фильтрации пользователем, то 4-первое место.
5 вариант-мечта. Но его нет нигде.
Теперь следующий вопрос:
Надёжность фильтрации.
Думаю, ясно. Защиту нужно делать многоуровневой, ибо то, что просочится на одном уровне защиты, перекроется другим уровнем.
Давайте поговорим о
О недостатках уровней защиты.
- Списки
Интернет-это постоянно и главное-очень быстро меняющаяся среда. Понятно, что наши списки будут не поспевать за интернетом, а уж тем более если мы их будем вести руками. Потому участвуйте в сообществах составления списков и используйте не только файлы со списками, но и сервисами списков, где всё сделают за нас(пример — skydns и yandex).
Да и список не гарантирует того, что на какой-то страничке написано что-то не то, а сам сайт полностью белый и пушистый.
Используйте несколько списков. Что не попало в один, может попало в другой.
К программам, работающим по спискам относятся Netpolice(http://netpolice.ru), цензор(http://icensor.ru/), Traffic Inspector для школ(http://www.smart-soft.ru/ru ) и др. Обычно программы, умеющие делать лексический разбор, умеют работать и по спискам.
Цензор имеет старенькую базу от 2008 года. Но бесплатен во всем. Netpolice существует множество версий и есть бесплатная, но урезанная.
И не забываем-ни чёрные, ни белые списки не смогут вас оградить на 100%. На то способен только лексический анализ.
- Анализ на вирусы.
Тут главная проблема-антивирусные базы. Опять же, один антивирус на шлюзе, другой-на рабочем месте.
- Анализ содержания написанного на страничке.
Тут главная проблема — лексический разбор текста. На искусственный разум, понятно, денег нет ни у кого, потому используют базу слов и выражений с весовым коэффициентом. Чем меньше база-тем менее эффективна фильтрация, но и чем больше база, тем более она эффективна, но и трудозатратна. К примеру, разбор произведения Жюль Верна Таинственный остров с lib.ru занимает 8 секунд с моей базой и dansguardian(core2duo 2,66). Да и базу надо где-то взять. Нормальную базу мне пришлось делать самому, чем с вами и делюсь 93.190.205.100/main/dlya-dansguardian/spiski/view.
Возможность обхода пользователем контентной фильтрации.
Вопрос-производительность.
Тут более или менее всё ясно-больше памяти, больше герц, больше кэша. И очень полезно для тех, у кого мощности маленькие, использовать оптимизацию по CFLAGS. Это позволяют делать все линуксы и фряхи, но особо удобны gentoo, calculate linux, slackware, freebsd.
У кого многоядерные процессоры, то используйте OPEMNP(dansguardian пригодный для оного можете взять у меня 93.190.205.100/main/dlya-dansguardian. Кстати, в нём-же исправлена ошибка с невозможностью загрузки данных в интернет.) CFLAGS=»-fopenmp». LDFLAGS=»-lgomp». Не забудьте включить -O3 -mfpmath=sse+387. Про автопатчинг здесь.
Вопрос-иерархия кэшей и прокси.
Если у вас много компьютеров и вы имеете возможность использовать несколько в качестве фильтрации, то делайте так. На одном ставите прокси сервер squid и указываете на нём параметры родительских кэшей с параметром round-robin(http://habrahabr.ru/post/28063/). В качестве родительских на каждом конкретном компьютере выступает выступает dansguardian со squid в связке(ибо без вышестоящего dansguardian не умеет). Вышестоящие располагаются на тех-же компьютерах, на которых располагаются и dansguardians. Для вышестоящих большой кэш не имеет смысла делать, а для первого-обязательно самый большой кэш. Даже если у вас одна машина, то на ней всё-равно делайте связку squid1->dansguardian->squid2->провайдер с таким-же распределением кэширования. На dansguardian не возлагайте ничего, кроме анализа написанного на страницах, перерисовки контента, заголовков и некоторых url, блокировки mime типов. Не в коем случае не вешайте на него антивирус и чёрные листы, иначе будут тормоза.
Анализ по спискам пусть будут делать squid1 и squid2.
Проверку на вирусы пусть будет делать squidclamav через c-icap на squid2. Белые списки вешаем на squid1.
Всё, что в белом списке, должно идти напрямую в интернет, минуя родительские прокси.
DNS сервер обязательно используем свой, в котором используем перенаправление на skydns или dns от yandex. Если есть локальные ресурсы провайдера, то добавляем зону forward на dns провайдера. Так-же в dns сервере прописываем локальную зону для нужных внутрисетевых ресурсов(а что-бы было красиво, они нужны). Указываем nosslsearch поиска google. В конфигах squid обязательно используем свой dns.
Для всего используем вебку Webmin и командную строчку. На windows серверах всё делаем через мышку.
Настройка локальной сети
- Используйте аутентификацию по ip адресам. Если вы не «серьёзная» организация, доступ с обязательным логинированием ни к чему.
- Используйте логически разделённые сети в одной сплошной физической сети. IP адреса выдавайте по MAC адресам. Запрещайте коннект на порт прокси-сервера при несовпадении MAC адреса машины с присвоенному данному MAC адресу, IP адреса.
- Настройте iptables таким образом, чтобы обращения на любые порты(3128, 80, 80, 3130, 443) шло через порт прокси сервера.
- Настройте автоматическую настройку прокси-сервера в сети через dns и dhcp. www.lissyara.su/articles/freebsd/trivia/proxy_auto_configuration
- Группы и уровень фильтрации делайте по ip адресу.
- Можно настроить прокси в настройках браузера.
К нам идёт проверка.
В данном случае-все ползунки в максимум.
Дополнительно-запрещаем все видеосайты, контакт, социальные сети, музыкальные порталы, файлообменники и файлообменные сети.
Запрещаем mp3.
Ставим галочку напротив безопасного поиска в личном кабинете SKYDNS.
Обязательно приводим в порядок документацию.
Источник
Настройте веб-фильтры и фильтры поиска для Семейной безопасности
Фильтрация и блокировка нежелательного содержимого в Интернете на устройствах Windows 10, Xbox и Android с помощью приложения Family Safety.
Если веб-фильтр и фильтр поиска включены, убедитесь, что ваш член семьи выполнил вход в Microsoft Edge на своем устройстве. Другие популярные браузеры будут заблокированы, чтобы члены вашей семьи не могли получить доступ к заблокированным и нежелательным веб-сайтам. Браузеры можно разблокировать в разделе Фильтрация содержимого, но веб-функции и функции поиска могут работать неправильно.
Примечание: Чтобы веб-функции и функции поиска работали, необходимо скачать на устройство браузер Microsoft Edge. Кроме того, необходимо выполнить вход в Microsoft Edge с помощью учетной записи Майкрософт (MSA).
Войдите в свою учетную запись в приложении Family Safety.
Найдите члена своей семьи, а затем выберите его имя > Фильтрация содержимого > Интернет и поиск.
Включите параметр Фильтрация нежелательных веб-сайтов.
Когда член вашей семьи запросит доступ к заблокированному веб-сайту, вы можете разрешить доступ и добавить веб-сайт в список Всегда разрешать.
Вы можете добавлять определенные веб-сайты в списки Всегда разрешать и Никогда не разрешать. Кроме того, вы можете включить Разрешить использование только разрешенных веб-сайтов.
1. Войдите в свою учетную запись на странице family.microsoft.com
2. Найдите члена своей семьи, а затем выберите Фильтрация содержимого > Интернет и поиск.
3. Прокрутите список вниз и переключите параметр Блокировка недопустимых веб-сайтов со значения «Выключено» на значение «Включено».
4. Если необходимо заблокировать определенные веб-сайты навсегда, добавьте их URL-адреса в раздел Всегда запрещать.
5. Если вы хотите, чтобы ваш ребенок видел только те веб-сайты, которые вы явно разрешили, установите флажок рядом с параметром Разрешать только эти веб-сайты.
Источник
6. Fortinet Getting Started v6.0. Web Filtering и Application Control
Приветствую! Добро пожаловать на шестой урок курса Fortinet Getting Started. На прошлом уроке мы освоили основы работы с технологией NAT на FortiGate, а также выпустили нашего тестового пользователя в Интернет. Теперь пришло время позаботиться о безопасности пользователя на его просторах. В данном уроке мы рассмотрим следующие профили безопасности: Web Filtering, Application Control, а также HTTPS инспекцию.
Для того, чтобы начать знакомство с профилями безопасности, нам необходимо разобраться еще с одной вещью — режимами инспекции.
По умолчанию используется Flow Based режим. Он проверяет файлы, когда они проходят через FortiGate без буферизации. Как только пакет пребывает, он обрабатывается и передается дальше, без ожидания получения целого файла или веб страницы. Он требует меньше ресурсов и обеспечивает большую производительность, чем Proxy режим, но в то же время в нем доступен не весь Security функционал. Например, систему предотвращения утечки данных (DLP) можно использовать только в Proxy режиме.
Proxy режим работает по другому. Он создает два TCP соединения, одно между клиентом и FortiGate’ом, второе между FortiGate’oм и сервером. Это позволяет ему буферизировать трафик, т.е получать полный файл или веб страницу. Сканирование файлов на различные угрозы начинается только после того, как забуферизировался весь файл. Это позволяет применять дополнительные возможности, которые недоступны во Flow based режиме. Как видите, этот режим будто бы противоположность Flow Based — безопасность здесь играет главную роль, а производительность отходит на второй план.
Очень часто спрашивают — какой режим лучше? Но здесь нет общего рецепта. Все всегда индивидуально и зависит от ваших потребностей и задач. Я же далее в течение курса постараюсь показать отличия профилей безопасности во Flow и Proxy режимах. Это поможет сравнить функционал и решить, что лучше подойдет вам.
Перейдем непосредственно к профилям безопасности и первым рассмотрим Web Filtering. Он помогает контролировать или отслеживать, какие веб сайты посещают пользователи. Думаю, не стоит углубляться в объяснения необходимости такого профиля в нынешних реалиях. Лучше разберемся, как он работает.
После того, как установлено TCP соединение, пользователь с помощью запроса GET запрашивает содержимое определенного веб сайта.
Если веб сервер отвечает положительно, он отсылает информацию о веб сайте в ответ. Здесь в дело вступает веб фильтр. Он проверяет содержимое данного ответа.Во время проверки FortiGate в режиме реального времени отправляет запрос в FortiGuard Distribution Network (FDN), чтобы определить категорию данного веб сайта. После определения категории конкретного веб сайта, веб фильтр, в зависимости от настроек выполняет конкретное действие.
Во Flow режиме доступно три действия:
- Allow — разрешить доступ к веб сайту
- Block — запретить доступ к веб сайту
- Monitor — разрешить доступ к веб сайту и записать это в логи
В Proxy режиме добавляются еще два действия:
- Warning — выдавать пользователю предупреждение о том, что он пытается посетить определенный ресурс и дать пользователю выбор — продолжить или уйти с веб сайта
- Authenticate — запросить учетные данные пользователя — это позволяет разрешить определенным группам доступ к запрещенным категориям веб сайтов.
На сайте FortiGuard Labs вы можете ознакомиться со всеми категориями и подкатегориями веб фильтра, а также узнать, к какой категории принадлежит конкретный веб сайт. Да и в целом, для пользователей решений Fortinet это довольно полезный сайт, советую в свободное время познакомиться с ним поближе.
Про Application Control можно сказать совсем немного. Из названия видно, что он позволяет контролировать работу приложений. А делает он это с помощью паттернов различных приложений, так называемых сигнатур. По этим сигнатурам он может определить конкретное приложение и применить к нему определенное действие:
- Allow — разрешить
- Monitor — разрешить и записать это в логи
- Block — запретить
- Quarantine — записать событие в логи и заблокировать IP адрес на определенное время
Посмотреть существующие сигнатуры также можно на сайте FortiGuard Labs.
Теперь рассмотрим механизм HTTPS инспекции. Согласно статистике за конец 2018 года доля HTTPS трафика превысила 70%. То есть, без использования HTTPS инспекции мы сможем проанализировать только около 30% ходящего по сети трафика. Для начала рассмотрим работу HTTPS в грубом приближении.
Клиент инициирует TLS запрос к веб серверу и получает TLS ответ, а также видит цифровой сертификат, который должен быть доверенным для данного пользователя. Это тот необходимый минимум, который нам нужно знать про работу HTTPS, на самом деле схема его работы намного сложнее. После успешного TLS хэндшейка начинается передача данных в зашифрованном виде. И это хорошо. Никто не может получить доступ к данным, которыми вы обмениваетесь с веб сервером.
Однако для безопасников компаний это настоящая головная боль, поскольку они не могут видеть этот трафик и проверять его содержимое ни антивирусом, ни системой предотвращения вторжений, ни DLP системами, ничем. Также это негативно отображается на качестве определения используемых внутри сети приложений и веб ресурсов — как раз то, что относится к нашей теме урока. Решить данную проблему призвана технология HTTPS инспекции. Её суть весьма проста — фактически, устройство, которое занимается HTTPS инспекцией, организует атаку Man In The Middle. Выглядит это примерно следующим образом: FortiGate перехватывает запрос пользователя, организует с ним HTTPS соединение, и уже от себя поднимает HTTPS сессию с ресурсом, к которому обратился пользователь. При этом на компьютере пользователя будет виден сертификат, выпущенный FortiGate’ом. Он должен быть доверенным, чтобы браузер разрешил подключение.
На самом деле HTTPS инспекция вещь довольно непростая и имеет множество ограничений, но в рамках данного курса мы это рассматривать не будем. Добавлю лишь, что внедрение HTTPS инспекции — не минутное дело, обычно это занимает примерно месяц. Необходимо собрать информацию о необходимых исключениях, сделать соответствующие настройки, собрать обратную связь от пользователей, откорректировать настройки.
Приведенная теория, а также практическая часть представлены в данном видео уроке:
В следующем уроке мы рассмотрим другие профили безопасности: антивирус и систему предотвращения вторжений. Чтобы не пропустить его, следите за обновлениями на следующих каналах:
Источник