Integration Architecture
All integrations are designed to be loosely coupled and protocol-based to ensure scalability and maintainability.
Core Integration Points
Snort/Suricata → Logstash Integration
Snort/Suricata → Logstash Integration
IDS to Log Pipeline
Purpose: Stream IDS alerts and network events to the central log processing pipelineProtocol: Syslog, File-based, EVE JSONData Format:- Suricata: EVE JSON (Extensible Event Format)
- Snort: Unified2 binary format or syslog
Logstash/Fluentd → Elasticsearch Integration
Logstash/Fluentd → Elasticsearch Integration
Log Pipeline to Storage
Purpose: Store processed and normalized events in searchable indexProtocol: HTTP/HTTPS (Elasticsearch REST API)API Endpoint:POST /_bulk (bulk indexing)Data Format: JSON documents with normalized schemaIndex Strategy:- Time-based indices:
soc-events-YYYY.MM.DD - Index templates for consistent field mapping
- Lifecycle policies for data retention
Elasticsearch → Wazuh Integration
Elasticsearch → Wazuh Integration
Storage to SIEM Platform
Purpose: Query and analyze stored security eventsProtocol: Elasticsearch Query DSL (REST API)Integration Method:- Wazuh indexer (Elasticsearch fork) or
- Direct Elasticsearch backend
- Real-time event streaming
- Historical event search
- Aggregation and statistics
- Correlation queries
Prometheus → Wazuh Integration
Prometheus → Wazuh Integration
Metrics to Security Platform
Purpose: Correlate infrastructure metrics with security eventsProtocol: Prometheus Remote Read API or WebhookIntegration Approach:- Prometheus Alertmanager webhooks to Wazuh
- Custom exporters for Wazuh metrics
- Grafana as unified visualization layer
Zabbix → Prometheus Integration
Zabbix → Prometheus Integration
Infrastructure Monitoring to Metrics Platform
Purpose: Export Zabbix metrics to Prometheus for unified monitoringProtocol: Prometheus exporter (pull-based)Integration: Zabbix Prometheus ExporterExported Metrics:- Host availability
- Item values
- Trigger states
- Problem counts
Wazuh → TheHive Integration
Wazuh → TheHive Integration
SIEM to Incident Management
Purpose: Automatically create incident cases from security alertsProtocol: TheHive REST API (HTTP/HTTPS)API Endpoint:POST /api/alert or POST /api/caseTrigger: Wazuh integration module or custom webhookWazuh Integration Config:TheHive → Cortex Integration
TheHive → Cortex Integration
Incident Management to SOAR
Purpose: Automate incident analysis and response actionsProtocol: Cortex REST APIAPI Endpoints:POST /api/analyzer/{analyzerId}/run- Run analysisPOST /api/responder/{responderId}/run- Execute response
- VirusTotal lookup
- MaxMind GeoIP
- MISP threat intelligence
- Custom analyzers
- Block IP at firewall
- Isolate endpoint
- Send notifications
- Update threat feeds
Wazuh Agents → Wazuh Manager Integration
Wazuh Agents → Wazuh Manager Integration
Endpoint to Central Manager
Purpose: Collect endpoint security events and system logsProtocol: Wazuh Agent Protocol (TCP/UDP port 1514, 1515)Communication:- Agent registration and authentication
- Real-time event forwarding
- Command execution (for active response)
- File integrity monitoring
- System logs
- Security events
- File integrity changes
- Process information
- Network connections
Future Integration Points
The following integrations are planned for long-term implementation.
Honeypots → Wazuh Integration (Long-term)
Honeypots → Wazuh Integration (Long-term)
Deception Technology to SIEM
Purpose: Feed honeypot interaction data into security analysisProtocol: Syslog, JSON over HTTPData Types:- SSH login attempts
- HTTP request logs
- Malware samples
- Attack signatures
- Honeypot logs → Logstash → Elasticsearch → Wazuh
- Direct Wazuh agent on honeypot VM
OPNsense → SIEM Integration (Long-term)
OPNsense → SIEM Integration (Long-term)
Firewall to Security Platform
Purpose: Centralize firewall logs and alertsProtocol: Syslog, NetflowLog Types:- Connection logs
- Blocked traffic
- IPS alerts (Suricata on OPNsense)
- VPN connections
Tailscale → Logging Integration (Long-term)
Tailscale → Logging Integration (Long-term)
VPN Access to Security Monitoring
Purpose: Monitor and audit VPN access patternsProtocol: Tailscale API, WebhookLogged Events:- User authentication
- Device connections
- Access policy changes
- Network activity
Data Format Standards
Normalized Event Schema
All events are normalized to a common schema for correlation:Authentication & Security
API Authentication
- API Keys: TheHive, Cortex, Elasticsearch
- Bearer Tokens: Wazuh API
- Client Certificates: Wazuh Agents
- Username/Password: Zabbix, Grafana
Transport Security
- TLS/SSL: All HTTP-based integrations
- Encrypted Channels: Wazuh agent communication
- VPN Tunnels: Inter-site communication
- Network Segmentation: Isolate SOC components
Integration Testing
Recommended Testing Approach:
- Unit test each integration endpoint
- Validate data format transformations
- Test authentication mechanisms
- Verify end-to-end data flow
- Load test with realistic event volumes
Troubleshooting Common Integration Issues
| Issue | Component | Solution |
|---|---|---|
| Events not appearing | Logstash → Elasticsearch | Check index patterns, verify bulk API |
| Alerts not triggering | Wazuh → TheHive | Validate API key, check alert level threshold |
| Missing metrics | Prometheus scrape | Verify network connectivity, check exporter status |
| Agent disconnected | Wazuh Agent → Manager | Check port 1514/1515, verify certificates |
