Способы интеграции MITIGATOR в сеть
В MITIGATOR реализована поддержка множества сценариев встраивания в сеть заказчика. Ниже описаны основные термины и способы внедрения в сеть, а также примеры внедрения.
Внешняя и внутренняя сети
Логически MITIGATOR подключается к двум сетям:
- Внешняя сеть (external) – сеть, из которой приходит трафик, требующий очистки;
- Внутренняя сеть (internal) – сеть, в которой расположены защищаемые ресурсы.
- Трафик из внешней сети – трафик, поступающий в MITIGATOR из внешней сети. Состоит из трафика атаки и легитимного трафика.
- Пропущенный трафик – трафик, отправленный MITIGATOR во внутреннюю сеть. Состоит из легитимного трафика.
- Обратный трафик – трафик, который был сгенерирован MITIGATOR и отправлен во внешнюю сеть. Обратный трафик генерируется при работе активных контрмер, например, использующих метод вызов-отклик (challenge-response).
- Трафик из внутренней сети – трафик, отправляемый во внешнюю сеть защищаемым ресурсом. Этот трафик может проходить через MITIGATOR, но не подвергается очистке.
- Сброшенный трафик – трафик, сброшенный MITIGATOR при очистке трафика из внешней сети.
Симметричная и асимметричная схема внедрения
MITIGATOR может работать при симметричной и асимметричной маршрутизации трафика.
При симметричной схеме внедрения трафик из внешней сети во внутреннюю и обратно проходит через MITIGATOR.
При асимметричной схеме внедрения через MITIGATOR проходит трафик из внешней сети, а трафик из внутренней сети проходит мимо. При использовании асимметричной схемы внедрения не расходуются ресурсы на обработку трафика внутренней сети.
Способы постановки на защиту
Способы постановки на защиту можно разделить на:
- «Always-on» – трафик из внешней сети все время проходит через MITIGATOR;
- «On-demand» – трафик из внешней сети направляется на MITIGATOR только по необходимости, например, посредством BGP-анонса с менеджмент-интерфейса MITIGATOR.
Преимущества способа «Always-on»:
- Трафик атаки фильтруется сразу же в момент появления.
- Не происходит сброса ранее установленных сессий.
- Собирается детальная статистика по трафику.
Недостатки «Always-on»:
- Работающие контрмеры могут влиять на легитимный трафик.
- Постоянное перенаправление трафика на защиту может негативно сказываться на оптимальности маршрутов следования трафика.
- Большой объем легитимного трафика, постоянно проходящего через систему защиты, фоново нагружает ее.
В MITIGATOR для уменьшения влияния на легитимный трафик и фоновой нагрузки каждая контрмера по отдельности может включаться только в момент детектирования аномалии. Скорость активации контрмеры от 1 секунды.
Преимущества способа «On-demand»:
- Без атаки не оказывается влияние на трафик.
- Нет постоянной нагрузки на систему защиты.
Недостатки способа «On-demand»:
- Увеличенный временной интервал между началом атаки и переводом трафика на защиту.
- Сброс ранее установленных сессий.
- Отсутствие статистики по трафику, либо неточная собранная по flow-протоколам.
Во избежание сброса ранее установленных сессий при способе «On-demand» в контрмеры MITIGATOR реализован режим мягкого старта.
Интеграция в сеть на физическом уровне
На физическом уровне MITIGATOR может быть подключен в сеть тремя способами:
- «Inline» – «в разрыв» сети, когда трафик из внешней сети приходит через одни физические сетевые интерфейсы и уходит во внутреннюю сеть через другие.
- «On-a-stick» – трафик из внешней и внутренней сетей проходит через один и тот же сетевой интерфейс. Принадлежность к внешней или внутренней сети определяется по VLAN ID.
- «Common LAN» – трафик одного сегмента сети проходит из внешней сети во внутреннюю сеть через одни и те же сетевые интерфейсы. Определение направления и принадлежности кадра сегменту сети производится на основании VLAN ID и MAC-адресов.
Inline
При подключении «Inline» сеть, из которой прибыл кадр, определяется физическим портом, с которого кадр принят: порты «ext» – внешняя сеть, порты «int» – внутренняя сеть. Внутри системы «ext» и «int» порты скоммутированы попарно – кадр отправляется с порта с таким же номером, какой был у порта получения. Обрабатывается как трафик с VLAN ID так и без него.
On-a-stick
При выборе способа подключения «On-a-stick» задается таблица перетэгирования трафика, состоящая из пар внешнего и внутреннего VLAN ID. Принятый с любого физического порта кадр с внешним VLAN ID считается поступившим из внешней сети. Обработанный кадр отправляется во внутреннюю сеть через тот же порт, через который был получен, а его VLAN ID заменяется соответствующим внутренним. Если пришедший кадр содержит VLAN-тэг с внутренним VLAN ID, он заменяется соответствующим ему внешним VLAN ID, и кадр отправляется через тот же порт.
Common LAN
Способ подключения «Common LAN» применяется, когда внешний и внутренний роутеры и экземпляр MITIGATOR находятся в одной L2 и L3 сети. Если принятый с любого физического порта кадр имеет MAC-адрес внешнего роутера, он считается поступившим из внешней сети. MAC-адрес получателя заменяется на MAC-адрес внутреннего роутера, и кадр отправляется через тот же порт. Обратный трафик из внутренней сети может идти через экземпляр MITIGATOR, в этом случае выполняется обратная подстановка MAC-адресов, или следовать напрямую во внешнюю сеть. Поддерживается работа одновременно в нескольких сегментах сети, разделенных при помощи VLAN ID. В этом случае для каждого VLAN ID задаются собственные L3 настройки.
Поддерживается работа с VRRP. Если внешние или внутренние роутеры присылают кадры с указанием реальных MAC-адресов устройств вместо виртуального, следует указать в настройках список реальных IP-адресов роутеров, чтобы MITIGATOR мог определить соответствующие им MAC-адреса. В случае если кадры от всех устройств VRRP приходят с указанием виртуального MAC-адреса, достаточно указать только виртуальный IP-адрес.
Интеграция в сеть на сетевом уровне
На сетевом уровне MITIGATOR может быть L2-прозрачным или выступать как L3-устройство ограниченной функциональности.
L2-прозрачность
В режиме «L2-прозрачность» MITIGATOR невидим для окружающих сетевых устройств и никак не влияет на взаимодействие на сетевом уровне. Кадр, проходящий через MITIGATOR, не изменяется.
L3-роутер
В режиме «L3-роутер» система выполняет ряд базовых функций L3-устройства, что позволяет роутерам в присоединенных сетях использовать MITIGATOR как next-hop и выступать next-hop для MITIGATOR по протоколам IPv4 и IPv6.
Предполагается, что во внешней сети находится роутер, к которому подключен MITIGATOR. Со стороны внутренней сети находится внутренний роутер. Когда прибывает кадр из внешней сети, MAC-адрес отправителя кадра заменяется на MAC-адрес внутреннего интерфейса MITIGATOR, а MAC-адрес получателя — на MAC-адрес внутреннего роутера. Для кадров из внутренней сети производится обратная замена MAC-адресов.
Для каждой пары VLAN ID в режиме «L3-роутер» возможно указать собственные параметры маршрутизации.
Для определения MAC-адресов соседних роутеров в системе реализована поддержка
функций протоколов ARP и NDP. Задаются IP-адреса интерфейсов MITIGATOR и IP-адреса
внутреннего и внешнего роутеров. Запросы для разрешения MAC-адресов роутеров MITIGATOR
отправляет раз в 30 секунд. Параметры опроса задаются в конфигурационном файле
data-plane.conf
(описание). MAC-адреса внешнего
и внутреннего интерфейсов MITIGATOR могут быть заданы вручную. Также обработчик
пакетов MITIGATOR может отвечать на ICMP Echo Request.
Пока процесс разрешения MAC-адресов соседних роутеров не завершен, все кадры сбрасываются. Кадры, адресованные не внутреннему или внешнему MAC-адресам MITIGATOR, сбрасываются всегда.
Особенности схем
MITIGATOR может быть подключен к сети пятью способами:
Inline L2-прозрачный:
- Обрабатывается только трафик протоколов IPv4 и IPv6, весь остальной трафик пропускается без обработки.
- VLAN не изменяются.
- Работает LACP между сетевыми устройствами через MITIGATOR.
On-a-stick L2-прозрачный:
- Обрабатывается только трафик протоколов IPv4 и IPv6, весь остальной трафик пропускается без обработки.
- VLAN ID перетэгируются.
- Кадры с VLAN ID не из таблицы перетэгирования сбрасываются.
- Поддерживается статический LAG.
- Поддерживается LACP. Ответ на LACP-запрос отправляется в тот же порт, с которого поступил запрос.
Inline L3-роутер:
- Обрабатываются только кадры, dst MAC которых принадлежит MITIGATOR, остальные сбрасываются.
- Поддерживается статический LAG. Для внешней и внутренней сети собираются два отдельных LAG.
- Поддерживается LACP. Все SLOW-frame пропускаются мимо обработчика.
On-a-stick L3-роутер:
- IP-адреса могут быть заданы для каждой пары VLAN.
- Обрабатываются только кадры, dst MAC которых принадлежит MITIGATOR, остальные сбрасываются.
- MAC-адреса внешнего и внутреннего интерфейсов MITIGATOR могут быть заданы вручную.
- Кадры с VLAN ID не из таблицы перетэгирования сбрасываются.
- Поддерживается статический LAG.
- Поддерживается LACP. Ответ на LACP-запрос отправляется в тот же порт, с которого поступил запрос.
Common LAN L3-роутер:
- Поддерживается работа одновременно в нескольких сегментах сети, разделенных при помощи VLAN.
- Обрабатываются только кадры, dst MAC которых принадлежит MITIGATOR, остальные сбрасываются.
- MAC-адреса внешнего и внутреннего интерфейсов MITIGATOR определяются автоматически.
- Поддерживается статический LAG.
- Поддерживается LACP. Ответ на LACP-запрос отправляется в тот же порт, с которого поступил запрос.
Горизонтальное масштабирование
Для способа внедрения Inline L2-прозрачный возможна балансировка трафика между экземплярами MITIGATOR за счет LACP между R1 и R2.
Для способа внедрения L3-роутер возможна балансировка трафика между экземплярами MITIGATOR с помощью ECMP.
Во всех случаях балансировка по экземплярам MITIGATOR должна быть настроена так,
чтобы пара src_ip + dst_ip всегда попадала на одно и то же устройство.
Централизованное управление множеством экземпляров MITIGATOR возможно в режиме
кластера. Принципиальные схемы кластера и настройки описаны в
отдельном разделе.
Обеспечение сетевой связности при авариях и плановых работах
Для обеспечения сетевой связности при авариях и плановых работах можно использовать:
- Схему балансировки L3-роутер с ECMP с анонсированием маршрутов по BGP;
- Схему балансировки Inline L2-прозрачный с LACP;
- Схему Inline L2-прозрачный с аппаратным bypass.
MITIGATOR поддерживает сетевые интерфейсы с аппаратным Bypass. Их применение позволяет сохранить сетевую связность в случае отключения питания или возникновения программной ошибки в обработчике пакетов. Для плановых работ можно управлять режимом работы Bypass через Web-интерфейс.
Применение Collector для детектирования атак
Если при отсутствии атаки трафик не проходит через MITIGATOR, то для детектирования требуется получение телеметрии по трафику от сетевого оборудования. Телеметрия с вышестоящего роутера передается на Collector по flow-протоколам. Collector передает статистику по трафику на MITIGATOR. Автодетектирование в MITIGATOR, зафиксировав аномалию, отправляет BGP-анонс для перенаправления трафика на очистку.
Подобное взаимодействие может быть настроено также и с flow-коллекторами сторонних производителей.
Применение GRE-туннелирования
GRE-туннелирование может применяться в MITIGATOR в двух сценариях:
-
Для поставщика услуги защиты от DDoS-атак.
Поставщик оказывает услугу потребителю, который находится за пределами его сети, либо доставка очищенного трафика до защищаемого ресурса осложнена особенностями маршрутизации в сети поставщика. В этом случае трафик поступает на MITIGATOR из внешней сети, подвергается очистке, после чего запаковывается в GRE-туннель и отправляется на защищаемый ресурс во внешнюю сеть. Исходящий трафик защищаемого сервера может упаковываться в GRE-туннельили направляться напрямую пользователю через Internet.
-
Для потребителя услуги защиты от DDoS-атак.
Потребитель не имеет прямого подключения к сети поставщика услуги, либо у поставщика услуги возникают сложности в доставке трафика. В этом случае трафик поступает на MITIGATOR через GRE-туннель, распаковывается и подвергается очистке, после чего отправляется на защищаемый ресурс во внутреннюю сеть. Исходящий трафик защищаемого сервера может упаковываться в GRE-туннельили направляться напрямую пользователю через Internet.
Пример внедрения в сеть
Асимметрия + On-demand/Always-on + L3-inline + BGP-анонс
Рассмотрим асимметричную схему внедрения нескольких экземпляров MITIGATOR, при которой одновременно могут использоваться оба сценария нахождения под защитой.
На маршрутизаторе R1 задан маршрут, согласно которому префикс IPs/24 доступен через маршрутизатор R2, включена поддержка ECMP, балансировка настроена так, что пара src_ip + dst_ip попадает на один и тот же next-hop. MITIGATOR собран в кластер. С менеджмент-интерфейса каждого экземпляра MITIGATOR установлена BGP-сессия с R1. На R2 задан маршрут по умолчанию, ведущий на R1.
Таким образом, при отсутствии необходимости защиты трафик на защищаемый ресурс поступает напрямую от R1 к R2, минуя MITIGATOR. В момент, когда необходимо активировать защиту, экземпляры MITIGATOR отправляют на R1 BGP-анонс, сообщающий, что защищаемый префикс IPs1/32 доступен через IPm1 и IPm2. За счет балансировки по ECMP трафик будет распределяться между двумя устройствами.
Такой вариант внедрения позволяет:
- повысить отказоустойчивость;
- горизонтально масштабировать кластер для повышения производительности;
- защищать ресурсы адресно;
- по необходимости пускать трафик на MITIGATOR в режиме «On-demand», либо снимать трафик с защиты в режиме «Always-on»;
- упростить процедуру обслуживания и поиска неисправностей.
Применение BFD для быстрого изменения маршрутов
В вышеописанной схеме в случае нештатного отключения сервера с MITIGATOR снятие BGP-анонсов займет некоторое время, в течение которого R1 продолжит отправлять трафик на MITIGATOR, что приведет к потере этого трафика. Для минимизации времени обновления маршрутов можно использовать протокол BFD.
Для этого требуется настроить взаимодействие по BFD между R1 и R2 и установить два BGP-соединения:
-
BGP-соединение между R1 и R2.
В рамках этого соединения R2 сообщает R1, что некий IPnh доступен через MITIGATOR; -
BGP-соединение между менеджмент-интерфейсом MITIGATOR и R1.
В рамках этого соединения MITIGATOR сообщает R1, что защищаемый префикс доступен через IPnh.
Малое время опроса линков по протоколу BFD позволит в случае нештатного отключения сервера с MITIGATOR быстро удалить неработающие маршруты из таблицы маршрутизации R1, и трафик защищаемого префикса будет перенаправлен по прямому маршруту от R1 к R2 в случае с одним экземпляром MITIGATOR, или перестанет балансироваться на неработающий экземпляр при работе в кластере.