Recherche de site Web

Comment changer le temps de bannissement de Fail2ban, même bannir définitivement si désiré


Dans cet article, vous apprendrez comment modifier le temps de ban dans fail2ban ainsi que comment bannir une adresse IP définitivement si désiré.

Remarque
1. Avant de continuer, assurez-vous que vous disposez des privilèges sudo.

2. La procédure expliquée ici a été testée sur Ubuntu 22.04. Cependant, la même procédure peut également être utilisée sur d'autres distributions Linux.

Comment installer Fail2ban sur Linux

Fail2ban est disponible dans les dépôts de paquets de presque toutes les distributions Linux. Vous pouvez l'installer en utilisant les gestionnaires de paquets de vos distributions Linux.

Sur Ubuntu et Debian

Pour installer fail2ban sur des distributions basées sur Debian telles qu'Ubuntu et Debian, utilisez la commande ci-dessous :

 $ sudo apt install fail2ban

Sur CentOS, Fedora et RHEL

Pour installer fail2ban sur des distributions basées sur RHEL telles que CentOS, Fedora et RHEL, utilisez les commandes ci-dessous :

sudo dnf install epel-release
sudo dnf install fail2ban

Sur Manjaro et Arch

Pour installer fail2ban sur des distributions basées sur Arch telles que Manjaro et Arch, utilisez la commande ci-dessous :

sudo pacman -Sy fail2ban

Une fois installé, vous pouvez démarrer fail2ban en utilisant la commande ci-dessous :

sudo systemctl start fail2ban

Pour activer le service au démarrage, utilisez la commande ci-dessous :

sudo systemctl enable fail2ban

Comment changer le temps de bannissement dans Fail2ban

Comme nous l'avons dit précédemment, le temps par défaut pendant lequel une adresse IP est bannie après un nombre spécifique de tentatives d'authentification échouées est de 10 minutes. Il est recommandé de définir le temps de bannissement suffisamment long pour décourager les tentatives malveillantes. Cependant, il ne doit pas être trop long pour qu'un utilisateur légitime soit banni par erreur à cause de ses tentatives d'authentification échouées. Vous pouvez également débannir manuellement une adresse IP légitime plutôt que d'attendre l'expiration du temps de bannissement.

Le fichier de configuration de Fail2ban jail.conf est situé à /etc/fail2ban. Cependant, ne modifiez pas ce fichier directement. Au lieu de cela, copiez le fichier jail.conf dans le fichier jail.local dans le répertoire /etc/fail2ban et effectuez tous les changements de configuration dans ce nouveau fichier.

Pour créer un fichier jail.local, ouvrez le Terminal et exécutez la commande ci-dessous :

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

Il créera un fichier de configuration jail.local dans le répertoire /etc/fail2ban.

2. Vous pouvez modifier le temps d'interdiction en changeant le paramètre bantime dans le fichier /etc/fail2ban/jail.local. Éditez le fichier /etc/fail2ban/jail.local dans n'importe quel éditeur de texte comme Nano :

sudo nano /etc/fail2ban/jail.local

3. Maintenant, ajustez la valeur du paramètre bantime en fonction de vos besoins. Disons que pour bannir l'adresse IP pendant 20 secondes, réglez la valeur de bantime sur 20. De la même manière, pour bannir l'adresse IP pendant 5 minutes, réglez la valeur de bantime sur 300 secondes.

bantime=20

Une fois terminé, enregistrez et fermez le fichier /etc/fail2ban/jail.local.

4. Après avoir effectué des ajustements au fichier de configuration de fail2ban, assurez-vous de redémarrer le service pour appliquer les modifications :

sudo systemctl restart fail2ban

Maintenant, les adresses IP seront interdites pendant 20 secondes. Vous pouvez aussi consulter les journaux de fail2ban pour vérifier cela :

cat /var/log/fail2ban.log

Les journaux de fail2ban mis en évidence dans la capture d'écran ci-dessus vérifient qu'une adresse IP 192.168.72.186 est bannie à 01:14:14 puis débannie après 20 secondes à 01:14:34.

Bannir de façon permanente une adresse IP dans Fail2ban

Avec fail2ban, vous pouvez également bannir définitivement une adresse IP fautive. Voyons comment y parvenir :

1. Si vous avez déjà créé le fichier jail.local, vous pouvez laisser cette étape.

Créez le fichier jail.local en utilisant cette commande dans le Terminal :

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

Maintenant, le fichier de configuration jail.local a été créé.

2. Maintenant, pour interdire définitivement les adresses IP, modifiez le fichier de configuration /etc/fail2ban/jail.local en utilisant la commande ci-dessous :

sudo nano /etc/fail2ban/jail.local

3. Pour interdire définitivement une adresse IP, définissez la valeur bantime sur -1.

Après cela, enregistrez et quittez le fichier /etc/fail2ban/jail.local.

4. Redémarrez le service fail2ban comme suit :

sudo systemctl restart fail2ban

Après cela, les adresses IP qui effectuent un nombre spécifique de tentatives de connexion échouées seront bannies définitivement.

Maintenant, enregistrez et fermez le fichier.

Cependant, rappelez-vous que les adresses IP définitivement interdites ne persisteront pas après le redémarrage du système ou du service. Pour rendre ces interdictions permanentes, vous devrez effectuer quelques étapes supplémentaires :

1. Modifiez le fichier /etc/fail2ban/jail.local en utilisant la commande ci-dessous :

sudo nano /etc/fail2ban/jail.local

Recherchez l'entrée banaction dans ce fichier. La capture d'écran suivante montre que le banaction est iptables-multiport.

2. Modifiez le fichier banaction iptables-multiport en utilisant la commande ci-dessous :

sudo nano /etc/fail2ban/action.d/iptables-multiport.conf

Sous les entrées par défaut actionstart, ajoutez les lignes suivantes :

Make bans persistent
cat /etc/fail2ban/ip.banned | while read IP; do iptables -I fail2ban-<name> 1 -s $IP -j DROP; done

Et sous les entrées par défaut de actionban, ajoutez les lignes suivantes :

Make bans persistent
echo '<ip>' >> /etc/fail2ban/ip.banned

Vous pouvez également vous référer à la capture d'écran suivante pour plus de clarté.

Ensuite, enregistrez et fermez le fichier et redémarrez le service fail2ban :

sudo systemctl restart fail2ban

Fail2ban ajoutera les IP bannies au fichier /etc/fail2ban/ip.banned. Vous pouvez également ajouter des IP manuellement à ce fichier. Les IP bannies persisteront désormais après le redémarrage du système ou du service.

C'est tout ce qu'il y a à dire ! Dans cet article, nous avons expliqué comment, en utilisant fail2ban, vous pouvez changer le temps de bannissement ou bannir une IP indéfiniment si elle échoue de manière répétée à s'authentifier.