Настройка детектора DDoS и BotNet на базе QoE [Документация VAS Experts]

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
dpi:dpi_options:opt_ddos:qoe_ddos [2026/02/20 10:05] – [Настройка детектора DDoS и BotNet на базе QoE] atereschenkodpi:dpi_options:opt_ddos:qoe_ddos [2026/04/14 15:01] (текущий) elena.krasnobryzh
Строка 15: Строка 15:
 **На сервере QoE.** **На сервере QoE.**
  
-Обновить QoE до последней версии, предварительно остановив ресиверы. Перед запуском ресиверов пропатчить ClickHouse: +[[dpi:qoe_analytics:implementation_administration:installation_update:update|Обновить QoE]] до последней версии, предварительно остановив ресиверы. Перед запуском ресиверов пропатчить ClickHouse: 
 <code>dnf --refresh install clickhouse-patched</code> <code>dnf --refresh install clickhouse-patched</code>
 +
 +Установить период ротации на ресиверах – 1 минута.
 +
 Запустить ресиверы. Запустить ресиверы.
  
Строка 22: Строка 25:
 **На сервере GUI.** **На сервере GUI.**
  
-Обновить GUI до последней версии. Подключить GUI к VAS Cloud, если еще не подключен. [[dpi:dpi_components:dpiui:user_guide:vas_cloud_services:auth_settings|]]. Выдать опцию лицензии aniddos.+[[dpi:dpi_components:dpiui:install_and_update:update|Обновить GUI]] до последней версии. Подключить GUI к VAS Cloud, если еще не подключен, подключать **обязательно через API-токен**. [[dpi:dpi_components:dpiui:user_guide:vas_cloud_services:auth_settings|]]. Запросить опцию лицензии antiddos, если она еще не выдана.
  
 В файле ''/var/www/html/dpiui2/frontend/env.js'' прописать опцию ''AppEnv.DDoSAttack_isVisible = 1;'' В файле ''/var/www/html/dpiui2/frontend/env.js'' прописать опцию ''AppEnv.DDoSAttack_isVisible = 1;''
  
 =====3. Установка детектора===== =====3. Установка детектора=====
-**На сервере QoE.** +**На сервере QoE.** 
 +Установить пакет митигатора ''fastm_qoe'' на все узлы: 
  
-Установить пакет митигатора ''fastm_qoe'' на все узлы:<code>dnf install fastm_qoe</code> +  - Перед установкой переключить версию Python: <code>dnf install -y python39 python39-devel -y
- +
-Переключить версию python:<code>dnf install -y python39 python39-devel -y+
 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 60 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 60
 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 70 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 70
 sudo update-alternatives --config python3</code> sudo update-alternatives --config python3</code>
- +  - Выбрать версию Python 3.9:<code>python3 --version</code> 
-Выбрать версию 3.9:<code>python3 --version</code>+  - Установить ''fastm_qoe'':<code>dnf install fastm_qoe</code>
  
 =====4. Настройка детектора===== =====4. Настройка детектора=====
Строка 54: Строка 56:
 FM_ATTACKS_METRICS_BY_SUBS_COLLAPSE=1 FM_ATTACKS_METRICS_BY_SUBS_COLLAPSE=1
 FM_ATTACKS_METRICS_BY_SUBS_DAY='day_'</code> FM_ATTACKS_METRICS_BY_SUBS_DAY='day_'</code>
-  - Обновить схему: <code>fastm-db-scheme</code>+  - Обновить схему: <code>fastm-db-scheme 
 +clickhouse-client -n --query="system reload function has_attack_func" 
 +clickhouse-client -n --query="system reload dictionary fm_attacks_metrics_by_subs_dic"</code>
   - Включить сбор метрик\\ Для этого в файле ''/var/qoestor/backend/.env'' добавить <code>FM_FULLFLOW_HOOK_ENABLE=1   - Включить сбор метрик\\ Для этого в файле ''/var/qoestor/backend/.env'' добавить <code>FM_FULLFLOW_HOOK_ENABLE=1
-GEO_IP_DIC_AUTOLOAD_ENABLED=1</code> Выполнить дневной крон:<code>sh /var/qoestor/backend/app_bash/cron_daily.sh</code> Собирать метрики несколько часов, лучше сутки. После отредактировать файл ''/var/fastm_qoe/etc/.env'' снова и изменить 2 параметра:<code>IDLE_MODE=0+GEO_IP_DIC_AUTOLOAD_ENABLED=1</code> Выполнить дневной крон:<code>sh /var/qoestor/backend/app_bash/cron_daily.sh</code> :!: **Собирать метрики в течение 24 часов.** После этого снова отредактировать файл ''/var/fastm_qoe/etc/.env''изменить 2 параметра:<code>IDLE_MODE=0
 DB_DROP_TABLES=0</code>Это активирует детектор. DB_DROP_TABLES=0</code>Это активирует детектор.
 +  - Обновить словари:<code>clickhouse-client -n --query="system reload function has_attack_func"
 +clickhouse-client -n --query="system reload dictionary fm_attacks_metrics_by_subs_dic"</code>
 +
  
 =====5. Пороги срабатывания===== =====5. Пороги срабатывания=====
Строка 88: Строка 95:
   * ''QOESTOR_FM_METRICS_AGG_LOG_PARTITIONS_LIFE_TIME_DAYS'' = ''7''   * ''QOESTOR_FM_METRICS_AGG_LOG_PARTITIONS_LIFE_TIME_DAYS'' = ''7''
  
-{{:dpi:dpi_options:opt_ddos:qoe_ddos_1.png?direct&1100|}}+{{:dpi:dpi_options:opt_ddos:qoe_ddos_1.png?nolink&1100|}} 
 + 
 +Для корректного отображения гео-отчетов DDoS-атак необходимо включить параметр ''GEO_IP_DIC_AUTOLOAD_ENABLED'':\\ 
 +{{:dpi:dpi_options:opt_ddos:geo_ru.png?nolink&1100|}}
  
 =====7. Анализ атак===== =====7. Анализ атак=====
-Обнаруженные атаки можно изучить в разделах DDoS атаки в QoE Анлитике.+Обнаруженные атаки можно изучить в разделах DDoS атаки в QoE Аналитике.
  
-  - Начните с раздела "ТОП атак" за период 24 часа.\\ Отсортируйте атаки по количеству сессий, запишите себе несколько IP с наибольшим количеством сессиий.\\ {{:dpi:dpi_options:opt_ddos:qoe_ddos_3.png?direct&700|}}+  - Начните с раздела "ТОП атак" за период 24 часа.\\ Отсортируйте атаки по количеству сессий, запишите себе несколько IP с наибольшим количеством сессиий.\\ {{:dpi:dpi_options:opt_ddos:qoe_ddos_3.png?nolink&700|}}
   - Посмотрите раздел "ТОП атак по протоколам"\\ Также отсортируйте по количеству сессий. Запишите себе эти протоколы   - Посмотрите раздел "ТОП атак по протоколам"\\ Также отсортируйте по количеству сессий. Запишите себе эти протоколы
-  - Посмотрите раздел "ТОП атакующих IP-адресов", запишите себе несколько IP с наибольшим количеством сессиий\\ {{:dpi:dpi_options:opt_ddos:qoe_ddos_2.png?direct&700|}} +  - Посмотрите раздел "ТОП атакующих IP-адресов", запишите себе несколько IP с наибольшим количеством сессиий\\ {{:dpi:dpi_options:opt_ddos:qoe_ddos_2.png?nolink&700|}} 
-  - Посмотрите Лог атак\\ С фильтром по выбранным ранее абонентам и протоколу.\\ Там можно почерпнуть детали атаки и сделать допвыводы, чтобы принимать какие-либо решения.\\ Например, на скрине ниже явно видно, что идет перебор портов на одном и том же адресе по UDP протоколу. В данном случае достаточно поместить IP атакующего в отдельную АС и сделать ее drop. +  - Проанализируйте Лог атак с фильтром по выбранным ранее абонентам и протоколу.\\ Там можно почерпнуть детали атаки и сделать дополнительные выводы, чтобы принимать какие-либо решения.\\ Например, на скриншоте ниже явно видно, что идет перебор портов на одном и том же адресе по UDP протоколу. В этом случае достаточно назначить на профиль атакующего абонента политику ''drop'' для прикладного протокола ''upd unknown'' через сессионный полисинг (18 услуга).\\ \\ Это означает что для выбранного абонента будет полностью заблокирован трафик попадающий в данный протокол, т.е. как UDP flood, так и легитимный UDP трафик определенный на DPI как udp unknown.  
-<note tip>Блокировка АС подробно описана в сценарии [[dpi:qoe_analytics:cases:network_health:flood#блокировка_ip_с_помещением_в_автономную_систему|Блокировка IP с помещением в автономную систему]]</note> + 
-{{:dpi:dpi_options:opt_ddos:qoe_ddos_4.png?direct&1100|}}\\ +<note tip>Подробнее о настройке сессионного полисинга: [[dpi:dpi_options:opt_shaping:shaping_session]]</note> 
 + 
 +{{:dpi:dpi_options:opt_ddos:qoe_ddos_4.png?nolink&1100|}}\\