Monitoring Wazuh agentov v Zabbixe cez REST API
- Monitoring , Security
- 24. októbra 2023
Obsah
Wazuh je populárny open-source SIEM/XDR: agenti na serveroch a pracovných staniciach zbierajú logy, udalosti o integrite súborov a údaje o zraniteľnostiach a posielajú ich na Wazuh manager. Funguje to dobre — pokiaľ sú agenti naozaj pripojení.
Háčik je v tom, že keď agent prestane posielať údaje, Wazuh o tom veľmi nekričí. Server jednoducho prestane posielať udalosti a nikto si to nevšimne, kým tie udalosti niekto nepotrebuje. Host, ktorý vo vašom SIEM mlčí, je slepé miesto — a presne také miesta majú útočníci radi.
Väčšina tímov už servery monitoruje Zabbixom. Takže namiesto toho, aby ste sa každé ráno pozerali do Wazuh dashboardu, nechajte Zabbix kontrolovať každého agenta a vyvolať upozornenie ako pri akomkoľvek inom probléme.
Template: custom-zabbix-templates/wazuh-agent — Zabbix 6.4 a novší, bez externých skriptov.
Ako to funguje
Template sa pripája k tomu istému Zabbix hostu ako server, na ktorom beží Wazuh agent. Každých 10 minút Zabbix položka typu Script (JavaScript bežiaci na Zabbix serveri alebo proxy):
- sa autentifikuje voči Wazuh API cez basic auth a získa token;
- pošle požiadavku
GET /agents?name=<názov hosta>— teda na agenta, ktorého meno sa zhoduje s názvom hosta v Zabbixe; - vráti údaje agenta ako JSON.
Dve závislé položky z nich vytiahnu to podstatné:
| Položka | Hodnoty |
|---|---|
| Stav agenta | active, disconnected, pending, never_connected (alebo unavailable, ak sa agent nenájde) |
| Stav konfigurácie skupiny agenta | synced / not synced |
A triggery sa spustia, keď je niečo zle:
| Trigger | Závažnosť |
|---|---|
| Wazuh Agent Disconnected | Average |
| Wazuh Agent Unavailable (agent sa vo Wazuhu nenašiel) | Average |
| Wazuh Agent Pending | Warning |
| Wazuh Agent Never Connected | Warning |
| Wazuh Agent Config Not Synced | Warning |
| Wazuh Agent No Data (samotná kontrola API prestala fungovať) | Warning |
Triggery stavu vyžadujú dve po sebe idúce zlé hodnoty, takže krátky reštart agenta nikoho nezobudí.
Nastavenie
-
Vytvorte vo Wazuhu API používateľa s prístupom k agentom iba na čítanie. Nepoužívajte admin účet — heslo sa ukladá do Zabbix makra.
-
Importujte template v Zabbixe: Data collection → Templates → Import a vyberte
zabbix-wazuh-agent.json. -
Nastavte makrá — ideálne raz na skupine hostov alebo globálne, nie na každom hoste:
Makro Príklad {$WAZUH.API.URL}https://wazuh.example.local:55000{$WAZUH.USER}zabbix-ro{$WAZUH.PASSWORD}(tajné makro) {$WAZUH.HTTP.PROXY}voliteľné, napr. http://proxy:3128{$WAZUH.DATA.TIMEOUT}10(sekúnd)Makro
{$WAZUH.PASSWORD}označte ako secret text, aby sa nezobrazovalo v rozhraní. -
Pripojte template k hostom, na ktorých beží Wazuh agent.
Warning
Agent sa vyhľadáva podľa viditeľného názvu Zabbix hosta. Ak je agent vo Wazuhu zaregistrovaný ako web01, ale Zabbix host sa volá web01.example.local, vyhľadávanie nič nevráti a dostanete „Wazuh Agent Unavailable“. Držte názvy jednotné — alebo upravte viditeľný názov hosta v Zabbixe.
Zabbix server (alebo proxy, ktorá hosta monitoruje) potrebuje sieťový prístup k Wazuh API, predvolene na TCP 55000. Ak sa tam dostane iba cez proxy, nastavte {$WAZUH.HTTP.PROXY}.
Prečo sú „never_connected“ a „pending“ dôležité
- never_connected zvyčajne znamená, že agent bol zaregistrovaný (často automatizovaným nasadením), ale nikdy sa nespustil alebo sa nikdy nespojil s managerom — host, o ktorom si myslíte, že je chránený, no nie je.
- pending znamená, že agent sa zaregistroval, ale handshake sa nedokončil — typicky problém s firewallom alebo certifikátom.
- not synced znamená, že agent nedostal konfiguráciu svojej skupiny, takže môže bežať so zastaranými pravidlami.
Všetky tri sa vo Wazuh rozhraní ľahko prehliadnu a v zozname problémov Zabbixu sú hneď zrejmé.
Zhrnutie
- Jeden template pripojený k hostom, ktoré už monitorujete; žiadne skripty na hostoch.
- Upozornenia, keď sa agent odpojí, nikdy sa nepripojil, zasekol sa v stave pending alebo nie je synchronizovaný.
- Používajte Wazuh API účet iba na čítanie a tajné makro pre jeho heslo.
- Držte názvy hostov v Zabbixe a mená agentov vo Wazuhu zosúladené.
Budujete alebo ladíte bezpečnostný monitoring s Wazuhom a Zabbixom? Ozvite sa nám.