đŸ›Ąïž SĂ©curiser un serveur Linux avec CrowdSec (installation et configuration)

Introduction

La sĂ©curisation d’un serveur exposĂ© sur Internet est une Ă©tape essentielle en production.

CrowdSec est une solution moderne de sécurité collaborative qui analyse les logs et bloque automatiquement les comportements malveillants.

Contrairement à des outils classiques, CrowdSec repose sur une intelligence collective pour détecter et prévenir les attaques.


Fonctionnement de CrowdSec

CrowdSec repose sur trois composants principaux :

  • Analyse des logs (SSH, Nginx, Apache
)
  • DĂ©tection des comportements suspects
  • RemĂ©diation automatique via firewall

Le systĂšme s’appuie sur une base de donnĂ©es collaborative d’IP malveillantes partagĂ©e entre utilisateurs.


Installation de CrowdSec

Ubuntu / Debian

curl -s https://install.crowdsec.net | sudo bash
sudo apt install crowdsec

Installe CrowdSec et ses dépendances.


RHEL / CentOS / AlmaLinux

dnf install epel-release
curl -s https://install.crowdsec.net | sudo bash
dnf install crowdsec

Démarrer le service

sudo systemctl enable crowdsec
sudo systemctl start crowdsec

Active CrowdSec au démarrage et lance le service.


Vérifier le fonctionnement

sudo cscli metrics

Affiche les statistiques d’analyse et les Ă©vĂ©nements dĂ©tectĂ©s.


Installer un bouncer (blocage des attaques)

CrowdSec détecte les attaques, mais nécessite un bouncer pour bloquer les IP.


Exemple : iptables bouncer

sudo apt install crowdsec-firewall-bouncer-iptables

Le bouncer applique automatiquement les décisions de blocage au firewall.


Activer les collections utiles

Protection SSH

sudo cscli collections install crowdsecurity/ssh

Détecte les attaques brute force sur SSH.


Protection Nginx

sudo cscli collections install crowdsecurity/nginx

Protection Apache

sudo cscli collections install crowdsecurity/apache2

Recharger CrowdSec

sudo systemctl restart crowdsec

Applique les nouvelles rÚgles de détection.


Tester la détection

sudo cscli decisions list

Affiche les IP actuellement bloquées.


Simuler une attaque SSH

ssh fakeuser@localhost

Permet de générer des logs pour tester CrowdSec.


Ajouter la protection collaborative

sudo cscli console enroll

Connecte votre instance Ă  la base collaborative CrowdSec.


Gestion des décisions

Lister les IP bloquées

sudo cscli decisions list

Supprimer un blocage

sudo cscli decisions delete --ip X.X.X.X

Bonnes pratiques

  • Installer uniquement les collections nĂ©cessaires
  • Monitorer rĂ©guliĂšrement les logs
  • Coupler avec un firewall rĂ©seau (cloud provider)
  • Tester les blocages pour Ă©viter les faux positifs
  • Maintenir CrowdSec Ă  jour

Cas d’usage

  • Serveur exposĂ© SSH
  • HĂ©bergement web (WordPress, Nginx, Apache)
  • API publiques
  • Infrastructure cloud

Comparaison rapide avec Fail2Ban

CrowdSec va plus loin que Fail2Ban en utilisant une base collaborative d’attaquants.

  • Fail2Ban → blocage local basĂ© sur logs
  • CrowdSec → dĂ©tection + intelligence collective

Limites

  • NĂ©cessite un minimum de configuration
  • Peut gĂ©nĂ©rer des faux positifs si mal configurĂ©
  • DĂ©pend des logs analysĂ©s

Conclusion

CrowdSec est une solution moderne et efficace pour sécuriser un serveur Linux contre les attaques courantes.

Sa capacité à combiner analyse locale et intelligence collective en fait un outil particuliÚrement adapté aux environnements exposés.