В предыдущих статьях была рассмотрена установка сервера одним из двух способов: простая установка Wazuh через скрипт и установка вручную по шагам.
На этой странице представлены методики установки агента разными способами. Агенты нужны для передачи логов с компьютеров клиентов в сервер.
Для стабильной работы Wazuh рекомендуется использовать одинаковые версии сервера и агентов. При несовпадении версий возможны ошибки подключения, некорректная работа модулей и потеря части событий безопасности. Оптимальной считается схема, при которой версия сервера Wazuh совпадает или выше версии агента. Агент можно установить на Windows от XP до WinServer 2022.
В данном описании сервер и агент находятся в общей сети. Доступ не перекрыт файерволом. IP-адрес сервера на тестовом стенде 192.168.5.30.
Для взаимодействия агента и сервера Wazuh обычно используются два основных порта:
1515/TCP – порт регистрации (Enrollment). Используется только при первичном подключении агента через wazuh-authd.
1514/TCP – основной защищённый канал связи. Используется для постоянного обмена событиями, логами и командами между агентом и сервером.
После успешной регистрации агент обычно больше не использует порт 1515. Дальнейшая работа идёт через порт 1514.
Установка агента с помощью PowerShell-скрипта.
Главное условие этого способа – клиентский компьютер должен иметь доступ к источнику установки агента Wazuh. В этом примере PowerShell скачивает MSI напрямую из Интернета packages.wazuh.com.
Если сеть закрытая, то такой способ в исходном виде не подходит. В сети без Интернета необходимо предварительно скачать установочный файл, разместить его на доступном сетевом ресурсе и указать локальный путь в установочном скрипте.
Выполним развертывание стандартным способом, как предлагает документация Wazuh. Нажимаем кнопку Deploy new agent на странице Overview.
Проходим по анкете, отмечаем необходимые параметры.
Шаг 1.
Для скачивания и установки выбираем инсталляционный пакет Windows.
Шаг 2.
Указываем IP-адрес сервера.
Remember server address – агент сохранит указанный адрес сервера в своей конфигурации. При следующих запусках или переустановке этот адрес будет подставляться автоматически. Агент будет использовать этот адрес для постоянного подключения к Wazuh.
Если переключатель выключен, адрес используется только для текущего процесса установки и не запоминается. Обычно его включают, если один постоянный Wazuh Manager, выполняется массовое разворачивание агентов, не планируется частая смена адреса сервера. Если инфраструктура тестовая или адрес может меняться – можно не включать.
Шаг 3.
Дополнительные настройки. При желании можно указать другое имя агента. В большинстве случаев на шаге 3 ничего менять не нужно.
Agent name – имя агента в Wazuh. По умолчанию берётся hostname клиентского ПК. Менять стоит только в некоторых случаях, например, разворачиваете много одинаковых VM. После регистрации имя уже нельзя изменить.
Groups – группы настроек агента. Default подходит для обычной установки. Другие группы используют, если есть отдельные политики для Linux/Windows или нужны специальные конфиги для определённых серверов.
Шаг 4.
Запускаем PowerShell-команду с правами администратора на клиенте Windows, которая автоматически загрузит, установит и зарегистрирует агента на сервере Wazuh.
Шаг 5.
Команда запускает службу агента Windows после установки. Выполняется на клиенте в PowerShell от администратора.
Шаг 6.
Это фактически проверка успешного подключения агента в Wazuh. Кнопка переносит в раздел Overview. Проверяем, появился ли новый агент в списке.

После выполненных действий в списке появился 1 активный агент.

Установка через GPO.
Главное условие – наличие доменной сети.
Через GPO существует несколько различных способов установки. Рассмотрен наиболее безпроблемный вариант с использованием скрипта.
Принцип действия.
Скрипт установки Wazuh распространяется через групповую политику и запускается автоматически при старте компьютера. Во время применения политик система выполняет сценарий, который проверяет наличие установленного агента Wazuh. Если агент отсутствует, скрипт подключается к сетевому ресурсу, запускает установочный MSI-пакет, выполняет регистрацию агента на сервере Wazuh и проверяет запуск службы. Результаты установки и возможные ошибки записываются в лог-файл для последующего контроля.
Подготавливаем скрипт и установочный файл.
Инсталлятор можно скачать с этой страницы. wazuh-agent-4.14.5-1.msi (актуальная на момент установки версия)
Необходимо переименовать файл в wazuh-agent.msi или изменить название в скрипте.
Скрипт.
|
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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 |
@echo off setlocal :: ================================ :: Настройки :: ================================ set SERVER=192.168.5.30 set SHARE=\\DC1\SYSVOL\PC360.local\scripts\wazuh set MSI=%SHARE%\wazuh-agent.msi set LOGDIR=%SystemDrive%\WazuhInstallLogs set LOGPATH=%LOGDIR%\%COMPUTERNAME%.log set MSI_LOG=%LOGDIR%\wazuh_install.log :: ================================ :: Создание папки для логов :: ================================ if not exist "%LOGDIR%" ( mkdir "%LOGDIR%" ) echo ===================================== >> "%LOGPATH%" echo [%DATE% %TIME%] Запуск скрипта на %COMPUTERNAME% >> "%LOGPATH%" :: ================================ :: Проверка доступности MSI :: ================================ if not exist "%MSI%" ( echo [%DATE% %TIME%] ERROR: Не найден установочный файл: %MSI% >> "%LOGPATH%" exit /b 1 ) :: ================================ :: Проверка установлен ли агент :: ================================ sc query WazuhSvc >nul 2>&1 if %errorlevel%==0 ( echo [%DATE% %TIME%] Wazuh Agent уже установлен. >> "%LOGPATH%" goto check_service ) :: ================================ :: Установка Wazuh Agent :: ================================ echo [%DATE% %TIME%] Начинается установка Wazuh Agent... >> "%LOGPATH%" msiexec /i "%MSI%" /qn ^ WAZUH_MANAGER="%SERVER%" ^ WAZUH_REGISTRATION_SERVER="%SERVER%" ^ /l*v "%MSI_LOG%" :: ================================ :: Ожидание завершения установки :: ================================ timeout /t 10 /nobreak >nul :: ================================ :: Проверка успешной установки :: ================================ sc query WazuhSvc >nul 2>&1 if %errorlevel%==0 ( echo [%DATE% %TIME%] Установка завершена успешно. >> "%LOGPATH%" ) else ( echo [%DATE% %TIME%] ERROR: Ошибка установки Wazuh Agent. >> "%LOGPATH%" echo [%DATE% %TIME%] Проверьте лог MSI: %MSI_LOG% >> "%LOGPATH%" exit /b 1 ) :check_service :: ================================ :: Проверка состояния службы :: ================================ sc query WazuhSvc | find "RUNNING" >nul if %errorlevel%==0 ( echo [%DATE% %TIME%] Служба Wazuh уже запущена. >> "%LOGPATH%" goto end_script ) echo [%DATE% %TIME%] Служба Wazuh не запущена. Пытаюсь запустить... >> "%LOGPATH%" net start WazuhSvc >nul 2>&1 :: ================================ :: Ожидание запуска службы :: ================================ set RETRY=0 :wait_service sc query WazuhSvc | find "RUNNING" >nul if %errorlevel%==0 ( echo [%DATE% %TIME%] Служба Wazuh успешно запущена. >> "%LOGPATH%" goto end_script ) if %RETRY% GEQ 10 ( echo [%DATE% %TIME%] ERROR: Служба Wazuh не запустилась вовремя. >> "%LOGPATH%" exit /b 1 ) set /a RETRY+=1 timeout /t 5 /nobreak >nul goto wait_service :end_script :: ================================ :: Завершение :: ================================ echo [%DATE% %TIME%] Скрипт завершен успешно. >> "%LOGPATH%" endlocal exit /b 0 |
Размещаем файлы в доступной сетевой папке.
|
1 |
C:\Windows\SYSVOL\sysvol\PC360.local\scripts\wazuh |
На контроллере домена создаем новый объект GPO для OU или всего домена.
Изменяем конфигурацию GPO.

В свойствах указываем путь к скрипту.
Проверяем.
Перезагружаем ПК.
Проверяем службу, директорию с агентом, лог установки.
Проверяем наличие подключенного агента в дашборде.
Агент успешно установился через GPO.
Если установка не срабатывает нужно в первую очередь смотреть лог.
|
1 |
C:\WazuhInstallLogs |

Можно запустить скрипт локально на ПК клиента.
Так же нужно проверить применялась ли GPO (просмотр через cmd).
|
1 |
gpresult /r |

Установка агента вручную.
Установочный MSI-пакет агента Wazuh может быть загружен с официального репозитория Wazuh либо предоставлен через внутренний корпоративный ресурс или каким-то другим способом (от поставщика).
Скачиваем агента для Windows с официального сайта.
Переносим на выбранный компьютер. Запускаем установку.
Принимаем лицензионное соглашение.
Нажимаем Install (все пути и параметры как предлагает программа).
На последнем шаге отмечаем чек-поинт чтоб после завершения установки открылся конфигурационный интерфейс.
Вводим IP-адрес сервера. Сохраняем.
Запускаем службу.
Через пару секунд нажимаем кнопку Refresh, и в поле Authentication key появится ключ.
Если данный клиент уже был подключен к Wazuh, то его надо удалить из сервера. В Wazuh агент привязывается к уникальному ключу регистрации. Если клиент уже был зарегистрирован ранее, при повторной установке возникают конфликты старого и нового ключа.
Результат успешного или неудачного подключения агентов можно отслеживать в логах сервера.

Для удаления агента, его нужно деинсталировать на клиенте и затем удалить из менеджера на сервере.
Дополнение.
В некоторых сетях существует требование, чтоб подключаться к серверу могли только те клиенты, которым известен пароль. Использование пароля при регистрации Wazuh-агентов обеспечивает контроль доверенного подключения конечных устройств к SIEM-платформе. Без парольной аутентификации любой узел, имеющий сетевой доступ к серверу Wazuh, потенциально может зарегистрироваться в системе и начать обмен данными.
Риски при отсутствии парольной защиты:
-подключение неавторизованных устройств;
-регистрация тестовых или чужих ПК;
-засорение SIEM ложными источниками событий;
-попытки скрытия атак через поддельных агентов;
-увеличение поверхности атаки на инфраструктуру мониторинга;
-возможность получения информации о конфигурации SIEM.
Для настройки пароля необходимо изменить конфигурацию на сервере и на клиенте.
Настройка на сервере.
Включаем использование пароля на сервере.

В конфигурации указываем use_password – yes.
Сохраняем и перезапускаем менеджер.
Далее переходим в терминал сервера, чтоб задать сам пароль.
Создаем файл.
|
1 |
nano /var/ossec/etc/authd.pass |
Содержание – только пароль.
Назначаем владельцем пользователя wazuh (чтобы служба могла читать);
|
1 |
chown wazuh:wazuh /var/ossec/etc/authd.pass |
Выставляем безопасные права (чтение – только для wazuh и root).
|
1 |
chmod 640 /var/ossec/etc/authd.pass |
Сохраняем, выходим.
ctrl+x
y
Перезапускаем менеджер.
|
1 |
systemctl restart wazuh-manager |
Можно проверить.
|
1 |
cat /var/ossec/etc/authd.pass |
(вывод – установленный пароль)
Настройка на клиенте.
В папке расположения агента создаем файл с паролем.
Перезапускаем службу wazuh-agent.
Через PowerShell (с правами админа).
|
1 2 |
$PASS = "Pass-135" [System.IO.File]::WriteAllText("C:\Program Files (x86)\ossec-agent\authd.pass", $PASS, [System.Text.UTF8Encoding]::new($false)) |
Эта команда создаёт (или перезаписывает) файл C:\Program Files (x86)\ossec-agent\authd.pass и записывает в него пароль, который нужен агенту при регистрации на сервере.
Перезапуск агента.
|
1 |
Restart-Service wazuh-agent |
Проверка.
Подключаем нового агента с добавленным в конфиг паролем.
О том, что сервер использует пароль, сообщает эта строка лога.
Далее устанавливаем агента и происходит его успешное подключение.
Пароль начинает использоваться только для новых регистраций. Уже зарегистрированные агенты продолжат подключаться как раньше.
Если пароль добавится на уже существующие агенты это не вызовет повторную регистрацию, смену ключей, удаление агента из сервера или каких-то конфликтов, потому что существующий агент уже записан в client.keys (ему присвоен client.key), а authd.pass используется только при новой регистрации. Сервер вообще не реагирует на появление authd.pass у старых клиентов.
client.keys – файл Wazuh Manager, содержащий уникальные ключи аутентификации всех зарегистрированных агентов и обеспечивающий доверенное взаимодействие клиентов с сервером.
authd.pass – пароль, используемый только для первичной регистрации новых агентов через сервис wazuh-authd.
Тоесть authd.pass это пароль, который позволяет получить агенту уникальный client.key и записать его в файл client.keys.
Если пароль одинаковый на всех ПК, любой пользователь с admin-доступом на одной машине сможет узнать пароль и зарегистрировать посторонний агент. Чтоб это предотвратить используют временные регистрационные пароли, регистрацию через API, регистрацию на основе сертификатов и другие подобные способы.
Для развертывания пароля можно создать отдельную политику GPO или добавить к существующей в скрипт.



