Wazuh Components - Agent, Server, Indexer, Dashboard

The Wazuh platform consists of four primary components: the agent, the server (manager), the indexer, and the dashboard. Each component is designed to fulfill a specific function in the security data processing pipeline. This page provides a detailed description of every component, its modules, supported platforms, and network requirements.

Wazuh Agent

The Wazuh Agent is a lightweight application installed on monitored endpoints: servers, workstations, virtual machines, and cloud instances. It collects security data and forwards it to the Wazuh server for analysis.

Agent Modules

The agent includes a set of specialized modules, each responsible for a specific aspect of security monitoring.

ModuleFunctionDescription
Log CollectorLog collectionReads system and application logs (syslog, Windows Event Log, macOS ULS, JSON, multiline formats)
File Integrity MonitoringIntegrity monitoringTracks file creation, modification, and deletion. Supports YARA integration for malware detection
SyscollectorInventoryCollects data about the OS, hardware, installed packages, open ports, network interfaces, and running processes
SCAConfiguration assessmentEvaluates system configuration against CIS Benchmark policies and custom rules
Vulnerability DetectorVulnerability detectionMatches installed software against CVE databases (NVD, Red Hat, Canonical, Microsoft)
RootcheckRootkit detectionChecks for rootkits, hidden processes, suspicious files, and kernel anomalies
Command MonitoringCommand monitoringPeriodically executes commands and analyzes their output (e.g., service state checks)
Active ResponseActive responseExecutes actions on the agent as instructed by the server: IP blocking, process termination, file quarantine
Docker ListenerDocker monitoringTracks Docker Engine events: container creation, start, stop, and configuration changes

Server Communication

The agent maintains a persistent connection with the Wazuh server:

  • Event transmission - TCP port 1514, AES-256 encryption
  • Registration - TCP port 1515, TLS authentication
  • Management - centralized configuration through shared configuration
  • Upgrades - remote agent updates via WPK (Wazuh Package)

The agent operates with minimal resource consumption and adjusts scanning intensity based on current system load.

Supported Operating Systems

The Wazuh Agent supports a broad range of operating systems.

OS FamilySupported Versions
LinuxAmazon Linux 1, 2, 2023; CentOS 6, 7, 8; Red Hat Enterprise Linux 6-9; Ubuntu 14.04-24.04; Debian 8-12; SUSE Linux Enterprise 12, 15; Oracle Linux 6-9; Fedora 31+; Arch Linux; Raspberry Pi OS
WindowsWindows 7, 8, 8.1, 10, 11; Windows Server 2008 R2 - 2022
macOSmacOS 10.15 (Catalina) - 14 (Sonoma)
SolarisSolaris 10, 11 (SPARC and x86)
AIXAIX 6.1, 7.1, 7.2, 7.3
HP-UXHP-UX 11.31 (11i v3)

Wazuh Server (Manager)

The Wazuh Server is the central component of the platform, responsible for analyzing security data received from agents. It accepts events, decodes them, matches them against detection rules, and generates alerts.

Analysis Engine

Event processing on the Wazuh server proceeds through several layers.

Decoders extract structured data from raw logs. Wazuh ships with over 4,000 built-in decoders for standard formats (syslog, Apache, Nginx, SSH, Windows Event Log, and others). Administrators can create custom decoders in /var/ossec/etc/decoders/local_decoder.xml.

Detection rules define the conditions for alert generation. Each rule has a unique identifier and a severity level from 0 to 15:

LevelClassificationDescription
0IgnoredRule does not generate an alert (used for filtering)
1-3InformationalNormal system events
4-6LowMinor anomalies
7-9MediumEvents requiring attention
10-11HighPotential attacks, security errors
12-15CriticalConfirmed attacks, serious incidents

The built-in Wazuh ruleset contains over 4,500 rules covering standard detection scenarios. Custom rules are added to /var/ossec/etc/rules/local_rules.xml.

CDB lists (Constant Database) provide fast lookups against reference data: malicious IP lists, file hashes, and indicators of compromise.

Clustering

The Wazuh Server supports clustered configurations for fault tolerance and load distribution:

  • Master node - the primary node holding the authoritative configuration
  • Worker nodes - processing nodes that handle events from agents
  • Synchronization - automatic replication of configuration, rules, and decoders between nodes over port 1516/TCP

Agents are distributed across worker nodes. If a node fails, its agents automatically reconnect to another cluster member.

RESTful API

The Wazuh Server exposes a RESTful API (port 55000/TCP) for programmatic platform management:

  • Agent management (listing, status, configuration, restart)
  • Alert and event queries
  • Rule and decoder management
  • Cluster state monitoring
  • User and role administration

The API uses JWT authentication and supports RBAC (Role-Based Access Control) for access control. For more details, see the Server API section.

Active Response

The Wazuh server can execute automated actions when rules of a specified level are triggered:

  • IP address blocking on the firewall (iptables, Windows Firewall, pf)
  • Process termination
  • Account disabling
  • File quarantine
  • Custom script execution

Actions can be executed on the agent, on the server, or across all agents simultaneously.

Wazuh Indexer

The Wazuh Indexer is the storage and search component, built on OpenSearch (an Elasticsearch fork). It receives alerts and events from the Wazuh server via Filebeat and provides long-term storage, full-text search, and aggregation capabilities.

Core Functions

FunctionDescription
IndexingStructured storage of JSON documents with full-text search
ClusteringHorizontal scaling through shards and replicas
ISM (Index State Management)Automated index lifecycle management (rotation, deletion, archiving)
SecurityTLS encryption, RBAC, access auditing via OpenSearch Security
SnapshotsIndex backup to S3-compatible storage or the local file system

Wazuh Indices

The indexer stores data in the following indices:

  • wazuh-alerts-* - alerts generated by detection rules
  • wazuh-archives-* - all events (including those that did not trigger an alert), when archive mode is enabled
  • wazuh-monitoring-* - agent health monitoring data
  • wazuh-statistics-* - Wazuh server operational statistics

Indexer Clustering

A clustered indexer configuration is recommended for production environments:

  • A minimum of 3 nodes to maintain quorum
  • Primary and replica shards for fault tolerance
  • Dedicated master nodes for cluster stability
  • Ports 9300-9400/TCP for inter-node communication

For more details, see the Indexer Cluster section.

Wazuh Dashboard

The Wazuh Dashboard is the platform’s web interface, built on OpenSearch Dashboards (a Kibana fork). It provides security data visualization, management tools, and reporting capabilities.

Dashboard Modules

ModulePurpose
Security EventsReal-time alert viewing and filtering
Integrity MonitoringFile system change visualization
Vulnerability DetectionDetected vulnerabilities sorted by severity
SCAConfiguration assessment results against CIS standards
MITRE ATT&CKAlert mapping to the MITRE ATT&CK matrix
Regulatory ComplianceDashboards for PCI DSS, GDPR, HIPAA, NIST 800-53
Agent ManagementAgent, group, and configuration management
Dev ToolsConsole for direct indexer queries
ReportingScheduled PDF report generation

Dashboard Network Connections

The dashboard establishes two types of connections:

  • To the indexer (port 9200/TCP) - retrieving data for visualization and search
  • To the Wazuh server (port 55000/TCP) - retrieving configuration, managing agents, viewing cluster status

Users connect to the dashboard over HTTPS (port 443/TCP).

Port and Protocol Summary

ComponentPortProtocolDirectionPurpose
Agent1514/TCPAES-256Agent -> ServerEvent transmission
Agent1515/TCPTLSAgent -> ServerRegistration
Server1516/TCPTLSServer <-> ServerServer cluster
Server55000/TCPHTTPSDashboard -> ServerREST API
Server514/UDP,TCPSyslogExternal -> ServerSyslog (disabled)
Indexer9200/TCPHTTPSServer/Dashboard -> IndexerIndexer API
Indexer9300-9400/TCPTLSIndexer <-> IndexerIndexer cluster
Dashboard443/TCPHTTPSUser -> DashboardWeb interface

Component Interaction

Understanding how the components interact assists with troubleshooting and network security planning:

  1. The agent registers with the server via port 1515 (one-time operation)
  2. The agent transmits events to the server via port 1514 (persistent connection)
  3. The server analyzes events and generates alerts
  4. Filebeat on the server forwards alerts to the indexer via port 9200
  5. The dashboard queries data from the indexer (port 9200) and configuration from the server (port 55000)
  6. The user accesses the dashboard through a browser (port 443)

For information on data flows and deployment models, see the Wazuh Architecture section. Practical application scenarios are described in Use Cases .

Last updated on