Перейти к содержимому
Hogin Hogin
Назад

Wazuh с нуля: разворачиваем open-source SIEM/XDR за один вечер (часть 1/6)

5 мин чтения

Wazuh — бесплатный open-source SIEM/XDR под AGPL-лицензией, который закрывает заметную часть задач коммерческих решений: сбор логов, контроль целостности файлов, поиск уязвимостей, реакцию на события. Цена — ваше время на развёртывание и эксплуатацию. Открываем цикл из шести статей, и в первой — только установка: от git clone до работающего UI за вечер.

Содержание

Открыть содержание

Зачем разбирать 4.x, если уже есть 5.0

Актуальный стабильный релиз на момент публикации — Wazuh 4.14.7. При этом проект уже в публичной бете 5.0: кластеризация по умолчанию, замена Filebeat, переписанный движок анализа (актуальный статус — в release notes). Логично, что часть вещей поменяется. Но прежде чем разбирать, что именно, нужно зафиксировать базовый воркфлоу на стабильной 4.x: именно её вы поставите в продакшен сегодня, и именно от неё будете мигрировать.

Из чего состоит Wazuh

Три серверных компонента и агенты на наблюдаемых хостах:

Компоненты Wazuh: manager, indexer, dashboard и агенты

Важная деталь: правила и логика детектирования живут в manager, а не в indexer. Indexer можно потерять и поднять заново — вы потеряете историю, но не логику. Обратное неверно, и к этому мы вернёмся в части про кастомные правила.

Что нужно, чтобы поднять single-node

Требования скромнее, чем кажется, но не нулевые:

Официальный репозиторий с готовыми compose-файлами — wazuh/wazuh-docker. Берём тег под нужную версию:

sudo sysctl -w vm.max_map_count=262144
echo 'vm.max_map_count=262144' | sudo tee /etc/sysctl.d/99-wazuh.conf

git clone https://github.com/wazuh/wazuh-docker.git -b v4.14.7
cd wazuh-docker/single-node

TLS-сертификаты

Компоненты общаются друг с другом по TLS, поэтому до первого запуска нужны сертификаты. В Docker-варианте их генерирует одноразовый контейнер, который описан в generate-indexer-certs.yml (под капотом там та же логика, что в wazuh-certs-tool.sh из классической установки на хост):

docker compose -f generate-indexer-certs.yml run --rm generator

Сертификаты появятся в config/wazuh_indexer_ssl_certs/. Храните этот каталог как секрет: закрытые ключи лежат там же.

Запуск

docker compose up -d
docker compose ps

Внутри single-node/docker-compose.yml три сервиса: wazuh.manager, wazuh.indexer и wazuh.dashboard. Первый старт занимает несколько минут — indexer инициализирует security-конфигурацию, dashboard ждёт его готовности.

Как проверить, что всё работает

# indexer отвечает (учётные данные по умолчанию — см. ниже)
curl -sk -u admin:SecretPassword https://localhost:9200

# manager API: получить токен
curl -sk -u wazuh-wui:'MyS3cr37P450r.*-' -X POST \
  "https://localhost:55000/security/user/authenticate?raw=true"

Откройте https://<host> в браузере (сертификат самоподписанный — браузер предупредит, это ожидаемо) и войдите под admin / SecretPassword.

Смените пароли сразу. Учётные данные по умолчанию публично задокументированы. Это нормально для локальной лаборатории и недопустимо для всего, что видно из сети. Порядок смены (хэш в internal_users.yml плюс переменные окружения в compose) описан в документации Wazuh — мы вернёмся к этому в разделе про hardening.

Что видно в dashboard «из коробки»

Без единого агента дашборд почти пуст, но не совсем:

Первый полезный шаг — нажать Deploy new agent, поставить агента на любой тестовый Linux-хост и посмотреть, как за минуту появятся события. Подробно про агентов и FIM — в следующей части.

Single-node — не production

Это самое важное различие, и его стоит проговорить до того, как вы покажете «работающий SIEM» руководству.

Single-node против production-топологии

ПараметрSingle-node (docker compose)Production
Indexer1 нода, нет реплик шардов3+ ноды, реплики
Manager1 инстанскластер master + worker
Отказоустойчивостьпадение хоста = потеря сбора событийпереживает выход ноды
Масштабдесятки агентовсотни и тысячи
Бэкапы и обновлениявручнуюпо регламенту, с проверкой восстановления
Сертификаты и паролисгенерированные и дефолтныеротация, свой CA, секрет-менеджер
Для чеголаборатория, PoC, оценка стекареальный мониторинг

Single-node — это не «маленькая версия продакшена», а другой класс решения. Тот же стек, но отказоустойчивость, ёмкость хранилища, политика ретенции и модель эксплуатации — отдельная инженерная задача.

Итог

Развернуть Wazuh за вечер — не значит получить production-ready SIEM. Но этого достаточно, чтобы начать видеть события и понять, нужен ли вам этот стек вообще, прежде чем вкладываться в кластер, правила и интеграции. Дальше в цикле: агенты и контроль целостности файлов, кастомные правила и декодеры, active response, аудит Kubernetes и связка с Falco.


Поделиться:

Следующая статья
Cilium Tetragon: runtime-защита на eBPF, которая не просто логирует, а блокирует