Skip to content

0xCyberLiTech/SOC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



Titre dynamique SOC



Laboratoire numérique pour la cybersécurité, Linux & IT.

Portfolio Profil GitHub Latest Release Changelog Dépôts publics

CyberSec

Cybersécurité Linux Debian Sécurité informatique


SOC — Carte mondiale des attaques

À propos & Objectifs.

Passionné de cybersécurité défensive et d'automatisation système, j'ai construit ce tableau de bord SOC pour surveiller mon infrastructure homelab en conditions réelles — 24/7, en production, depuis plusieurs mois.

Ce n'est pas un projet de démonstration. C'est un SOC opérationnel face à de vraies attaques quotidiennes : scans massifs, tentatives d'intrusion SSH, exploits web automatisés. Chaque tuile, chaque alerte, chaque graphique est le fruit d'itérations successives confrontées à la réalité du terrain.

L'infrastructure repose sur un hyperviseur Proxmox VE hébergeant plusieurs VMs Debian 13 — nginx en reverse proxy, CrowdSec AppSec WAF (~150 vPatch CVE actifs), Suricata IDS (90 000+ signatures), fail2ban sur 4 hôtes, UFW en politique deny-default. Le tout supervisé par un dashboard monolithique HTML/CSS/JS de 27 tuiles, sans aucune dépendance externe.

Ce projet a été conçu et développé en collaboration avec Claude AI (Anthropic) — Claude Code. De l'architecture initiale aux algorithmes de détection de pics réseau, des scripts de déploiement automatisé aux 27 tuiles de surveillance — l'IA a joué le rôle de co-développeur à chaque étape. Cette collaboration homme-IA illustre ce que l'on peut construire seul, rapidement, à un niveau professionnel.

Le contenu est structuré pour répondre aux besoins de :

  • 🛡️ Professionnels IT & Sysadmins — déployer une stack sécurité complète et opérationnelle
  • 🎓 Étudiants en cybersécurité — comprendre la chaîne défensive de bout en bout
  • 🔍 Passionnés de homelab — aller au-delà des tutos, construire du réel
  • 🤖 Explorateurs IA — voir comment Claude AI accélère le développement technique

Sommaire


Vue d'ensemble

SOC Dashboard est un tableau de bord de sécurité complet, opérationnel en production 24/7.

Capacité Détail
Périmètre CrowdSec AppSec WAF (~150 vPatch CVE) + IPS nftables
IDS Suricata — 90 000+ signatures, alertes classées par sévérité
Brute Force fail2ban — 4 hôtes (srv-ngix, site-01, site-02, Proxmox)
Firewall UFW — politique deny par défaut, matrice de règles
Kill Chain MITRE ATT&CK — IPs actives par stage d'attaque
Dashboard 27 tuiles — HTML/CSS/JS monolithique — zéro dépendance externe
IA JARVIS intégré — analyse LLM, ban auto, alertes vocales

Architecture

flowchart TD
    A["🖥️ CLIENT — navigateur LAN\nhttp://VOTRE_IP:8080"]

    A -->|LAN| B

    subgraph B["🖥️ Serveur principal — Debian 13"]
        direction TB
        N["nginx — :80 / :443"]
        W["CrowdSec AppSec WAF\n~150 vPatch CVE"]
        I["CrowdSec IPS nftables\nban IPs malveillantes"]
        S["Suricata IDS\n90 000+ signatures réseau"]
        F["fail2ban\nSSH · nginx · CVE jails"]
        U["UFW\npolitique deny par défaut"]
        G["monitoring_gen.py\ncron 5 min → monitoring.json"]
        D["nginx → /var/www/monitoring/\nDashboard HTML"]
        N --> W --> I --> S --> F --> U --> G --> D
    end

    H["Hôtes secondaires\nsite-01 · site-02 · Proxmox VE\nfail2ban remote stats"]
    H -->|SSH paramiko| B
Loading

Screenshots

CrowdSec & Activité 24h

CrowdSec analyse comportementale

Tuile CROWDSEC — 90 décisions actives, Kill Chain scénarios, IPs bannies avec durée

Activité temps réel 24h

Tuile ACTIVITÉ 24H — requêtes légitimes vs blocages CrowdSec, histogramme horaire

Threat Score & Flux live

Niveau de menace global

Tuile THREAT SCORE — score 0-100 sur 14 sources, niveau MOYEN/ÉLEVÉ/CRITIQUE

Flux live fenêtre 5 min

Tuile FLUX LIVE — req/min fenêtre glissante 5 min, HTTP · Scanner · CS Bans

Intégration JARVIS IA

JARVIS IA — Tuile SOC

Tuile JARVIS IA — quick prompts SOC, analyse LLM en temps réel, actions proactives

JARVIS IA — Auto-engine paramètres

Tuile JARVIS SETTINGS — seuils auto-engine, ban auto, restart services, alertes vocales

GPU — Intelligence Artificielle

GPU Intelligence Artificielle RTX 5080
Tuile GPU IA — RTX 5080 · usage CUDA, VRAM, température, sparklines 10 dernières secondes

Guide d'installation — étape par étape

Étape Description Guide
01 Prérequis, OS, SSH, UFW de base → Prérequis
02 nginx, virtual host, déploiement web → nginx & Web
03 CrowdSec IPS + AppSec WAF (~150 vPatch CVE) → CrowdSec
04 Suricata IDS (90K+ signatures, alertes 24h) → Suricata
05 fail2ban multi-hôtes (SSH, nginx, CVE jails) → fail2ban
06 Collecte des données — monitoring_gen.py → Collecte
07 Dashboard HTML + déploiement final → Dashboard

Déploiement rapide

# 1. Cloner
git clone https://github.com/0xCyberLiTech/SOC.git
cd SOC

# 2. Suivre le guide étape par étape
# Commencer par : docs/01-PREREQUIS.md

# 3. Déployer le dashboard
scp -P 2222 dashboard/monitoring-index.html user@VOTRE_IP:/var/www/monitoring/index.html
✔  SOC Dashboard disponible sur  →  http://VOTRE_IP:8080

27 Tuiles de surveillance

Voir toutes les tuiles
# Tuile Données surveillées
01 KILL CHAIN MITRE ATT&CK — IPs actives par stage d'attaque
02 CROWDSEC IPS Décisions nftables, scénarios, bans actifs
03 CROWDSEC AppSec Requêtes bloquées WAF, vPatch CVE actifs
04 SURICATA IDS Alertes sév.1 / sév.2 sur 24h
05 FAIL2BAN 4 hôtes — jails actives, IPs bannies
06 UFW FIREWALL Matrice règles, anomalies détectées
07 HONEYPOT Tentatives sur ports non exposés
08 CVE WATCH Feed CVE récentes (NVD)
09 ROUTEUR WAN tx/rx, conntrack, flux réseau
10 FREEBOX DELTA BOX/WAN/SFP, graphiques, alertes trafic
11 NGINX TRAFIC Requêtes 24h, erreurs, GeoIP
12 PROTOCOLES ACTIFS Répartition protocoles/ports (live donut)
13 CARTE MONDIALE Géolocalisation attaques — arcs animés
14 PROXMOX VE CPU/RAM, VMs, sparklines
15 WINDOWS Disques, GPU, sauvegarde
16 SSH Sessions actives, uptimes
17 SERVICES État services critiques
18 CRONS Tâches planifiées
19 MISES À JOUR Paquets en attente
20 THREAT SCORE Score 0-100 sur 14 sources
21 JARVIS IA Actions proactives, quick prompts, auto-engine
22 ALERTES TRAFIC Pics WAN, historique 24h, détection d'anomalies
23 FLUX LIVE req/min fenêtre glissante 5 min
24 ACTIVITÉ 24H Volume d'attaques par heure, histogramme
25 GPU IA RTX — usage CUDA, VRAM, température
26 GeoIP TOP Top pays attaquants sur 24h
27 HISTORIQUE Graphes CPU/RAM/réseau sur 24h

Stack technique

Couche Technologie Rôle
Sécurité périmètre CrowdSec AppSec + IPS WAF ~150 vPatch CVE + ban IPs nftables
IDS Suricata 90 000+ signatures réseau
Brute Force fail2ban SSH/nginx/CVE — 4 hôtes
Firewall UFW Politique deny par défaut
Reverse proxy nginx TLS, rate limiting, GeoIP
Collecte Python 3.11 — monitoring_gen.py Cron 5 min → monitoring.json
Frontend HTML/CSS/JS monolithique Zéro dépendance externe
Virtualisation Proxmox VE Hyperviseur VMs
IA JARVIS (Ollama local) Analyse LLM, ban auto, alertes vocales

Intégration JARVIS IA

Le dashboard SOC s'intègre avec JARVIS pour :

  • Analyser les logs et alertes via LLM local (Ollama — phi4-reasoning)
  • Bannir automatiquement les IPs si le seuil d'attaque est dépassé (via CrowdSec SSH)
  • Redémarrer les services critiques détectés DOWN
  • Alerter vocalement si le threat score atteint ÉLEVÉ ou CRITIQUE
  • Journaliser chaque action SOC avec horodatage dans l'onglet SOC

Sécurité — ce qui n'est pas dans ce dépôt

✔  Aucune IP réelle — VOTRE_IP dans tous les exemples
✔  Aucun token, clé SSH ou mot de passe
✔  Aucun fichier JSON de monitoring (données live)
✔  Aucune donnée personnelle ou réseau privé
✔  Scripts fournis à titre d'exemple — adapter à votre infrastructure

🖥️ Infrastructure & Sécurité 💻 Développement & Web 🤖 Intelligence Artificielle




Ollama   Anthropic

🔒 Un projet proposé par 0xCyberLiTech • Développé en collaboration avec Claude AI (Anthropic) 🔒

About

Dashboard SOC homelab 24h/7 - CrowdSec WAF, Suricata IDS, fail2ban, nginx, 27 tuiles, JARVIS IA. Developpe avec Claude AI.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages