Comment installer et configurer Fail2ban sur Linux

Installer et configurer Fail2ban dans ubuntu et centOS RHEL Debian

Fail2ban est un outil open-source qui offre un moyen simple de protéger votre serveur contre les attaques par force brute. Pour ce faire, il surveille les fichiers journaux et bannit toutes les adresses IP qui échouent à plusieurs reprises dans les tentatives d’authentification. Cet article vous guidera dans le processus d’installation et de configuration de fail2ban sur un serveur Linux sur les distributions Ubuntu, CentOS, Red Hat, Debian, ….

Étape 1 : Installer Fail2ban

La première étape consiste à installer fail2ban sur votre serveur. Le processus d’installation varie en fonction de votre distribution Linux. Voici les commandes pour quelques distributions populaires :

Debian/Ubuntu:

$ sudo apt-get update
$ sudo apt-get install fail2ban

CentOS/RHEL:

$ sudo yum update
$ sudo yum install epel-release
$ sudo yum install fail2ban

Étape 2 : Configurer Fail2ban

Les fichiers de configuration de fail2ban sont situés dans le répertoire /etc/fail2ban/. Le principal fichier de configuration est jail.conf, qui contient la configuration par défaut pour tous les services que fail2ban peut surveiller. Cependant, vous ne devez pas modifier ce fichier directement. Créez plutôt un nouveau fichier de configuration dans le répertoire /etc/fail2ban/jail.d/ pour remplacer les paramètres par défaut.

Par exemple, disons que vous voulez protéger votre service SSH. Vous pouvez créer un nouveau fichier de configuration appelé sshd.conf dans le répertoire /etc/fail2ban/jail.d/ et ajouter le contenu suivant :

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

Décortiquons la signification de chaque ligne :

  • [sshd]: Le nom de la prison. Il doit correspondre au nom du service que vous voulez protéger.
  • enabled = true: Cela permet d’activer la prison.
  • port = ssh: Le port sur lequel le service est exécuté. Dans ce cas, il s’agit du port SSH.
  • filter = sshd: Le nom du fichier de filtre, qui contient les expressions régulières utilisées pour détecter les tentatives de connexion échouées.
  • logpath = /var/log/auth.log: Le chemin vers le fichier journal du service.
  • maxretry = 5: Le nombre de tentatives de connexion échouées autorisées avant de bannir l’adresse IP.
  • bantime = 86400: La durée (en secondes) pendant laquelle l’adresse IP doit être interdite.

Étape 3 : Tester Fail2ban

Une fois que vous avez créé votre fichier de configuration, vous pouvez tester fail2ban en essayant de vous connecter à votre serveur plusieurs fois avec des informations d’identification erronées. Après le nombre spécifié de tentatives infructueuses, votre adresse IP devrait être bannie pour la durée spécifiée. Vous pouvez le vérifier en exécutant la commande suivante :

$ sudo fail2ban-client status sshd

Cela affichera le statut de la prison sshd, y compris les adresses IP interdites.

Étape 4 : surveiller Fail2ban

Fail2ban s’exécute automatiquement en arrière-plan, en surveillant vos fichiers journaux pour détecter les tentatives d’authentification qui ont échoué. Cependant, il est bon de surveiller fail2ban pour s’assurer qu’il fonctionne correctement. Vous pouvez utiliser les commandes suivantes pour afficher les journaux de fail2ban :

$ sudo journalctl -u fail2ban
$ sudo tail -f /var/log/fail2ban.log

La première commande affichera les journaux de systemd pour fail2ban, tandis que la seconde commande affichera le fichier journal de fail2ban en temps réel.

Conclusion

Fail2ban est un outil puissant qui peut aider à protéger votre serveur contre les attaques par force brute. En suivant les étapes de cet article, vous pouvez installer et configurer fail2ban sur votre serveur Linux. N’oubliez pas de créer un fichier de configuration pour chaque service que vous souhaitez protéger et de surveiller fail2ban pour vous assurer qu’il fonctionne correctement.

Laisser un commentaire