Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных


Принцип работы

Одним из основных средств управления трафиком на сервере является файрвол (межсетевой экран). С его помощью можно по различным критериям ограничивать трафик пользователей, проходящий через сервер из локальной сети во внешние, а также исходящий и входящий трафик на сам сервер.

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

Сетевой экран не предназначен для решения задач, связанных с контролем доступа к ресурсам сети Интернет, исходя из адреса URL, доменного имени или ключевых слов, встречающихся на страницах ресурса. Эти задачи более высокого уровня, как правило, касающиеся web-трафика, нужно решать с помощью модуля контентной фильтрации в компоненте прокси-сервера.

Для обеспечения высокой эффективности процесса управления трафиком брандмауэр разделен на два глобальных контейнера правил:

  • Системный файрвол – содержит список глобальных правил, применяемых ко всей сетевой подсистеме шлюза. Весь трафик, проходящий через шлюз, проверяется на соответствие этим правилам. Таким образом, правила, созданные в системном брандмауэре, распространяются как на служебный трафик шлюза, так и на трафик, генерируемый самими клиентами сети.
  • Пользовательский файрвол – содержит правила, касающиеся только трафика клиентских устройств в сети и не влияющие на глобальные правила брандмауэра. Эти правила действуют только в том случае, если они зафиксированы во вкладке Ограничения в настройках конкретного пользователя или группы пользователей.

Стоит отметить, что запрещающие правила пользовательского файрвола наиболее приоритетны, чем правила системного. Предположим, что у вас в системном фильтре разрешена работа с ICQ (TCP порты 5190 и 4000). Вместе с тем в пользовательском брандмауэре существует правило, запрещающее соединения с использованием этих портов. Таким образом, ICQ не будет работать у пользователя, которому назначено это правило. Аналогично и с системным файрволом - его запрещающие правила приоритетнее разрешающих правил пользовательского файрвола.

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

Создание правил и групп правил

Создание группы правил

Для добавления группы правил необходимо выполнить следующие действия:

  1. Нажмите на кнопку Добавить группу правил  в конце списка существующих групп правил.
  2. Введите Название группы правил и описание, если требуется.
  3. Нажмите Сохранить.

После того как группа создана, в неё можно добавлять правила межсетевого экрана.

Создание правила сетевого фильтра

Для того чтобы создать правила в группе, выделите её и нажмите на кнопку Добавить правило на панели инструментов. Далее необходимо ввести критерии правила брандмауэра, представленные в таблице ниже.

Критерии правила брандмауэра

Источник
 

Адрес источника трафика, проходящего через шлюз. В этом поле может быть указан IP-адрес и маска сети, диапазон адрес или домен.

SRC Port,
порт источника

Порт источника. Имеет смысл только для TCP и UDP.

Назначение 

Адрес назначения трафика, проходящего через шлюз. В этом поле может быть указан IP-адрес и маска сети, диапазон адрес или домен.

DST Port,
порт назначения

Порт назначения. Имеет смысл только для TCP и UDP.

Протокол

Протокол передачи данных.

Путь

Направление прохождения трафика. Различают входящий, исходящий, транзитный. Весь пользовательский трафик является транзитным (FORWARD).

Действие

Действие, выполняемое над трафиком после срабатывания правила.

Протокол

Брандмауэр определяет популярные сетевые протоколы путем чтения данных из заголовков пакета. При выборе протоколов TCP и UDP появляется возможность указания портов для источника и назначения. Порты можно выбрать из списка или ввести вручную. Допускается ввод нескольких портов через запятую. В этом случае порты будут проверяться по принципу "ИЛИ". Для указания любого порта оставьте 0. Перечень протоколов представлен в таблице ниже.

Сетевые протоколы 

ICMP

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

TCP

Выполняет функции протокола транспортного уровня модели OSI.

UDP

Является одним из самых простых протоколов транспортного уровня модели OSI. Его IP-идентификатор – 0x11. В отличие от TCP, UDP не гарантирует доставку пакета, поэтому аббревиатуру иногда расшифровывают как Unreliable Datagram Protocol (протокол ненадёжных датаграмм). Это позволяет ему гораздо быстрее и эффективнее доставлять данные для приложений, которым требуется большая пропускная способность линий связи или требуется малое время доставки данных.

GRE

Основное назначение протокола – инкапсуляция пакетов сетевого уровня сетевой модели OSI в IP-пакеты. Номер протокола в IP – 47. В основном используется при создании VPN (Virtual Private Network).

Путь

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

  • FORWARD – пакеты, проходящие через сервер. Это основной трафик пользователей.
  • INPUT – входящие пакеты, предназначенные для самого сервера.
  • OUTPUT – пакеты, исходящие от самого сервера.

 

Если вы хотите ограничить доступ к серверу, например, для блокировки серверов "спамеров", используйте пути INPUT и OUTPUT. Для ограничения доступа пользователя или нескольких пользователей к сайту используйте путь FORWARD.

Для более удобного ограничения нескольких пользователей одним правилом назначьте этим пользователям IP-адрес из отдельного пула. Тогда в качестве IP-адресов источника или назначения можно будет указать подсеть, соответствующую этому пулу.

Действие

Значения этого параметра описаны в следующей таблице.

Значения

Описание

Запретить 

Запрещает трафик. При этом ICMP-уведомлений осуществляться не будет.

Разрешить

Разрешает трафик.

Portmapper (DNAT) 

Транслирует адреса назначения, тем самым позволяет перенаправить входящий трафик. При выборе этого действия появятся поля: "Переадресовать на адрес" и "Порт". Здесь необходимо указать адрес и, опционально, порт назначения на целевом устройстве. Порт имеет смысл указывать, если правило описывает протокол подключения TCP или UDP. С помощью этой возможности можно прозрачно переадресовать входящий трафик на другой адрес или порт.

Для примера представим, что перед вами стоит задача предоставить доступ из сети Интернет к службе удаленного рабочего стола и web-серверу, которые находятся в локальной сети предприятия и не имеют публичного IP-адреса. Публичный IP-адрес, по которому возможно осуществить подключение, назначен на внешний интерфейс Ideco UTM. Таким образом для решения это задачи вам потребуется настроить файрвол так, чтобы он обеспечивал прозрачное перенаправление входящего трафика в локальную сеть к соответствующим службам. То же самое потребуется сделать в том случае, если вам потребуется перенаправить все HTTP-запросы, идущие из локальной сети к внешним IP-адресам, на внутренний web-сервер.

SNAT 

Транслирует адреса источника. Аналогично действию "NAT" в профиле (переопределяет NAT в профиле).

Разрешить и выйти из Firewall

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

Запретить и разорвать подключение

Запрещает соединение, не устанавливать TCP-сессию.

Логировать

Все пакеты, попадающее под данное правило, будут показаны в Мониторинг – Журнал – Логирование правил файрвола, а так же записываться в /var/log/firewall/custom_loging.log.

Не SNAT

Отменяет действие "SNAT" (в файрвол выше по списку или в профиле) для трафика, удовлетворяющего критериям правила.

Не DNAT

Отменяет действие "DNAT" (в файрвол выше по списку или в профиле) для трафика, удовлетворяющего критериям правила.

Разрешить без авторизации

Разрешает доступ к ресурсу без авторизации на сервере.

MASQUERADE

Аналогично действию "SNAT". Применяется, когда адрес у интерфейса, на который делается переадресация, динамический.  Необходимо указать имя интерфейса в соответствующей графе.

Важно после написания правил перезагрузить файрвол, иначе правила не будут работать. Для этого в системном и в пользовательском файрволах есть кнопка Перезагрузить файрвол на сервере.

Примеры правил и техник

Разрешить клиентам только нужные интернет-сервисы. Остальной трафик запретить.

Технология используется для разрешения только заранее известных интернет-протоколов, которыми пользуются клиенты сети, и запрета всего остального трафика. Она обеспечивает дополнительную защиту вашей локальной сети от нежелательного трафика и угроз извне. Также это одна из наиболее действенных технологий в борьбе с торрентами и другим распределенным трафиком пиринговых файлообменных сетей. Принцип действия техники заключается в создании группы правил, разрешающих подключение только на порты нужных для работы пользователей сервисов в сети Интернет. Самым последним создается правило, запрещающее весь трафик. В итоге, если трафик не удовлетворяет ни одному из предыдущих разрешающих правил, то пакеты этого трафика не допускаются к прохождению через шлюз. При этом шлюзом по умолчанию и DNS сервером для клиентов в локальной сети должен быть сервер Ideco UTM. Пример группы правил представлен на следующем фрагменте.


Где "10.200.1.0/24" – локальная сеть пользователей за шлюзом.

  • Для корректной работы с сетью Интернет необходим сервис DNS (53 UDP порт) и протокол ICMP. Их нужно обязательно разрешить.
  • Эта техника не гарантирует однозначной блокировки торрентов и прочих файлообменных сетей, так как зачастую эти сети работают через порты известных служб (80 HTTP) в зашифрованном виде. Также для блокировки активности торрент-программ и p2p-клиентов рекомендуется использовать систему предотвращения вторжений.
  • В данном примере правила написаны в системном файрволе с указанием конкретной сети источника. Если же мы очистим это поле, то правила лучше писать в пользовательском файрволе и применять на отдельных пользователей или групп пользователей.

На этом рисунке показаны отдельные правила для отдельных протоколов сети Интернет. Это может быть удобно для легкого включения/выключения правил. Но вы можете перечислить больше портов в одном правиле. Имейте ввиду, что максимальное количество портов, которое брандмауэр распознает в пределах одного правила, равняется 15.

Написание правил с использованием доменных имён в пользовательском файрволе

Иногда необходимо заблокировать всевозможный трафик до конкретного домена. Если домен имеет несколько IP-адресов, то удобно написать всего одно правило с использованием доменного имени. Давайте для примера возьмём домен 66.ru и напишем правила для его блокировки. Если блокировка должна распространяться на всех пользователей, то пишем правило в системном файрволе без указания адреса источника. Если блокировать будем только для части пользователей, то пишем правило в пользовательском файрволе. Для этого сначала создадим группу правил в пользовательском файрволе и назовём её, например, 66.ru:

 

Далее при создании правила в поле Назначение выберем вариант Домен и пропишем туда 66.ru, после создания правила перезагрузим файрвол:

Потом переходим на целевого пользователя или группу пользователей в разделе Пользователи -> Ограничения -> Ограничения пользовательского файрвола, нажимаем кнопку Добавить группы правил и выбираем созданную ранее группу:

Нажимаем Сохранить и получаем такой результат:

Спустя несколько минут правило начнёт работать и у всех пользователей группы "Все" будет заблокирован доступ к 66.ru по всем возможным протоколам.

Есть несколько моментов, на которых хотелось бы заострить внимание:

  1. В поле Домен указывается доменное имя, а не url, то есть писать https://66.ru/ нельзя, надо указывать 66.ru.
  2. Мы рекомендуем блокировать веб-трафик через контент-фильтр, для обработки SSL трафика по 443 порту требуется включить HTTPS фильтрацию.
  3. Пользовательский файрвол обрабатывается после системного, поэтому не надо писать противоречащих правил в системном файрволе.
  4. Если домену сопоставлено много IP-адресов, то файрвол не сможет заблокировать все из них (т.к. по DNS-запросу выдаются только три случайных адреса). В таком случае нужно настроить перехват DNS-запросов на Ideco UTM, чтобы данные IP у пользователя и в правилах файрвола совпадали.

Блокировка https-трафика

Немного расширим предыдущий пример: предположим, что мы хотим в нашей сети полностью заблокировать хождение https-трафика (практически любая веб-почта, социальные сети и сервисы google), поэтому пишем вот такое правило в системном файрволе:

Портмаппинг, DNAT, публикация сервера в локальной сети

Этот пример подробно описан в соответствующей статье в разделе Публикация ресурсов.

Блокировка различных ресурсов средствами файрвола

Вопросы блокировки различных ресурсов: программ удаленного управления (AmmyAdmin и TeamViewer), месенджеров и другого ПО описаны в отдельной статье.

  • Нет меток