CrowdSec
Rôle
Détection d'intrusion et blocage automatique d'IPs malveillantes, installé sur LXC 101 (NGINX Proxy Manager). Protège l'ensemble des services exposés via le reverse proxy.
Accès
| LXC | 101 — 192.168.1.84 |
| Installation | Native (pas Docker) |
| Version agent | v1.7.8 |
Architecture
Le bouncer bloque les IPs au niveau firewall, avant même que nginx ne reçoive la requête.
Configuration
Sources de logs analysées
| Fichier | Contenu |
|---|---|
/data/logs/proxy-host-*_access.log |
Logs par proxy host |
/data/logs/default-host_access.log |
Log du vhost par défaut |
Scénarios de détection
- 58 scénarios actifs
- Collection
crowdsecurity/nginxincluse (scan de ports, bruteforce, etc.)
Bouncer nftables
| Package | crowdsec-firewall-bouncer-nftables |
| Tables | ip crowdsec (IPv4) · ip6 crowdsec6 (IPv6) |
| Mécanisme | Set nftables avec timeout automatique |
Les IPs bannies sont ajoutées au set nftables et supprimées automatiquement à l'expiration du ban.
Délai de démarrage bouncer
Pour éviter une erreur LAPI au boot (bouncer qui démarre avant que l'agent soit prêt) :
Notifications ntfy
Digest quotidien à 7h00 (LXC 101) — résumé des 24 dernières heures :
| Champ | Contenu |
|---|---|
| Nb de bans | Total d'IPs bannies sur 24h |
| Top scénarios | Scénarios les plus déclenchés |
| Top pays | Pays d'origine des IPs bannies |
| Priorité | high si ≥ 20 bans, sinon normale |
Script : /opt/crowdsec-notify/notify.py sur LXC 101.
Commandes utiles
# État du service
pct exec 101 -- cscli alerts list
# IPs actuellement bannies
pct exec 101 -- cscli decisions list
# Bannir manuellement une IP
pct exec 101 -- cscli decisions add --ip <IP>
# Débannir une IP
pct exec 101 -- cscli decisions delete --ip <IP>
# Métriques du bouncer
pct exec 101 -- cscli metrics
Débogage
# Statut de l'agent
pct exec 101 -- systemctl status crowdsec
# Statut du bouncer
pct exec 101 -- systemctl status crowdsec-firewall-bouncer
# Logs de l'agent
pct exec 101 -- journalctl -u crowdsec -n 50
# Vérifier que nftables contient bien le set crowdsec
pct exec 101 -- nft list ruleset | grep crowdsec