Sécurité système
Sécurisation SSH Fail2Ban
Protection contre les attaques brute force sur un serveur Linux exposé.
01
Contexte du projet
Le serveur SSH étant accessible depuis l'extérieur, il était nécessaire de limiter les tentatives de connexion malveillantes. Fail2Ban a été déployé pour détecter les échecs d'authentification et bannir automatiquement les adresses IP suspectes.
Cadre : Linux (Debian/Ubuntu/Rocky), OpenSSH, pare-feu système.
Outils et technologies
Livrables
02
Objectifs du projet
Détecter les tentatives de connexion répétées.
Bannir automatiquement les IP malveillantes.
Adapter les délais de bannissement au contexte.
Documenter les règles de sécurité SSH.
03
Architecture et schémas
Fail2Ban analyse les logs SSH (journald ou fichiers) et applique des règles de pare-feu pour bloquer les IP en cas de tentatives répétées. Les actions sont enregistrées pour audit.
Monitoring des logs SSH + bannissement automatique
Règles nftables/iptables dynamiques
Flux Fail2Ban
Règles firewall
04
Étapes d'implémentation
Installation de Fail2Ban et création du fichier jail.local.
Activation du jail SSH avec paramètres bantime/findtime/maxretry.
Configuration du backend systemd ou log file.
Tests avec tentatives de connexion et vérification des bans.
Documentation des exceptions et des IP autorisées.
05
Difficultés rencontrées
Logs SSH non détectés avec journald.
Bans non appliqués sur le pare-feu par défaut.
06
Solutions appliquées
Activation du backend systemd et validation des filtres.
Choix du banaction adapté (nftables/iptables) puis redémarrage du service.
07
Résultats et captures
Exemples de bannissements et d'état du service.
Status Fail2Ban
Liste des IP bannies
Journal SSH
Règles firewall
Paramètres jail
Test brute force