Introduction

Fail2Ban est un puissant outil de sécurité conçu pour protéger les serveurs basés sur Linux contre les attaques par force brute. Il surveille les fichiers journaux à la recherche d’activités suspectes et interdit les adresses IP malveillantes à l’aide de règles de pare-feu. Ce guide vous guidera à travers le processus d’installation, de configuration et d’utilisation de Fail2Ban sur un système Ubuntu.

Installation de Fail2Ban

Tout d’abord, mettez à jour votre liste de paquets et installez Fail2Ban à l’aide des commandes suivantes :

sudo apt update
sudo apt install fail2ban -y

Une fois installé, démarrez et activez le service Fail2Ban :

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

Configuration de Fail2Ban

Le fichier de configuration par défaut de Fail2Ban est situé dans /etc/fail2ban/jail.conf. Cependant, il est recommandé de créer un fichier de configuration personnalisé afin d’éviter que les modifications ne soient écrasées lors des mises à jour.

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

Modifiez le fichier de configuration à l’aide d’un éditeur de texte :

sudo nano /etc/fail2ban/jail.local

Configuration des clés

  • bantime: Définit la durée (en secondes) pendant laquelle une adresse IP sera interdite.
  • findtime: Spécifie la fenêtre temporelle pour la détection de plusieurs tentatives infructueuses.
  • maxretry: Nombre de tentatives de connexion échouées avant qu’une adresse IP ne soit bannie.
  • ignoreip: Liste des adresses IP de confiance qui ne doivent pas être interdites.

Exemple de paramètres :

[DEFAULT]
bantime = 600
findtime = 600
maxretry = 5
ignoreip = 127.0.0.1/8

Activation de Fail2Ban pour SSH

Pour activer Fail2Ban pour la protection SSH, assurez-vous que la section suivante est présente dans jail.local:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3

Sauvegardez le fichier et redémarrez Fail2Ban :

sudo systemctl restart fail2ban

Vérification de l’état de Fail2Ban

Pour vérifier que Fail2Ban fonctionne correctement, utilisez la commande suivante :

sudo fail2ban-client status

Pour vérifier l’état d’une prison spécifique (par exemple, SSH) :

sudo fail2ban-client status sshd

Débanalisation d’une adresse IP

Si une adresse IP légitime est bannie, vous pouvez la débanquer en utilisant :

sudo fail2ban-client set sshd unbanip 

Conclusion

Fail2Ban est un outil essentiel pour renforcer la sécurité des serveurs en empêchant les attaques par force brute. En le configurant correctement, vous pouvez réduire de manière significative les tentatives d’accès non autorisés et protéger votre serveur Ubuntu des menaces potentielles.