Проверка конфигурации компонентов Немезида ВАФ | Немезида ВАФ

Немезида ВАФ — это комплекс, состоящий из нескольких компонентов, взаимодействующих друг с другом. Некорректная настройка одного из компонентов может привести к его неработоспособности или неработоспособности всего комплекса. Ниже представлен список основных действий, которые необходимо выполнить для проверки корректной настройки каждого компонента Немезида ВАФ.

Фильтрующая нода

Фильтрующая нода предназначена для анализа запросов и принятия решения об их блокировке в случае выявления признаков атак или прочих аномалий.

Установка и первичная настройка

При настройке фильтрующей ноды необходимо:

1. Проверить, что динамический модуль интегрирован в веб-сервер Nginx;

2. Проверить, что версия установленного динамического модуля (пакет nwaf-dyn), соответствует установленной версии веб-сервера Nginx;

3. Проверить, что в файле /etc/nginx/nwaf/conf/global/nwaf.conf заданы обязательные параметры.

Более подробная информация доступна в соответствующем разделе руководства.

Проверка конфигурации

Перед проверкой работы фильтрующей ноды необходимо убедиться в корректности конфигурации веб-сервера Nginx и перезапустить сервисы:

# nginx -t
# systemctl restart nginx rabbitmq-server memcached nwaf_update mla_main api_firewall
# systemctl status nginx rabbitmq-server memcached nwaf_update mla_main api_firewall

Если при проверке конфигурации отсутствуют ошибки и все сервисы активны, то:

1. Проверяем наличие возможных ошибок в журналах:

  • /var/log/nwaf/mla.log;
  • /var/log/nwaf/nwaf_update.log.

2. Проверяем наличие файла /etc/nginx/nwaf/rules.bin и его размер. Если файл отсутствует или пустой, то необходимо предоставить доступ к внешним ресурсам.

3. Отправляем тестовый запрос:

# curl -i http://WAF_SERVER/nwaftest

Если все настроено правильно, то ответ от фильтрующей ноды будет содержать код 403, а в журнале /var/log/nginx/error.log появится сообщение:

Nemesida WAF: the request 5274fe3c397782a09b4f1b057e572e21 blocked by rule ID 1 in zone URL, ...

Если запрос не блокируется, то выполните действия из соответствующего раздела руководства.

Nemesida AI

Модуль машинного обучения состоит из агента машинного обучения Nemesida AI MLA (входит в пакет nwaf-dyn и в основном не требует настройки) и модуля машинного обучения Nemesida AI MLC.

Установка и первичная настройка

При настройке компонента необходимо проверить, что:

1. Предоставлен доступ к внешним ресурсам;

2. В файле /opt/mlc/mlc.conf заданы обязательные параметры;

3. Произведена настройка сбора данных для построения поведенческой модели.

Проверка конфигурации

При проверке конфигурации Nemesida AI MLC необходимо:

1. Перезапустить сервисы и проверить их статус:

# systemctl restart mlc_main rabbitmq-server memcached
# systemctl status mlc_main rabbitmq-server memcached

2. Проверить наличие ошибок в журнале компонента /var/log/nwaf/mlc.log.

Nemesida WAF API

Nemesida WAF API предназначен для взаимодействия компонентов друг с другом, а также приема информации об инцидентах и выявленных уязвимостях для передачи в БД.

Установка и первичная настройка

При настройке компонента необходимо убедиться, что:

1. Предоставлен доступ к внешним ресурсам;

2. В файле /var/www/nw-api/settings.py заданы обязательные параметры;

3. Произведена интеграция Nemesida WAF API с другими компонентами Немезида ВАФ.

Более подробная информация доступна в соответствующем разделе руководства.

Проверка конфигурации

При проверке конфигурации Nemesida WAF API необходимо:

1. Перезапустить сервисы и проверить их статус:

# systemctl restart nw-api rldscupd nginx memcached
# systemctl status nw-api rldscupd nginx memcached

2. Проверить наличие ошибок в журнале компонента /var/log/uwsgi/nw-api/*.log;

3. Повторно отправить тестовый запрос на фильтрующую ноду:

# curl -i http://WAF_SERVER/nwaftest

Если все настроено корректно, то при блокировке запроса фильтрующей нодой в журнале /var/log/uwsgi/nw-api/nw-api-logging.log появится информация о заблокированном запросе:

Updating description for RuleID 1
Request a9d946493221337236b41a7ad0a3120a (BT: 2, client: 1.1.1.1, server: example.com, WAF ID: 1234567890) received from 2.2.2.2

Если запись не появляется, то выполните действия из соответствующего раздела руководства.

Личный кабинет

Компонент предназначен для визуализации и систематизации информации об атаках и выявленных уязвимостях, а также управления настройками Немезида ВАФ и веб-сервера Nginx.

Установка и первичная настройка

При настройке компонента необходимо убедиться, что:

1. Предоставлен доступ к внешним ресурсам;

2. В файле /var/www/app/cabinet/settings.py заданы обязательные параметры;

3. При выполнении миграций и создании администратора не возникает ошибок:
Пример вывода:

Operations to perform:
Apply all migrations: admin, auth, contenttypes, main, sessions
Running migrations:
Applying main.0001_initial... OK
Applying contenttypes.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying admin.0003_logentry_add_action_flag_choices... OK
Applying contenttypes.0002_remove_content_type_name... OK
...
Applying main.0091_userconfig_bt16... OK
Applying main.0092_geo_tokens... OK
Applying main.0093_wafuser_ec_toggle... OK
Applying main.0094_alter_geo_tokens_waf_id... OK
Applying main.0095_training... OK
Applying sessions.0001_initial... OK
Superuser's e-mai:

Более подробная информация доступна в соответствующем разделе руководства.

Проверка конфигурации

При проверке конфигурации Личного кабинета необходимо:

1. Перезапустить сервисы и проверить их статус:

# systemctl restart nginx cabinet cabinet_ipinfo cabinet_attack_notification cabinet_cleaning_db cabinet_rule_update memcached
# systemctl status nginx cabinet cabinet_ipinfo cabinet_attack_notification cabinet_cleaning_db cabinet_rule_update memcached

2. Проверить наличие ошибок в журнале компонента /var/log/uwsgi/cabinet/*.log;

3. Повторно отправить тестовый запрос на фильтрующую ноду:

# curl -i http://WAF_SERVER/nwaftest

Если все настроено корректно, то в Личном кабинете отобразится запрос, который был заблокирован. Если запись не появляется, то выполните шаги из соответствующего раздела руководства.