Colonel Serveur

fail2ban est un outil léger de prévention des intrusions qui aide à protéger les serveurs contre les attaques automatisées et les botnets. Il fonctionne en surveillant les fichiers journaux et en bloquant les adresses IP qui présentent un comportement suspect., tels que des tentatives de connexion infructueuses répétées.

Important
Un accès au niveau racine est requis pour installer et configurer fail2ban.

Que fait fail2ban

fail2ban analyse les fichiers journaux générés par des services tels que SSH et les serveurs Web. Lorsqu'un nombre défini de pannes se produit à partir de la même source dans une fenêtre de temps spécifique, fail2ban ajoute automatiquement une règle de pare-feu pour bloquer cette adresse IP pendant une durée configurable.

Cette approche est particulièrement efficace sur les systèmes accessibles au public tels que Hébergement VPS aux Pays-Bas ou autogéré serveurs dédiés, où les services sont directement exposés à Internet.

Installation de fail2ban

Les étapes d'installation dépendent de la distribution Linux exécutée sur votre serveur.

Debian et Ubuntu

Mettez à jour l'index du package et installez fail2ban:

apt-get update
apt-get install fail2ban

[Espace réservé pour la capture d'écran: Sortie d'installation du paquet apt pour fail2ban]

AlmaLinux et Fedora

Installez fail2ban à l'aide du gestionnaire de packages système:

yum install fail2ban

Sur ces distributions, le référentiel EPEL doit être activé avant l'installation.

[Espace réservé pour la capture d'écran: miam, installez la sortie fail2ban avec EPEL activé]

Configuration initiale

fail2ban utilise les fichiers de configuration situés dans /etc/fail2ban. Le fichier de configuration par défaut ne doit pas être modifié directement, car il peut être écrasé lors des mises à jour.

Créez un fichier de configuration local en copiant le modèle par défaut:

cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

[Espace réservé pour la capture d'écran: terminal affichant jail.conf copié dans jail.local]

Ouvrez le jail.local fichier en utilisant votre éditeur de texte préféré.

Configuration des options globales

Dans le jail.local déposer, localiser le [DEFAULT] section. Ces paramètres s'appliquent à toutes les prisons activées, sauf dérogation.

ignorer

Cette option définit les adresses IP qui ne doivent jamais être bannies. Il est couramment utilisé pour mettre sur liste blanche des emplacements de confiance tels que les adresses IP du bureau ou de la maison..

ignoreip = 127.0.0.1/8 203.0.113.10

[Espace réservé pour la capture d'écran: ignorer la configuration IP dans jail.local]

bannir

Définit la durée pendant laquelle une adresse IP est bloquée après avoir dépassé le nombre d'échecs autorisé.

bantime = 600

maxretry et findtime

Ces options fonctionnent ensemble pour définir le seuil de détection:

maxretry = 5
findtime = 600

Si une adresse IP dépasse le nombre de tentatives autorisées dans la fenêtre de temps définie, il est interdit pour la durée précisée par bantime.

[Espace réservé pour la capture d'écran: paramètres de seuil global dans jail.local]

Activation des prisons de service

fail2ban protège les services à l'aide de prisons. Chaque prison cible un service ou un modèle de journal spécifique.

Par défaut, une prison SSH est incluse mais désactivée. Pour l'activer, localisez la section de la prison SSH et définissez:

enabled = true

[Espace réservé pour la capture d'écran: Jail SSH activé dans le fichier de configuration]

Des prisons supplémentaires peuvent être activées de la même manière, en fonction des services exécutés sur votre serveur.

Redémarrage de fail2ban

Après avoir enregistré les modifications de configuration, redémarrez le service pour les appliquer:

service fail2ban restart

[Espace réservé pour la capture d'écran: confirmation du redémarrage du service fail2ban]

Vérification des adresses IP interdites

Pour afficher les règles de pare-feu ajoutées par fail2ban, courir:

iptables -S

Une adresse IP interdite apparaît généralement dans une règle similaire à la suivante:

-A fail2ban-SSH -s 10.0.1.124/32 -j REJECT --reject-with icmp-port-unreachable

[Espace réservé pour la capture d'écran: Sortie iptables montrant les règles fail2ban]

Utilisation de fail2ban dans des environnements plus grands

fail2ban est généralement déployé sur des serveurs autonomes et évolutifs environnements de serveur cloud. Lorsqu'il est utilisé avec des pare-feu et des mises à jour régulières du système, cela réduit considérablement l’efficacité du trafic d’attaque automatisé.

La configuration doit être revue périodiquement pour garantir que les seuils correspondent au trafic actuel.

Cet article a-t-il été utile?