Création d'un hub CrowdSec multi-conteneurs sur Proxmox LXC
Une procédure technique complète de migration d'une sécurité autonome vers une architecture centralisée CrowdSec Hub-and-Spoke.
La gestion de la sécurité sur plusieurs conteneurs Proxmox LXC peut rapidement devenir un cauchemar. Au départ, j'installais fail2ban ou des instances CrowdSec autonomes sur chaque conteneur. Cela impliquait de vérifier les journaux sur 15 machines différentes, de dupliquer les listes de blocage et de gaspiller des cycles CPU.
La solution ? Une Architecture CrowdSec Hub-and-Spoke.
The Architecture
Au lieu que chaque conteneur effectue sa propre analyse des menaces, nous désignons un conteneur LXC comme le Serveur LAPI (Le Hub). Tous les autres conteneurs (Nginx Proxy Manager, Nextcloud, Gitea) deviennent des Bouncers (Les Rayons).
- Le Hub : Lit les journaux, communique avec l'API centrale de renseignements sur les menaces CrowdSec et gère la liste de blocage principale.
- Les Rayons : Exécutez uniquement l'agent CrowdSec. Ils transfèrent leurs journaux au Hub et demandent au Hub si une adresse IP doit être bloquée.
Étapes de mise en œuvre
1. Configuration du Hub
Tout d'abord, lancez un conteneur Debian LXC léger. Installez CrowdSec :
curl -s https://install.crowdsec.net | sudo sh
sudo apt-get install crowdsec
Ensuite, configurez le LAPI pour qu'il écoute sur l'adresse IP du réseau local au lieu de localhost en modifiant /etc/crowdsec/config.yaml.
2. Enregistrement des Rayons
Sur le Hub, générez un identifiant de machine pour chaque Rayon :
cscli machines add nginx-proxy-spoke --auto
Cela génère un mot de passe. Sur le Spoke (Nginx Proxy Manager), installez l'agent CrowdSec, mais désactivez le LAPI local. Modifiez la configuration pour pointer vers l'adresse IP du Hub et utiliser les informations d'identification générées.
Les résultats
En centralisant les renseignements sur les menaces, j'ai réduit la surcharge totale du processeur de ma pile de sécurité de 60%. Si un attaquant atteint mon conteneur Nextcloud et est banni, il est instantanément banni sur tous les autres services du réseau.
Besoin d'aide pour concevoir votre infrastructure Proxmox ?
Parlons