Releases: navein-kumar/socstackv2
Releases · navein-kumar/socstackv2
SOC Stack v2.0.0
SOC Stack v2.0.0 — Full SOC-in-a-Box with SSO
A production-ready, fully integrated Security Operations Center stack deployed via Docker Compose with centralized Keycloak SSO across all services.
Highlights
- Two deployment modes — choose the one that fits your environment:
domain-ssl/— Domain-based with Let's Encrypt SSL via Nginx Proxy Managerip-ssl/— IP-based with self-signed CA + nginx:alpine (no domain required)
- Single Sign-On everywhere — one Keycloak login for all 6 services
- Automated setup —
pre-deploy.sh+post-deploy.pyhandle certs, realm import, API config, and SSO wiring - Validation scripts —
test-stack.pyandtest-creds.pyverify the entire stack post-deployment
Stack Components
| Component | Version | Role |
|---|---|---|
| Wazuh | 4.14.3 | SIEM — log collection, threat detection, compliance |
| Keycloak | 26.5.3 | Central SSO & identity provider (OIDC/SAML) |
| TheHive | 5.2 | Incident response & case management |
| Cortex | 3.1.8-1 | Observable analysis & enrichment engine |
| MISP | 2.5.32 | Threat intelligence sharing platform |
| n8n | 2.7.5 | Workflow automation & alert orchestration |
Features
SSO Integration
- Keycloak OIDC for Wazuh Dashboard (OpenSearch Security + Wazuh API RBAC)
- Keycloak OIDC for MISP via built-in OIDC plugin
- OAuth2-Proxy for TheHive and n8n with custom SSO bridge
- Cortex SSO via application.conf OIDC config
- Role-based access:
soc-admin,soc-analyst,soc-readonlygroups
Wazuh Two-Layer SSO
- OpenSearch Security layer:
roles_mapping.yml+securityadmin.sh - Wazuh API RBAC layer: role-to-policy mappings via port 55000
- Admin roles (1,3,5,7) and Readonly roles (2,4,6) auto-mapped from Keycloak groups
Alerting & Automation
- Wazuh → n8n webhook integration for real-time alert forwarding
- Pre-built n8n workflow template for Wazuh email alerts
- Custom n8n SSO hook (
hooks.js) for automatic user provisioning
Deployment Automation
pre-deploy.sh— generates SSL certs (self-signed CA or Let's Encrypt prep), Wazuh certs, config filespost-deploy.py— 8-step automated setup: Keycloak realm, Wazuh security, TheHive org, Cortex config, MISP SSO, n8n API keys- All Docker images pinned to tested versions (see
IMAGE-VERSIONS.md)
ip-ssl Mode Specifics
- nginx:alpine reverse proxy on ports 8443–8448
- Self-signed CA with IP SAN for environments without a domain
NODE_EXTRA_CA_CERTSfor n8n trust chain- CA import instructions for browser trust
Validation & Testing
test-stack.py— health checks for all services, SSL verification, port connectivitytest-creds.py— credential validation, SSO redirect verification, API authentication testsPOST-DEPLOY-UI-GUIDE.md— step-by-step UI configuration guide
Supported Infrastructure
- OS: Ubuntu 20.04+ / Debian 11+ (tested), any Docker-capable Linux
- Docker: Docker Engine 24+ with Compose v2
- Resources: 16 GB RAM minimum recommended
- Network: Ports 8443–8448 (ip-ssl) or 80/443 (domain-ssl)
Quick Start
# Clone
git clone https://github.com/navein-kumar/socstackv2.git
cd socstackv2/ip-ssl # or domain-ssl
# Configure
cp .env.example .env
# Edit .env with your SERVER_IP and passwords
# Deploy
chmod +x pre-deploy.sh && ./pre-deploy.sh
docker compose up -d
python3 post-deploy.py
# Validate
python3 test-stack.py
python3 test-creds.py