Building a Production-Grade SOC Home Lab with Wazuh
Tag: SOC Lab ยท Date: July 2026 ยท Read time: 12 min
Theoretical cybersecurity knowledge only translates to real-world capability when tested against genuine enterprise telemetry. This guide outlines how I built a multi-host, virtualized Security Operations Center (SOC) home lab utilizing Wazuh, Elastic Stack, and active endpoint telemetry pipelines.
Lab Architecture
[ Active Directory DC (Windows Server 2022) ]
โ Sysmon + Wazuh Agent (Port 1514)
โผ
[ Corporate Workstation (Windows 11) ]
โ Sysmon + Wazuh Agent (Port 1514)
โผ
[ Linux Gateway / Web Server (Debian 12) ]
โ Auditd + Wazuh Agent (Port 1514)
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Wazuh SOC Central Server โ
โ โ
โ โโโบ Wazuh Manager (Rule evaluation & alerting engine) โ
โ โโโบ Wazuh Indexer (Distributed OpenSearch engine) โ
โ โโโบ Wazuh Dashboard (Analyst visual triage interface) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Infrastructure Setup on Proxmox VE
The lab is hosted on a bare-metal Proxmox VE hypervisor segmented into isolated VLANs:
- VLAN 10 (Management): Wazuh Manager & Dashboard (Static IP: 10.10.10.5)
- VLAN 20 (Internal Domain): Domain Controller, File Server, and Workstations
- VLAN 30 (DMZ): Public-facing honeypots and decoy services
Step 1: Deploying Sysmon with SwiftOnSecurity Configuration
Default Windows Event Logs lack granular process ancestry and network correlation. We deploy Sysmon across all Windows endpoints:
# Download Sysmon and modular configuration
Invoke-WebRequest -Uri "https://live.sysinternals.com/Sysmon64.exe" -OutFile "Sysmon64.exe"
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/SwiftOnSecurity/sysmon-config/master/sysmonconfig-export.xml" -OutFile "sysmonconfig.xml"
# Install Sysmon service
.\Sysmon64.exe -accepteula -i sysmonconfig.xml
Step 2: Configuring Wazuh Agent Log Collectors
Edit ossec.conf on endpoints to forward Sysmon and PowerShell script block logging to the central manager:
<localfile>
<location>Microsoft-Windows-Sysmon/Operational</location>
<log_format>eventchannel</log_format>
</localfile>
<localfile>
<location>Microsoft-Windows-PowerShell/Operational</location>
<log_format>eventchannel</log_format>
</localfile>
Simulating Real Attacks & Evaluating Rules
With telemetry flowing, we execute controlled attack simulations:
- Pass-the-Hash / Mimikatz: Verified that alert rule 100021 fired upon
lsass.exehandle requests. - Persistence via Scheduled Tasks: Validated
schtasks /createdetection with parent process verification. - Decoy Web Scanning: Logged automated Nikto/Nmap probes from the DMZ and tested automated firewall drop actions via Wazuh Active Response.