Работа с метриками WAF‑ноды в Nagios¶
Проверьте, что Nagios успешно отслеживает статус созданного ранее сервиса. Для этого:
-
Войдите в веб‑интерфейс Nagios.
-
Перейдите на страницу сервисов, кликнув по ссылке Services.
-
Убедитесь, что сервис
wallarm_nginx_attacks
отображается и имеет статус «OK»:Принудительный запуск проверки
Если сервис не имеет статус «OK», вы можете принудительно перезапустить проверку сервиса для подтверждения его статуса.
Для этого нажмите на имя сервиса в столбце Service, а затем запустите проверку принудительно, выбрав в списке Service Commands пункт Re-schedule the next check of this service и введя необходимые параметры.
-
Просмотрите подробные сведения о сервисе, кликнув по ссылке с его именем в столбце Status:
Также убедитесь, что значение метрики, отображаемое в Nagios (строка Performance Data), совпадает с данными
wallarm-status
на WAF‑ноде:- Используйте команду
curl http://127.0.0.8/wallarm-status
, если используются настройки WAF‑ноды по умолчанию. -
Если мониторинг настроен иначе, см. файл конфигурации
/etc/nginx/conf.d/wallarm-status.conf
.Вывод команды будет аналогичен выводу ниже:
{"requests":0,"attacks":0,"blocked":0,"abnormal":0,"tnt_errors":0,"api_errors":0,"requests_lost":0,"segfaults":0,"memfaults":0,"softmemfaults":0,"time_detect":0,"db_id":46,"lom_id":4,"proton_instances": { "total":2,"success":2,"fallback":0,"failed":0 },"stalled_workers_count":0,"stalled_workers":[] }
- Используйте команду
-
Выполните тестовую атаку на приложение, защищенное WAF‑нодой. Для этого можно выполнить команду
curl
с вредоносным запросом к приложению или выполнить этот запрос в браузере.Пример
curl -I “http://node.example.local/?id='or+1=1--a-<script>prompt(1)</script>'”
-
Убедитесь, что значение «Performance Data» в Nagios увеличилось и соответствует значению, отображаемому
wallarm-status
на WAF‑ноде:{"requests":64,"attacks":16,"blocked":0,"abnormal":64,"tnt_errors":0,"api_errors":0,"requests_lost":0,"segfaults":0,"memfaults":0,"softmemfaults":0,"time_detect":0,"db_id":46,"lom_id":4,"proton_instances": { "total":2,"success":2,"fallback":0,"failed":0 },"stalled_workers_count":0,"stalled_workers":[] }
Теперь в информации о состоянии сервиса в Nagios отображаются значения метрики curl_json-wallarm_nginx/gauge-attacks
WAF‑ноды.
Визуализация данных Nagios
По умолчанию Nagios Core поддерживает только отслеживание статуса сервиса (OK
, WARNING
, CRITICAL
). Для хранения и визуализации значений метрик, содержащихся в Performance Data, вы можете воспользоваться сторонними утилитами, например, PHP4Nagios.