Установка Wazuh Server 4.14 - пошаговое руководство
Wazuh Server - это центральный компонент платформы, который принимает данные от агентов, выполняет анализ событий, применяет правила обнаружения и генерирует оповещения. Сервер включает два основных компонента: Wazuh Manager (обработка событий) и Filebeat (передача данных в индексатор). Перед установкой сервера необходимо завершить установку Wazuh Indexer .
Предварительные требования
Аппаратные требования
| Параметр | Минимум | Рекомендация |
|---|---|---|
| CPU | 2 ядра | 8 ядер |
| RAM | 2 ГБ | 8 ГБ |
| Диск | 20 ГБ | 50+ ГБ |
Сетевые требования
| Порт | Назначение |
|---|---|
| 1514/TCP | Прием данных от агентов |
| 1515/TCP | Регистрация агентов |
| 1516/TCP | Кластерная коммуникация серверов |
| 55000/TCP | REST API |
Зависимости
- Установленный и работающий Wazuh Indexer
- Файл
wazuh-certificates.tarс сертификатами, созданными при установке индексатора - Доступ к
packages.wazuh.com
Добавление репозитория
Ubuntu / Debian
apt-get install gnupg apt-transport-https
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring \
--keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" \
| tee -a /etc/apt/sources.list.d/wazuh.list
apt-get updateCentOS / RHEL 8 и ранее (YUM)
rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH
echo -e '[wazuh]\ngpgcheck=1\ngpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH\nenabled=1\nname=EL-$releasever - Wazuh\nbaseurl=https://packages.wazuh.com/4.x/yum/\nprotect=1' \
| tee /etc/yum.repos.d/wazuh.repoRHEL 9+ / CentOS Stream 10 (DNF)
rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH
echo -e '[wazuh]\ngpgcheck=1\ngpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH\nenabled=1\nname=EL-$releasever - Wazuh\nbaseurl=https://packages.wazuh.com/4.x/yum/\npriority=1' \
| tee /etc/yum.repos.d/wazuh.repoУстановка Wazuh Manager
Ubuntu / Debian
apt-get -y install wazuh-managerCentOS / RHEL
yum -y install wazuh-managerПосле установки менеджер запускается автоматически. Проверьте статус:
systemctl status wazuh-managerУстановка и настройка Filebeat
Filebeat передает оповещения и архивные события из Wazuh Manager в Wazuh Indexer.
Установка Filebeat
apt-get -y install filebeat # Ubuntu / Debian
yum -y install filebeat # CentOS / RHELЗагрузка конфигурации
curl -so /etc/filebeat/filebeat.yml \
https://packages.wazuh.com/4.14/tpl/wazuh/filebeat/filebeat.ymlНастройка подключения к индексатору
Отредактируйте /etc/filebeat/filebeat.yml, указав адрес индексатора:
output.elasticsearch:
hosts: ["<IP_ИНДЕКСАТОРА>:9200"]
protocol: https
username: ${username}
password: ${password}Для кластера из нескольких индексаторов укажите все узлы:
output.elasticsearch:
hosts:
- "<IP_ИНДЕКСАТОРА_1>:9200"
- "<IP_ИНДЕКСАТОРА_2>:9200"
- "<IP_ИНДЕКСАТОРА_3>:9200"
protocol: https
username: ${username}
password: ${password}Создание хранилища учетных данных
filebeat keystore create
echo admin | filebeat keystore add username --stdin --force
echo admin | filebeat keystore add password --stdin --forceЗамените admin на актуальные учетные данные для доступа к индексатору.
Загрузка шаблона и модуля Wazuh
curl -so /etc/filebeat/wazuh-template.json \
https://raw.githubusercontent.com/wazuh/wazuh/v4.14.4/extensions/elasticsearch/7.x/wazuh-template.json
chmod go+r /etc/filebeat/wazuh-template.json
curl -s https://packages.wazuh.com/4.x/filebeat/wazuh-filebeat-0.5.tar.gz \
| tar -xvz -C /usr/share/filebeat/moduleНастройка подключения индексатора в ossec.conf
Начиная с Wazuh 4.14, менеджер может напрямую взаимодействовать с индексатором. Настройте учетные данные:
echo '<INDEXER_USERNAME>' | /var/ossec/bin/wazuh-keystore -f indexer -k username
echo '<INDEXER_PASSWORD>' | /var/ossec/bin/wazuh-keystore -f indexer -k passwordОтредактируйте /var/ossec/etc/ossec.conf, добавив секцию <indexer>:
<indexer>
<enabled>yes</enabled>
<hosts>
<host>https://<IP_ИНДЕКСАТОРА>:9200</host>
</hosts>
<ssl>
<certificate_authorities>
<ca>/etc/filebeat/certs/root-ca.pem</ca>
</certificate_authorities>
<certificate>/etc/filebeat/certs/filebeat.pem</certificate>
<key>/etc/filebeat/certs/filebeat-key.pem</key>
</ssl>
</indexer>Ключевые секции ossec.conf
Файл /var/ossec/etc/ossec.conf содержит основную конфигурацию менеджера. Ключевые секции:
| Секция | Описание |
|---|---|
<global> | Общие настройки: email-уведомления, уровень журналирования |
<alerts> | Минимальный уровень оповещений для записи в лог |
<remote> | Настройки приема соединений от агентов |
<rootcheck> | Проверка руткитов |
<syscheck> | Мониторинг целостности файлов (FIM) |
<vulnerability-detector> | Сканирование уязвимостей |
<indexer> | Подключение к Wazuh Indexer |
<cluster> | Кластерная конфигурация |
Развертывание сертификатов для Filebeat
NODE_NAME=wazuh-1
mkdir /etc/filebeat/certs
tar -xf ./wazuh-certificates.tar -C /etc/filebeat/certs/ \
./$NODE_NAME.pem ./$NODE_NAME-key.pem ./root-ca.pem
mv -n /etc/filebeat/certs/$NODE_NAME.pem /etc/filebeat/certs/filebeat.pem
mv -n /etc/filebeat/certs/$NODE_NAME-key.pem /etc/filebeat/certs/filebeat-key.pem
chmod 500 /etc/filebeat/certs
chmod 400 /etc/filebeat/certs/*
chown -R root:root /etc/filebeat/certsЗамените wazuh-1 на имя узла сервера, указанное в config.yml при генерации сертификатов.
Запуск служб
Wazuh Manager
systemctl daemon-reload
systemctl enable wazuh-manager
systemctl start wazuh-managerFilebeat
systemctl daemon-reload
systemctl enable filebeat
systemctl start filebeatКластерная конфигурация
Wazuh Server поддерживает кластеризацию по модели master/worker для обеспечения отказоустойчивости и масштабирования.
Настройка master-узла
Отредактируйте /var/ossec/etc/ossec.conf на master-узле:
<cluster>
<name>wazuh</name>
<node_name>master-node</node_name>
<node_type>master</node_type>
<key>c98b62a9b6169ac5f67dae55ae4a9088</key>
<port>1516</port>
<bind_addr>0.0.0.0</bind_addr>
<nodes>
<node><IP_MASTER_УЗЛА></node>
</nodes>
<hidden>no</hidden>
<disabled>no</disabled>
</cluster>Настройка worker-узлов
На каждом worker-узле установите Wazuh Manager и Filebeat, затем отредактируйте /var/ossec/etc/ossec.conf:
<cluster>
<name>wazuh</name>
<node_name>worker-01</node_name>
<node_type>worker</node_type>
<key>c98b62a9b6169ac5f67dae55ae4a9088</key>
<port>1516</port>
<bind_addr>0.0.0.0</bind_addr>
<nodes>
<node><IP_MASTER_УЗЛА></node>
</nodes>
<hidden>no</hidden>
<disabled>no</disabled>
</cluster>Ключевые параметры кластера:
| Параметр | Описание |
|---|---|
name | Имя кластера, одинаковое на всех узлах |
node_name | Уникальное имя каждого узла |
node_type | master или worker |
key | Общий ключ аутентификации (32 символа hex), одинаковый на всех узлах |
nodes | IP-адрес master-узла |
Сгенерируйте ключ кластера:
openssl rand -hex 16После настройки перезапустите менеджер на всех узлах:
systemctl restart wazuh-managerПроверка установки
Проверка статуса менеджера
systemctl status wazuh-managerПроверка Filebeat
filebeat test outputОжидаемый результат:
elasticsearch: https://<IP_ИНДЕКСАТОРА>:9200...
parse url... OK
connection...
parse host... OK
dns lookup... OK
addresses: <IP>
dial up... OK
TLS...
security: server's certificate chain verification is enabled
...
talk to server... OK
...Проверка кластера серверов
/var/ossec/bin/cluster_control -lКоманда выводит список всех узлов кластера с их типом, версией и статусом.
Проверка через REST API
TOKEN=$(curl -sk -u wazuh-wui:<WUI_PASSWORD> \
-X POST "https://localhost:55000/security/user/authenticate?raw=true")
curl -sk -H "Authorization: Bearer $TOKEN" \
"https://localhost:55000/manager/info" | python3 -m json.toolУстранение неполадок
Менеджер не запускается
journalctl -u wazuh-manager -xe
cat /var/ossec/logs/ossec.log | tail -50Частые причины:
- Ошибки в
ossec.conf- проверьте XML-синтаксис:/var/ossec/bin/wazuh-analysisd -t - Порт 1514 или 1515 занят другим процессом
- Недостаточно прав для доступа к файлам конфигурации
Filebeat не подключается к индексатору
- Проверьте доступность индексатора:
curl -k -u admin https://<IP_ИНДЕКСАТОРА>:9200 - Убедитесь в корректности учетных данных в keystore
- Проверьте сертификаты: правильные файлы, права доступа 400, владелец root
Worker не подключается к master
- Убедитесь, что ключ кластера (
<key>) одинаков на всех узлах - Проверьте сетевую доступность порта 1516 между узлами
- Убедитесь, что
<nodes>содержит IP master-узла, а не worker-а
Агенты не регистрируются
- Проверьте доступность порта 1515 (регистрация) на сервере
- Убедитесь, что firewall не блокирует порты 1514-1515
- Проверьте лог:
cat /var/ossec/logs/ossec.log | grep -i "error\|warn"
Отключение автоматических обновлений
Ubuntu / Debian:
sed -i "s/^deb /#deb /" /etc/apt/sources.list.d/wazuh.list
apt-get updateCentOS / RHEL:
sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/wazuh.repoДальнейшие шаги
- Установка Wazuh Dashboard - следующий компонент в порядке установки
- Установка Wazuh Agent - развертывание агентов на конечных точках
- Архитектура Wazuh - подробное описание архитектуры платформы