Что нового в ноде Вебмониторэкс (при обновлении ноды 2.18 и ниже)¶
На этой странице перечислены изменения, доступные при обновлении ноды 2.18 и ниже до версии 4.0. Все изменения доступны как в клиентской ноде, так и в ноде с мультиарендной опцией версии 4.0.
Нода версии 3.6 и ниже больше не поддерживается
Обратите внимание, что нода версии 3.6 и ниже больше не поддерживается, поэтому мы рекомендуем обновить модули.
В последней версии ноды значительно упрощена настройка ноды и повышено качество фильтрации трафика. Некоторые настройки ноды 3.6 несовместимы с новой версией ноды. Перед обновлением компонентов внимательно изучите набор изменений и рекомендации по обновлению.
Критические изменения в наборе метрик¶
Начиная с версии 4.0, недоступны следующие метрики collectd:
-
curl_json-wallarm_nginx/gauge-requests— вы можете использовать аналогичную метрику,curl_json-wallarm_nginx/gauge-abnormal -
curl_json-wallarm_nginx/gauge-attacks -
curl_json-wallarm_nginx/gauge-blocked -
curl_json-wallarm_nginx/gauge-time_detect -
curl_json-wallarm_nginx/derive-requests -
curl_json-wallarm_nginx/derive-attacks -
curl_json-wallarm_nginx/derive-blocked -
curl_json-wallarm_nginx/derive-abnormal -
curl_json-wallarm_nginx/derive-requests_lost -
curl_json-wallarm_nginx/derive-tnt_errors -
curl_json-wallarm_nginx/derive-api_errors -
curl_json-wallarm_nginx/derive-segfaults -
curl_json-wallarm_nginx/derive-memfaults -
curl_json-wallarm_nginx/derive-softmemfaults -
curl_json-wallarm_nginx/derive-time_detect
Поддерживаемые формы установки¶
-
Обновлена версия Community Ingress‑контроллера NGINX, на котором основан Ingress-контроллер Вебмониторэкс. Ранее использовалась версия 0.26.2, теперь — 1.3.0.
Инструкция по миграции на новую версию Ingress‑контроллера Вебмониторэкс →
-
Добавлена поддержка CloudLinux OS 6.x
-
Добавлена поддержка Debian 11.x Bullseye
-
Прекращена поддержка Ubuntu 16.04 LTS (xenial)
-
Добавлена поддержка AlmaLinux, Rocky Linux и Oracle Linux 8.x в связи с прекращением поддержки CentOS 8.x
Пакеты ноды для альтернативной операционной системы будут храниться в репозитории CentOS 8.x.
Полный список поддерживаемых форм установок →
Требования к системе для установки ноды¶
-
Теперь нода поддерживает работу с белыми, черными и серыми списками IP‑адресов. Вы можете добавить в список как одиночные IP-адреса, так и страны или дата-центры.
Чтобы при анализе запросов нода использовала актуальный список IP-адресов, которые зарегистрированы в стране, регионе или дата-центре из списков IP, нода должна иметь доступ к адресам, с которых они скачиваются. Обеспечение доступа к этим адресам — новое требование к виртуальной машине, на которую устанавливается нода.
Диапазоны IP-адресов, к которым необходимо обеспечить доступ:
-
Начиная с версии 4.0, фильтрующая нода выгружает данные в Вычислительный кластер Вебмониторэкс, используя адрес
api.webmonitorx.ru:443вместоapi.webmonitorx.ru:444.Если ваш сервер с фильтрующей нодой имеет ограниченный доступ к внешним ресурсам и доступ настраивается для каждого ресурса отдельно, после обновления до версии 4.0 синхронизация ноды с Вычислительным кластером остановится.
Чтобы возобновить синхронизацию, в конфигурационных файлах замените порт
444на443для адресов Вебмониторэкс API, указанных для каждого из ресурсов.
Единый метод регистрации нод в Вычислительном кластере Вебмониторэкс¶
Начиная с версии 4.0, на любой платформе установки можно использовать токен для регистрации ноды в Вычислительном кластере Вебмониторэкс. В предыдущих версиях на некоторых платформах требовалась пара "email пользователя-пароль".
Единый метод регистрации нод по токену обеспечивает более безопасное и быстрое подключение к Вычислительному кластеру:
-
Для синхронизации ноды и Вычислительного кластера не требуется поддерживать отдельные аккаунты пользователей с ролью Деплой.
-
Личные данные пользователей остаются в пределах Вычислительного кластера Вебмониторэкс.
-
Нет необходимости отключать механизм двухфакторной аутентификации, обеспечивающий защиту данных аккаунтов пользователей.
-
Можно использовать одну ноду для первичной обработки трафика и пост-анализа запросов, если они выполняются на разных серверах.
В связи с изменениями в способах регистрации нод, изменяются типы нод:
-
Для обозначения ноды с единым способом регистрации появился новый тип — нода Вебмониторэкс. Нода подключается к Вычислительному кластеру по токену с помощью скрипта
register-node.В предыдущих версиях этот тип ноды назывался облачная нода. Нода подключалась к Вычислительному кластеру также по токену, но с помощью другого скрипта,
addcloudnode.Миграция с облачной ноды на ноду Вебмониторэкс не требуется.
-
Локальная нода считается устаревшей. Локальная нода подключалась к Вычислительному кластеру по паре "email пользователя-пароль" с помощью скрипта
addnode.Теперь при установке модуля Вебмониторэкс для NGINX регистрация ноды будет выглядеть следующим образом:
- Создать ноду в Консоли управления и скопировать сгенерированный токен.
-
Запустить на сервере скрипт
register-node, используя скопированный токен.В Docker-контейнер токен передается в новой переменной окружения
WALLARM_API_TOKEN.
Поддержка локальной ноды
В версии 4.0 нода локального типа считается устаревшей, но еще поддерживается. В будущих релизах поддержка локальной ноды прекратится полностью.
Рекомендуется заменить локальную ноду на ноду Вебмониторэкс заранее. Инструкции по обновлению включают шаги по миграции на новый тип ноды.
Упрощенная конфигурация ноды Вебмониторэкс с мультиарендной опцией¶
Теперь при настройке ноды Вебмониторэкс с мультиарендной опцией тенанты и приложения задаются с помощью отдельных директив:
-
UUID тенанта задается в конфигурации с помощью новой директивы NGINX
wallarm_partner_client_uuid. -
Изменилось поведение директивы NGINX
wallarm_application: теперь используется только для задания уникальных идентификаторов защищаемых приложений.
Инструкция по обновлению ноды с мультиарендной опцией
Режимы фильтрации трафика¶
-
Новый режим фильтрации трафика — мягкая блокировка.
Использование режима мягкой блокировки позволяет значительно снизить уровень ложных срабатываний на атаки за счет блокировки только тех запросов, которые содержат признаки атаки и отправлены с IP-адресов из серого списка.
-
Теперь нода анализирует источник запросов только в режиме мягкой или обычной блокировки.
В выключенном режиме (
off) и режиме мониторинга (monitoring), нода:- Не блокирует запросы, отправленные с IP‑адресов из черного списка
- В режиме мониторинга выгружает в Вычислительный кластер Вебмониторэкс данные об атаках, отправленных с IP‑адресов из белого списка
Подробнее о режимах работы ноды Вебмониторэкс →
Управление источниками запросов¶
Прекращена поддержка следующих параметров для управления источниками запросов:
-
Всех
aclдиректив NGINX и переменных окружения, которые использовались для настройки черных списков IP-адресов. Теперь дополнительная настройка черных списков через конфигурационные файлы не требуется.
Появились новые возможности для управления источниками запросов:
-
Полное управление белым, черным и серым списками IP-адресов через Консоль управления Вебмониторэкс.
-
Поддержка фильтрации трафика в режиме мягкой блокировки и поддержка серого списка IP-адресов.
Использование серых списков в режиме мягкой блокировки позволяет значительно снизить уровень ложных срабатываний на атаки за счет блокировки только тех запросов, которые содержат признаки атаки и отправлены с IP-адресов из серого списка.
Для автоматического добавления адресов в серый список вы можете использовать новый триггер Добавить IP в серый список.
-
Автоматическое добавление IP-адресов Сканера Вебмониторэкс в белый список. Теперь добавлять IP-адреса Сканера в белый список вручную не требуется.
-
Управление блокировкой групп IP-адресов, которые зарегистрированы в определенной стране, регионе, дата-центре, являются адресами узлов Tor или сети VPN.
-
Возможность выбрать приложения, к которым необходимо ограничить или разрешить доступ, при добавлении IP‑адресов в списки.
-
Новая директива NGINX. Данная настройка позволяет выключить анализ источников запросов на совпадение с данными из списков IP-адресов.
Подробнее о добавлении IP-адресов в белый, черный и серый списки →
ПО для построения структуры API¶
Теперь нода поставляется с ПО ПроAPI Структура, который строит структуру ваших API на основе реального трафика приложений.
Подробнее о ПО ПроAPI Структура →
Правило для настройки обнаружения атак типа overlimit_res¶
Теперь можно настраивать обнаружение атак типа overlimit_res с помощью специального правила в Консоли управления.
В связи с этим, устарели следующие директивы NGINX:
-
Директива NGINX
wallarm_process_time_limit, которые использовались для установки собственного лимита времени на обработку одного запроса.Теперь лимит задается с помощью правила.
-
Директива NGINX
wallarm_process_time_limit_block, который задавал режим блокировки атак типаoverlimit_res.Если создано правило, нода будет блокировать атаки типа
overlimit_resв соответствии с общим режимом фильтрации.
Полная поддержка параметров прекратится в будущих релизах. Если параметры явно заданы в конфигурационных файлах и правило еще не настроено, поведение ноды соответствует значениям параметров. Однако рекомендуется перенести настройки в правило заранее, соответствующие шаги приведены в инструкциях по обновлению модулей.
Обновление страницы блокировки запросов¶
Обновлена страница блокировки /usr/share/nginx/html/wallarm_blocked.html. Обновлен внешний вид, добавлена возможность настроить логотип и почту для обращений.
Теперь по умолчанию страница выглядит следующим образом:
Подробнее о настройке страницы блокировки →
Новые параметры для базовой настройки ноды¶
-
Новые переменные окружения для Docker‑контейнера Вебмониторэкс на основе NGINX:
WALLARM_APPLICATION. В переменной передается идентификатор для обозначения защищенного приложения в Вычислительном кластере Вебмониторэкс.NGINX_PORT. В переменной передается порт, который будет использовать NGINX внутри Docker-контейнера.
-
Новые параметры конфигурационного файла
node.yamlдля настройки синхронизации Вычислительного кластера Вебмониторэкс и ноды:api.local_hostиapi.local_port. С помощью этих параметров вы можете задать локальный IP-адрес и порт сетевого интерфейса, через который отправляются запросы к Вебмониторэкс API.
Переименованные параметры, файлы и метрики¶
-
Изменились названия следующих директив NGINX:
- NGINX:
wallarm_instance→wallarm_application - NGINX:
wallarm_local_trainingset_path→wallarm_custom_ruleset_path - NGINX:
wallarm_global_trainingset_path→wallarm_protondb_path - NGINX:
wallarm_ts_request_memory_limit→wallarm_general_ruleset_memory_limit
Параметры с устаревшими названиями временно поддерживаются, но в будущих релизах их поддержка прекратится полностью. Логика параметров не изменилась.
- NGINX:
-
Изменилось название аннотации Ingress:
nginx.ingress.kubernetes.io/wallarm-instance→nginx.ingress.kubernetes.io/wallarm-application.Аннотация с устаревшим названием временно поддерживается, но в будущих релизах ее поддержка прекратится полностью. Логика аннотации не изменилась.
-
Изменилось название файла со сборкой индивидуальных правил:
/etc/wallarm/lom→/etc/wallarm/custom_ruleset. Теперь на ноду выгружается файл только с новым названием.В директиве NGINX
wallarm_custom_ruleset_path. -
Файл закрытого ключа
/etc/wallarm/license.keyпереименован в/etc/wallarm/private.key. Начиная с версии ноды 4.0 по умолчанию используется новое имя закрытого ключа. -
Изменилось название метрики collectd:
gauge-lom_id→gauge-custom_ruleset_id.Сервис временно возвращает как метрику с устаревшим названием, так и с новым. В будущих релизах поддержка устаревшей метрики прекатится полностью.
Параметры сервиса статистики¶
-
Сервис статистики теперь учитывает запросы, отправленные с IP‑адресов из черного списка. Количество таких запросов записывается в новый параметр
blocked_by_acl, а также учитывается в параметрахrequestsиblocked. -
Изменились названия параметров статистики ноды Вебмониторэкс:
lom_apply_time→custom_ruleset_apply_timelom_id→custom_ruleset_id
Эндпоинт
http://127.0.0.8/wallarm-statusвременно возвращает как параметры с устаревшими названиями, так и с новыми. В будущих релизах устаревшие параметры будут удалены.
Подробнее о сервисе статистики →
Новые переменные для настройки расширенного логирования ноды¶
Изменились следующие переменные ноды для настройки расширенного логирования:
-
Переменная
wallarm_request_timeпереименована вwallarm_request_cpu_time– время, потраченное CPU машины с фильтрующей нодой на выполнение запроса.Переменная с предыдущим названием временно поддерживается, но в будущих релизах ее поддержка прекратится полностью. Логика переменной не изменилась.
-
Добавлена переменная
wallarm_request_mono_time. Значение переменной складывается из суммы следующих показателей:- Время, потраченное CPU машины с фильтрующей нодой на выполнение запроса.
- Время ожидания в очереди на выполнение.
Возможность блокировать запросы с IP-адресов из черного списка без поиска признаков атак¶
Добавлена новая директива NGINX wallarm_acl_access_phase, с помощью которой вы можете увеличить производительность ноды Вебмониторэкс следующим образом:
-
По умолчанию фильтрующая нода блокирует запросы с IP-адресов из черного списка только после анализа запросов на наличие атак.
-
Включение
wallarm_acl_access_phase onменяет операции местами: блокировка запросов с IP-адресов из черного списка будет происходить сразу, без поиска атак в запросах. Это существенно снижает нагрузку на CPU ноды.
Процедура обновления¶
-
Ознакомьтесь с рекомендациями по обновлению модулей.
-
Обновите модули, следуя подходящей инструкции:
* [Обновление Ingress‑контроллера NGINX с сервисами Вебмониторэкс WAF](ingress-controller.md)
* [Обновление облачного образа ноды Вебмониторэкс](cloud-image.md)
- Перенесите настройку белых и черных списков на новую версию.
