В этом руководстве вы узнаете, как установить Wazuh с Graylog на Ubuntu с помощью официального установщика. Wazuh объединяет бесплатный движок SIEM с хранилищем данных, поддерживаемым OpenSearch, и удобным веб-интерфейсом, поэтому вы можете поднять все это на одной коробке Ubuntu менее чем за пятнадцать минут.

Запуск сервера без SIEM в 2026 году - проигрышная игра. Логи прокручиваются мимо, неудачные логины накапливаются, и первый раз, когда кто-то замечает компромисс, это когда резервная копия выходит из строя или клиент жалуется. Wazuh закрывает этот пробел.

Предпосылки

  • Сервер под управлением Ubuntu 26.04
  • Права пользователя: пользователь root или обычный пользователь с привилегиями sudo.
  • 4 ГБ ОЗУ минимум, 8 ГБ рекомендуется (только индексатор хочет 2 ГБ).
  • Не менее 40 ГБ диска. Оповещение быстро съедает хранилище.

Конвенции

1
2
# - данные команды должны выполняться с правами root либо непосредственно от имени пользователя root, либо с помощью команды sudo.
$ - данные команды должны выполняться от имени обычного пользователя.

Обновите систему

Свежая установка Ubuntu 26.04 требует обновления пакетов до последних доступных версий.

1
sudo apt update -y && sudo apt upgrade -y

Система может нуждаться в перезагрузке после обновления.

1
sudo reboot -f

Добавить репозиторий Wazuh APT

Установите предварительные условия

1
2
sudo apt install debconf adduser procps
sudo aptt install gnupg apt-transport-https

Wazuh поддерживает свой собственный репозиторий APT с последними стабильными релизами. Начните с импорта ключа подписи GPG:

1
sudo 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

После добавления ключа мы можем добавить стабильный репозиторий в список источников:

1
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | sudo tee -a /etc/apt/sources.list.d/wazuh.list

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

1
sudo apt update -y

Включите UFW и откройте порты, в которых нуждается Wazuh.

1
2
3
4
5
sudo ufw allow 443/tcp
sudo ufw allow 1514/tcp
sudo ufw allow 1515/tcp
sudo ufw allow 9200/tcp
sudo ufw allow 55000/tcp

Установка Wazuh Indexer

Wazuh Indexer - это компонент платформы, основанный на OpenSearch, который отвечает за хранение, индексацию и поиск данных безопасности.

Теперь, когда ключ GPG и репозиторий Wazuh добавлены, мы можем приступить к установке пакетов Wazuh с помощью команды ниже:

1
sudo apt install wazuh-indexer

Создание SSL сертификатов

Скачайте скрипт wazuh-certs-tool.sh и конфигурационный файл config.yml. Это создает сертификаты, которые шифруют связь между центральными компонентами Wazuh.

1
2
curl -sO https://packages.wazuh.com/4.14/wazuh-certs-tool.sh
curl -sO https://packages.wazuh.com/4.14/config.yml

Далее отредактируйте ./config.yml и замените имена узлов и значения IP соответствующими именами и IP-адресами. Вам нужно сделать это для всех узлов Wazuh server, Wazuh indexer и Wazuh dashboard. Добавьте столько полей узла, сколько необходимо. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
nodes:
  # Wazuh indexer nodes
  indexer:
    - name: node-1
      ip: "<indexer-node-ip>"
    #- name: node-2
    #  ip: "<indexer-node-ip>"
    #- name: node-3
    #  ip: "<indexer-node-ip>"

  # Wazuh server nodes
  # If there is more than one Wazuh server
  # node, each one must have a node_type
  server:
    - name: wazuh-1
      ip: "<wazuh-manager-ip>"
    #  node_type: master
    #- name: wazuh-2
    #  ip: "<wazuh-manager-ip>"
    #  node_type: worker
    #- name: wazuh-3
    #  ip: "<wazuh-manager-ip>"
    #  node_type: worker

  # Wazuh dashboard nodes
  dashboard:
    - name: dashboard
      ip: "<dashboard-node-ip>"

Запустите ./wazuh-certs-tool.sh для создания сертификатов. Для кластера с несколькими узлами эти сертификаты должны быть позже развернуты во всех экземплярах Wazuh в вашем кластере.

1
sudo bash ./wazuh-certs-tool.sh -A

После развертывания сертификатов в каталоге установки будет создан каталог wazuh-certificates со следующим содержанием:

1
2
3
4
5
6
7
wazuh-certificates/
├── admin-key.pem
├── admin.pem
├── root-ca.key
├── root-ca.pem
├── node-1-key.pem
└── node-1.pem

Сжимайте все необходимые файлы.

1
2
tar -cvf ./wazuh-certificates.tar -C ./wazuh-certificates/ .
rm -rf ./wazuh-certificates

После создания сертификатов необходимо переименовать и перенести сертификат индексатора Wazuh в соответствующие узлы индексатора Wazuh соответственно. Вы должны разместить их в каталоге по умолчанию /etc/wazuh-indexer/certs/, как указано в файле /etc/wazuh-indexer/opensearch.yml. Вы должны создать каталог, если он не существует.

Копировать сертификаты в /etc/wazuh-indexer/certs

1
2
3
4
5
6
7
8
9
sudo mkdir /etc/wazuh-indexer/certs
sudo tar -xf ./wazuh-certificates.tar -C /etc/wazuh-indexer/certs/ ./$NODE_NAME.pem ./$NODE_NAME-key.pem ./admin.pem ./admin-key.pem ./root-ca.pem

sudo mv -n /etc/wazuh-indexer/certs/$NODE_NAME.pem /etc/wazuh-indexer/certs/indexer.pem
sudo mv -n /etc/wazuh-indexer/certs/$NODE_NAME-key.pem /etc/wazuh-indexer/certs/indexer-key.pem

sudo chmod 500 /etc/wazuh-indexer/certs
sudo chmod 400 /etc/wazuh-indexer/certs/*
sudo chown -R wazuh-indexer:wazuh-indexer /etc/wazuh-indexer/certs

Здесь вы перемещаете сертификат узла и ключевые файлы, такие как node-1.pem и node-1-key.pem, в их соответствующую папку сертификатов. Они специфичны для узла и не требуются для других узлов. Однако обратите внимание, что сертификат root-ca.pem не перемещается, а копируется в папку certs. Таким образом, вы можете продолжить развертывание его в других папках компонентов на следующих этапах.

Настройка Wazuh Indexer

Изменить /etc/wazuh-indexer/opensearch.yml и заменить следующие значения:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
network.host: "<IP_ЭТОГО_УЗЛА>"
node.name: "node-1"

cluster.initial_master_nodes:
  - "node-1"
  - "node-2"
  - "node-3"

discovery.seed_hosts:
  - "<IP_ИНДЕКСАТОРА_1>"
  - "<IP_ИНДЕКСАТОРА_2>"
  - "<IP_ИНДЕКСАТОРА_3>"

plugins.security.nodes_dn:
  - "CN=node-1,OU=Wazuh,O=Wazuh,L=Moscow,C=RU"
  - "CN=node-2,OU=Wazuh,O=Wazuh,L=Moscow,C=RU"
  - "CN=node-3,OU=Wazuh,O=Wazuh,L=Moscow,C=RU"

network.host: устанавливает адрес этого узла как для HTTP, так и для транспортного трафика. Узел свяжется с этим адресом и будет использовать его в качестве своего адреса публикации. Принимает IP-адрес или имя хоста.

Используйте тот же адрес узла, установленный в config.yml, для создания SSL-сертификатов.

Имя узла обязательно должно совпадать с именем, используемым в config.yml для начальной конфигурации, например, node-1.

Включите и запустите службу Wazuh indexer.

1
2
3
sudo systemctl daemon-reload
sudo systemctl enable wazuh-indexer
sudo systemctl start wazuh-indexer

Для кластеров с несколькими узлами повторите предыдущие шаги на каждом узле Wazuh indexer.

Когда все узлы Wazuh indexer работают, запустите скрипт индексатора Wazuh indexer-security-init.sh на любом узле индексатора Wazuh, чтобы загрузить новую информацию о сертификатах и запустить кластер.

1
sudo /usr/share/wazuh-indexer/bin/indexer-security-init.sh

Выполните следующую команду, чтобы убедиться, что установка прошла успешно. Обратите внимание, что в этой команде используется 127.0.0.1, при необходимости установите свой Wazuh indexer.

1
sudo curl -XGET https://127.0.0.1:9200 -u admin:<ADMIN_PASSWORD> -k

На выходе мы должны получить что-то похожее:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
{
  "name" : "node-1",
  "cluster_name" : "wazuh-cluster",
  "cluster_uuid" : "095jEW-oRJSFKLz5wmo5PA",
  "version" : {
    "number" : "7.10.2",
    "build_type" : "rpm",
    "build_hash" : "db90a415ff2fd428b4f7b3f800a51dc229287cb4",
    "build_date" : "2023-06-03T06:24:25.112415503Z",
    "build_snapshot" : false,
    "lucene_version" : "9.6.0",
    "minimum_wire_compatibility_version" : "7.10.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "The OpenSearch Project: https://opensearch.org/"
}

Установка Wazuh Manager

Wazuh Server - это центральный компонент платформы, который принимает данные от агентов, выполняет анализ событий, применяет правила обнаружения и генерирует оповещения. Сервер включает два основных компонента: Wazuh Manager (обработка событий) и Filebeat (передача данных в индексатор).

Запустите следующие команды, чтобы установить Wazuh manager.

1
2
3
4
sudo apt install wazuh-manager
sudo systemctl daemon-reload
sudo systemctl enable wazuh-manager
sudo systemctl start wazuh-manager

Установка Filebeat

Filebeat передает оповещения и архивные события из Wazuh Manager в Wazuh Indexer.

1
sudo apt install filebeat

Настройка Filebeat

Скачать предварительно сконфигурированный файл конфигурации Filebeat.

1
sudo curl -so /etc/filebeat/filebeat.yml https://packages.wazuh.com/4.14/tpl/wazuh/filebeat/filebeat.yml

Настройка подключения к индексатору

Отредактируйте /etc/filebeat/filebeat.yml, указав адрес индексатора:

1
2
3
4
5
output.elasticsearch:
  hosts: ["<IP_ИНДЕКСАТОРА>:9200"]
  protocol: https
  username: ${username}
  password: ${password}

Для кластера из нескольких индексаторов укажите все узлы:

1
2
3
4
5
6
7
8
output.elasticsearch:
  hosts:
    - "<IP_ИНДЕКСАТОРА_1>:9200"
    - "<IP_ИНДЕКСАТОРА_2>:9200"
    - "<IP_ИНДЕКСАТОРА_3>:9200"
  protocol: https
  username: ${username}
  password: ${password}

Создайте хранилище ключей Filebeat для безопасного хранения учетных данных аутентификации.

1
sudo filebeat keystore create

Добавьте имя пользователя по умолчанию и пароль admin:admin в хранилище секретов.

1
2
sudo echo admin | filebeat keystore add username --stdin --force
sudo echo admin | filebeat keystore add password --stdin --force

Замените admin на актуальные учетные данные для доступа к индексатору.

Загрузите шаблон оповещений для индексатора Wazuh.

1
2
sudo curl -so /etc/filebeat/wazuh-template.json https://raw.githubusercontent.com/wazuh/wazuh/v4.14.7/extensions/elasticsearch/7.x/wazuh-template.json
sudo chmod go+r /etc/filebeat/wazuh-template.json

Установите модуль Wazuh для Filebeat.

1
sudo curl -s https://packages.wazuh.com/4.x/filebeat/wazuh-filebeat-0.5.tar.gz | tar -xvz -C /usr/share/filebeat/module

Развертывание сертификатов для Filebeat

Примечание
Убедитесь, что копия wazuh-certificates.tar, созданный на начальном этапе настройки, помещается в рабочий каталог.

Заменить <server_node_name> с именем сертификата серверного узла Wazuh, которое используется в config.yml при создании сертификатов. Затем переместите сертификаты в соответствующее место.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
NODE_NAME=wazuh-1

sudo mkdir /etc/filebeat/certs
sudo tar -xf ./wazuh-certificates.tar -C /etc/filebeat/certs/ ./$NODE_NAME.pem ./$NODE_NAME-key.pem ./root-ca.pem

sudo mv -n /etc/filebeat/certs/$NODE_NAME.pem /etc/filebeat/certs/filebeat.pem
sudo mv -n /etc/filebeat/certs/$NODE_NAME-key.pem /etc/filebeat/certs/filebeat-key.pem

sudo chmod 500 /etc/filebeat/certs
sudo chmod 400 /etc/filebeat/certs/*
sudo chown -R root:root /etc/filebeat/certs

Замените wazuh-1 на имя узла сервера, указанное в config.yml при генерации сертификатов.

Настройка подключения индексатора в ossec.conf

Примечание
Вы можете пропустить этот шаг, если не собираетесь использовать возможность обнаружения уязвимостей

Начиная с Wazuh 4.14, менеджер может напрямую взаимодействовать с индексатором. Настройте учетные данные:

1
2
sudo echo '<INDEXER_USERNAME>' | /var/ossec/bin/wazuh-keystore -f indexer -k username
sudo echo '<INDEXER_PASSWORD>' | /var/ossec/bin/wazuh-keystore -f indexer -k password

Отредактируйте /var/ossec/etc/ossec.conf, добавив секцию :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<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>

Замените своим IP-адресом или именем хоста. Вы можете найти это значение в файле конфигурации Filebeat /etc/filebeat/filebeat.yml.

Убедитесь, что сертификат Filebeat и имя ключа соответствуют файлам сертификата в /etc/filebeat/certs.

Запуск сервиса Filebeat

Включите и запустите сервис Filebeat.

1
2
3
sudo systemctl daemon-reload
sudo systemctl enable filebeat
sudo systemctl start filebeat

Проверка установки

Проверка статуса менеджера

1
sudo systemctl status wazuh-manager

Проверка Filebeat

1
filebeat test output

Ожидаемый результат:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
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
  ...

Установка Wazuh Dashboard

Wazuh Dashboard - это веб-интерфейс управления платформой, построенный на основе OpenSearch Dashboards.

1
2
sudo apt install debhelper tar curl libcap2-bin
sudo apt install wazuh-dashboard

Через дашборд администратор системы имеет возможность:

  • просматривать и анализировать события безопасности и журналы;
  • отслеживать подключённые агенты и состояние контролируемых систем;
  • обнаруживать подозрительную активность и потенциальные угрозы;
  • контролировать уязвимости программного обеспечения;
  • отслеживать изменения файлов и конфигурации;
  • исследовать и классифицировать инциденты безопасности;
  • создавать отчёты и визуализации на основе собранных данных.

Настройка Wazuh Dashboard

Настройка сертификатов так, чтобы сервис Wazuh Dashboard мог подключаться к кластеру Wazuh Indexer.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
NODE_NAME=dashboard

mkdir /etc/wazuh-dashboard/certs
tar -xf ./wazuh-certificates.tar -C /etc/wazuh-dashboard/certs/ \
  ./$NODE_NAME.pem ./$NODE_NAME-key.pem ./root-ca.pem

[ ! -e /etc/wazuh-dashboard/certs/dashboard.pem ] && \
  mv -n /etc/wazuh-dashboard/certs/$NODE_NAME.pem /etc/wazuh-dashboard/certs/dashboard.pem
[ ! -e /etc/wazuh-dashboard/certs/dashboard-key.pem ] && \
  mv -n /etc/wazuh-dashboard/certs/$NODE_NAME-key.pem /etc/wazuh-dashboard/certs/dashboard-key.pem

chmod 500 /etc/wazuh-dashboard/certs
chmod 400 /etc/wazuh-dashboard/certs/*
chown -R wazuh-dashboard:wazuh-dashboard /etc/wazuh-dashboard/certs

Замените dashboard на имя узла дашборда, указанное в config.yml при генерации сертификатов.

Отредактируйте файл /etc/wazuh-dashboard/opensearch_dashboards.yml:

1
2
3
4
server.host: 0.0.0.0
server.port: 443
opensearch.hosts: https://127.0.0.1:9200
opensearch.ssl.verificationMode: certificate

Запуск службы

1
2
3
systemctl daemon-reload
systemctl enable wazuh-dashboard
systemctl start wazuh-dashboard

Дашборд не запускается

Порт 443 занят другим процессом (например, Apache или Nginx)

Настройка подключения к Wazuh Server

Отредактируйте файл /usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml:

1
2
3
4
5
6
7
hosts:
  - default:
      url: https://<IP_СЕРВЕРА_WAZUH>
      port: 55000
      username: wazuh-wui
      password: <WUI_PASSWORD>
      run_as: true

Замените <IP_СЕРВЕРА_WAZUH> на IP-адрес узла с Wazuh Manager и <WUI_PASSWORD> на пароль пользователя wazuh-wui.

Доступ к веб-интерфейсу Wazuh с вашими учетными данными пользователя администратора. Это учетная запись администратора по умолчанию для индексатора Wazuh, и она позволяет вам получить доступ к панели инструментов Wazuh.

Первый вход

Откройте браузер и перейдите по адресу:

1
https://<IP_ДАШБОРДА>

Учетные данные по умолчанию:

1
2
    Логин: admin
    Пароль: admin

При первом доступе к панели инструментов Wazuh браузер показывает предупреждающее сообщение о том, что сертификат не был выдан доверенным органом. Исключение можно добавить в расширенные опции веб-браузера. Для повышения безопасности ранее сгенерированный файл root-ca.pem может быть импортирован в менеджер сертификатов браузера. Кроме того, вы можете настроить сертификат от доверенного органа.

Обеспечение безопасности вашей установки Wazuh

Теперь вы установили и настроили все центральные компоненты Wazuh. Мы рекомендуем изменить учетные данные по умолчанию, чтобы защитить вашу инфраструктуру от возможных атак.

Выберите тип развертывания и следуйте инструкциям по изменению паролей по умолчанию как для API Wazuh, так и для пользователей индексатора Wazuh.

1
2
sudo /usr/share/wazuh-indexer/plugins/opensearch-security/tools/wazuh-passwords-tool.sh \
  --api --change-all --admin-user wazuh --admin-password wazuh

Эта команда изменит пароли всех внутренних пользователей, включая admin и wazuh-wui.

Смена пароля конкретного пользователя

1
2
sudo /usr/share/wazuh-indexer/plugins/opensearch-security/tools/wazuh-passwords-tool.sh \
  --user admin --password <НОВЫЙ_ПАРОЛЬ> --admin-user wazuh --admin-password wazuh

После смены паролей обновите конфигурацию подключения в /usr/share/wazuh-dashboard/data/wazuh/config/wazuh.yml и перезапустите дашборд:

1
sudo systemctl restart wazuh-dashboard

Также обновите учетные данные в keystore Filebeat на сервере:

1
2
sudo echo <НОВЫЙ_ПАРОЛЬ> | filebeat keystore add password --stdin --force
systemctl restart filebeat

Использование собственных сертификатов

Для замены самоподписанных сертификатов на выданные корпоративным или публичным CA:

Поместите файлы сертификата, ключа и CA в /etc/wazuh-dashboard/certs/

Обновите пути в /etc/wazuh-dashboard/opensearch_dashboards.yml:

1
2
3
4
server.ssl.enabled: true
server.ssl.certificate: /etc/wazuh-dashboard/certs/your-cert.pem
server.ssl.key: /etc/wazuh-dashboard/certs/your-key.pem
opensearch.ssl.certificateAuthorities: ["/etc/wazuh-dashboard/certs/your-ca.pem"]

Установите права доступа:

1
2
sudo chmod 400 /etc/wazuh-dashboard/certs/*
sudo chown -R wazuh-dashboard:wazuh-dashboard /etc/wazuh-dashboard/certs

Перезапустите службу:

1
sudo systemctl restart wazuh-dashboard

Установка Wazuh Agent

Wazuh Agent - это легковесный компонент, устанавливаемый на контролируемых конечных точках. Агент собирает данные о событиях безопасности, выполняет локальные проверки и передает результаты на Wazuh Server для анализа.

Установка пакета

1
WAZUH_MANAGER="<IP_МЕНЕДЖЕРА>" sudo apt install wazuh-agent

С дополнительными параметрами:

1
2
3
4
5
WAZUH_MANAGER="<IP_МЕНЕДЖЕРА>" \
WAZUH_AGENT_NAME="web-server-01" \
WAZUH_AGENT_GROUP="linux-servers" \
WAZUH_REGISTRATION_PASSWORD="MyRegistrationPassword" \
sudo apt install wazuh-agent

Запуск службы

1
2
3
sudo systemctl daemon-reload
sudo systemctl enable wazuh-agent
sudo systemctl start wazuh-agent

Отключение автоматических обновлений

Мы рекомендуем отключить репозитории пакетов Wazuh после установки всех компонентов на этом сервере, чтобы предотвратить случайные обновления.

Выполните следующую команду только после завершения всех установок:

1
2
sudo sed -i "s/^deb /#deb /" /etc/apt/sources.list.d/wazuh.list
sudo apt update

Удаление Wazuh

Данное руководство описывает процедуру корректного удаления компонентов Wazuh 4.14. Удаление может быть частичным (только пакеты) или полным (пакеты + данные + конфигурация). Порядок удаления: сначала агенты, затем дашборд, сервер и индексатор.

Удаление Wazuh Agent

Остановка службы:

1
2
sudo systemctl stop wazuh-agent
sudo systemctl disable wazuh-agent

Удаление пакета (сохранение конфигурации):

1
sudo apt remove wazuh-agent

Полное удаление (пакет + конфигурация):

1
sudo apt purge wazuh-agent

Очистка оставшихся файлов:

1
2
3
sudo rm -rf /var/ossec
sudo rm -f /etc/apt/sources.list.d/wazuh.list
sudo rm -f /usr/share/keyrings/wazuh.gpg

Удаление Wazuh Dashboard

Остановка службы:

1
2
sudo systemctl stop wazuh-dashboard
sudo systemctl disable wazuh-dashboard

Удаление пакета:

1
sudo apt remove wazuh-dashboard

Полное удаление:

1
sudo apt purge wazuh-dashboard

Очистка оставшихся файлов:

1
2
3
sudo rm -rf /etc/wazuh-dashboard
sudo rm -rf /usr/share/wazuh-dashboard
sudo rm -rf /var/log/wazuh-dashboard

Удаление Wazuh Server (Manager + Filebeat)

Остановка служб:

1
2
3
4
sudo systemctl stop filebeat
sudo systemctl stop wazuh-manager
sudo systemctl disable filebeat
sudo systemctl disable wazuh-manager

Удаление пакетов:

1
sudo apt remove wazuh-manager filebeat

Полное удаление:

1
sudo apt purge wazuh-manager filebeat

Очистка оставшихся файлов:

1
2
3
4
sudo rm -rf /var/ossec
sudo rm -rf /etc/filebeat
sudo rm -rf /var/lib/filebeat
sudo rm -rf /usr/share/filebeat

Удаление Wazuh Indexer

Остановка службы:

1
2
sudo systemctl stop wazuh-indexer
systemctl disable wazuh-indexer

Удаление пакета:

1
sudo apt remove wazuh-indexer

Полное удаление:

1
sudo apt purge wazuh-indexer

Очистка оставшихся файлов (включая данные индексов):

1
2
3
4
sudo rm -rf /etc/wazuh-indexer
sudo rm -rf /var/lib/wazuh-indexer
sudo rm -rf /usr/share/wazuh-indexer
sudo rm -rf /var/log/wazuh-indexer

Очистка репозитория

После удаления всех компонентов удалите репозиторий Wazuh:

1
2
3
sudo rm -f /etc/apt/sources.list.d/wazuh.list
sudo rm -f /usr/share/keyrings/wazuh.gpg
sudo apt-get update

Очистка сертификатов

Удалите архив сертификатов и сгенерированные файлы:

1
2
3
sudo rm -f ./wazuh-certificates.tar
sudo rm -f ./wazuh-install-files.tar
sudo rm -rf ./wazuh-certificates

Удаление пользователей и групп

После полной деинсталляции можно удалить системных пользователей и группы:

1
2
3
4
5
6
sudo userdel wazuh
sudo groupdel wazuh
sudo userdel wazuh-indexer
sudo groupdel wazuh-indexer
sudo userdel wazuh-dashboard
sudo groupdel wazuh-dashboard

Проверка удаления

После удаления убедитесь, что все компоненты полностью удалены:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# Проверка отсутствия пакетов
dpkg -l | grep wazuh

# Проверка отсутствия служб
systemctl list-units | grep wazuh

# Проверка отсутствия процессов
ps aux | grep -E "wazuh|ossec" | grep -v grep

# Проверка освобождения портов
ss -tlnp | grep -E "1514|1515|9200|443|55000"

Установка Graylog

Graylog — это мощная платформа для управления журналами (логами), которая позволяет собирать, хранить и анализировать данные с разных источников.

Теперь мы установим Graylog и подключим его к нашему Wazuh Indexer.

Установка зависимостей

Graylog требует для работы Java, Elasticsearch и MongoDB. Для начала установим все необходимые компоненты:

Запустите следующую команду для импорта открытого ключа для MongoDB 8.0:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# Import MongoDB GPG key
curl -fsSL https://pgp.mongodb.com/server-8.0.asc | \
  sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-8.0.gpg

# Add official repo
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] \
https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/8.0 multiverse" | \
  sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list

# Install
sudo apt update
sudo apt install mongodb-org

Установим Java (версия 26):

1
sudo apt install openjdk-26-jre-headless

Установим Elasticsearch:

Для установки Elasticsearch добавим репозиторий:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# Import Elasticsearch GPG key
curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | \
  sudo gpg --dearmor -o /usr/share/keyrings/elastic.gpg

# Add official repo
echo "deb [signed-by=/usr/share/keyrings/elastic.gpg] \
https://artifacts.elastic.co/packages/9.x/apt stable main" | \
  sudo tee -a /etc/apt/sources.list.d/elastic-9.x.list
  
# Install
sudo apt update
sudo apt install elasticsearch

Установим Graylog:

Скачиваем репозиторий и устанавливаем Graylog:

1
2
3
4
wget https://packages.graylog2.org/repo/packages/graylog-7.1-repository_latest.deb
sudo dpkg -i graylog-7.1-repository_latest.deb
sudo apt-get update
sudo apt-get install graylog-server

Настройка Graylog

Настроим конфигурационный файл Graylog: Откройте файл /etc/graylog/server/server.conf:

Установите секретный ключ:

1
password_secret = some_random_secret

Чтобы создать свой пароль secret запустите следующую команду:

1
pwgen -N 1 -s 96

Установите админский пароль:

1
root_password_sha2 = <hashed_password>

Для получения хеша пароля можно использовать команду:

1
echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1

Настройте соединение с вашим Wazuh Indexer:

1
elasticsearch_hosts = https://user:pass@127.0.0.1:9200

Копируйте cacerts и импортируйте информацию rootCA.crt в Java Keystore.

1
sudo cp -a /usr/share/graylog-server/jvm/lib/security/cacerts /etc/graylog/server/certs/cacerts
1
sudo /usr/share/graylog-server/jvm/bin/keytool -importcert -keystore /etc/graylog/server/certs/cacerts -storepass changeit -alias root_ca -file /etc/graylog/server/certs/root-ca.pem
1
sudo nano /etc/default/graylog-server
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
# Path to a custom java executable. By default the java executable of the
# bundled JVM is used.
#JAVA=/usr/bin/java

# Default Java options for heap and garbage collection.
GRAYLOG_SERVER_JAVA_OPTS="-Xms1g -Xmx1g -server -XX:+UseG1GC -XX:-OmitStackTraceInFastThrow"

# Avoid endless loop with some TLSv1.3 implementations.
GRAYLOG_SERVER_JAVA_OPTS="$GRAYLOG_SERVER_JAVA_OPTS -Djdk.tls.acknowledgeCloseNotify=true"

# Fix for log4j CVE-2021-44228
#GRAYLOG_SERVER_JAVA_OPTS="$GRAYLOG_SERVER_JAVA_OPTS -Dlog4j2.formatMsgNoLookups=true"
GRAYLOG_SERVER_JAVA_OPTS="$GRAYLOG_SERVER_JAVA_OPTS -Dlog4j2.formatMsgNoLookups=true -Djavax.net.ssl.trustStore=/etc/graylog/server/certs/cacerts -Djavax.net.ssl.trustStorePassword=changeit"

# Pass some extra args to graylog-server. (i.e. "-d" to enable debug mode)
GRAYLOG_SERVER_ARGS=""

# Program that will be used to wrap the graylog-server command. Useful to
# support programs like authbind.
GRAYLOG_COMMAND_WRAPPER=""

Запустите сервер Graylog:

1
2
sudo systemctl start graylog-server
sudo systemctl enable graylog-server

Доступ к веб-интерфейсу Graylog

После запуска сервера Graylog можно подключиться к веб-интерфейсу.

Откройте браузер и перейдите по адресу: http://<ip-адрес-сервера>:9000

Войдите с использованием логина admin и пароля, который вы установили в конфиге.

Журналы для Graylog

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# Import fluentbit GPG key
curl -fsSL https://packages.fluentbit.io/fluentbit.key | \
 sudo gpg --dearmor -o /usr/share/keyrings/fluentbit-keyring.gpg

# Add official repo 
echo "deb [signed-by=/usr/share/keyrings/fluentbit-keyring.gpg] | \
https://packages.fluentbit.io/ubuntu/$codename $codename main" | \
 sudo tee /etc/apt/sources.list.d/fluent-bit.list

# Install
sudo apt update
sudo apt install fluent-bit

Отредактируйте файл /etc/fluent-bit/fluent-bit.conf, чтобы собрать файл alerts.json и отправить его в Graylog:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[SERVICE]
    flush        5
    daemon       Off
    log_level    info
    parsers_file parsers.conf
    plugins_file plugins.conf
    http_server  Off
    http_listen  0.0.0.0
    http_port    2020
    storage.metrics on
    storage.path /var/log/flb-storage/
    storage.sync normal
    storage.checksum off
    storage.backlog.mem_limit 5M
    Log_File /var/log/td-agent-bit.log
[INPUT]
    name  tail
    path  /var/ossec/logs/alerts/alerts.json
    tag wazuh
    parser  json
    Buffer_Max_Size 5MB
    Buffer_Chunk_Size 400k
    storage.type      filesystem
    Mem_Buf_Limit     512MB
[OUTPUT]
    Name  tcp
    Host  *your graylog host*
    Port  *your graylog port*
    net.keepalive off
    Match wazuh
    Format  json_lines
    json_date_key true

Запустите службу Fluent Bit:

1
2
sudo systemctl enable fluent-bit
sudo systemctl start fluent-bit

Теперь вам нужно настроить экстракторы Graylog для анализа ваших событий Wazuh.

Завершение

В этом руководстве мы узнали, как анализировать полученные предупреждения Wazuh, создавать уникальные индексы и направлять наши журналы в правильный индекс. Возможность разрезать, обрезать и маршрутизировать наши журналы в соответствии с нашими потребностями имеет решающее значение для любой команды SOC/MSP/ и т.д.

Если вам понравился этот пост о том, как установить Wazuh с Graylog на Ubuntu 26.04, пожалуйста, поделитесь им со своими друзьями в социальных сетях, которым может быть интересна эта статья или оставьте комментарий ниже.