GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer et configurer Fail2Ban sur Ubuntu 20.04

Avez-vous déjà créé un serveur Web, ouvert le terminal et remarqué le nombre de tentatives de connexion alors que vous étiez hors ligne ? Les attaquants utilisent une méthode appelée « forçage brutal ». Le forçage brutal est une méthode permettant d'accéder à un serveur Web en saisissant des mots de passe aléatoires, à l'aide d'un script, dans l'espoir d'y accéder.

Pour éviter cela, nous utilisons un outil appelé Fail2Ban.

Qu'est-ce que Fail2Ban ?

Fail2Ban est un cadre logiciel de prévention des intrusions qui protège les serveurs informatiques contre les attaques par force brute. Écrit dans le langage de programmation Python, il est capable de fonctionner sur des systèmes POSIX qui ont une interface avec un système de contrôle de paquets ou un pare-feu installé localement, par exemple, iptables ou TCP Wrapper. — Wikipédia

Installer Fail2Ban

Dans ce guide, nous allons couvrir l'installation et la configuration de Fail2Ban sur un serveur Web Ubuntu 20.04.

Étape 1 - Mettre à jour le système et installer Fail2Ban

Exécutons notre commande de mise à jour.

$ sudo apt update && sudo apt upgrade -y

Installons maintenant Fail2Ban.

$ sudo apt install fail2ban

Une fois installé, Fail2Ban devrait démarrer automatiquement. Juste au cas où, vérifions son statut en utilisant la commande ci-dessous pour nous en assurer.

$ sudo systemctl status fail2ban

Notre installation de Fail2Ban est installée et active. :)

Étape 2 - Configurer Fail2Ban

Lors de l'installation de Fail2Ban, le script crée deux fichiers de configuration, /etc/fail2ban/fail.conf et /etc/fail2ban/fail.d/defaults-debian.conf . Toute modification apportée à ces fichiers risque d'être écrasée lors des mises à jour du package.

Fail2ban lit les fichiers de configuration dans cet ordre. Le .local le fichier remplace les paramètres de .cong fichier.

/etc/fail2ban/jail.conf

/etc/fail2ban/jail.d/*.conf

/etc/fail2ban/jail.local

/etc/fail2ban/jail.d/*.local

Le moyen le plus efficace de configurer Fail2Ban sera de copier le contenu de jail.conf vers jail.local puis modifiez le fichier local.

Étape 2.1 – Créer notre fichier local et configurer le serveur

Maintenant, copions notre jail.conf fichier dans notre jail.local fichier.

$ sudo cp /etc/fail2ban/jail.{conf,local}

Après avoir saisi cette commande, le terminal ouvrira immédiatement une nouvelle ligne.*

Configurez le serveur Fail2Ban en ouvrant le jail.local fichier avec nano ou votre éditeur de texte préféré.

$ sudo nano /etc/fail2ban/jail.local

Vous devriez maintenant être dans le jail.local fichier et voir les commentaires décrivant ce que fait chaque configuration.

Étape 2.2 – Liste blanche des adresses IP

Les adresses IP, les plages et les hôtes que vous souhaitez exclure de l'interdiction doivent être ajoutés à ignoreip directives.

Décommentez (supprimez le symbole #) la ligne ignoreip et ajoutez vos adresses IP séparées par un espace.

Étape 2.3 – Paramètres des règles d'interdiction

Quelques lignes sous le commentaire ignoreip, vous trouverez bantimefindtime , et maxretry .

bantime est la durée pendant laquelle l'adresse IP est interdite. La durée d'interdiction par défaut est de 10 minutes. Vous souhaiterez plus que probablement un bantime plus long . Vous pouvez bannir un utilisateur de manière permanente en utilisant un nombre négatif. Si vous n'utilisez pas de suffixe (c'est-à-dire 10 au lieu de 10d), le temps sera en secondes. Vous pouvez définir cette heure pour la durée que vous souhaitez, nous utiliserons 10d.

bantime = 10d

findtime est la durée entre le nombre d'échecs avant que l'IP ne soit bannie. Ceci est différent de maxretry car cela n'interdit pas en fonction du nombre de tentatives de connexion, plutôt que du montant successif.

finetime = 5m

maxretry est le nombre d'échecs de connexion avant que l'IP ne soit bannie. Encore une fois, vous pouvez le configurer à votre guise.

maxretry = 5

Étape 2.4 :Notifications par e-mail

Fail2Ban peut être configuré pour envoyer des alertes par e-mail lorsqu'une adresse IP a été bannie. Vous devez avoir SMTP configuré sur votre serveur Web. La première étape consiste à modifier le commentaire d'action.

action = %(action_MW)s

Cela interdit l'adresse IP et envoie une alerte par e-mail avec un rapport whois. Si vous souhaitez inclure des journaux dans l'e-mail, utilisez %(action_MWl)s à la place.

Vous devrez également ajuster les adresses e-mail d'envoi et de réception afin que le système corrige l'alerte.

destemail = [email protected]
sender = [email protected]

Étape 2.5 :Prisons

Une prison dans Fail2Ban est une combinaison d'un filtre et d'une ou plusieurs actions. Un filtre définit une expression régulière qui correspond à un modèle correspondant à une tentative de connexion échouée ou à une autre activité suspecte. Les actions définissent les commandes qui sont exécutées lorsque le filtre détecte une adresse IP abusive. — Plesk

Fail2Ban est livré avec une variété de prisons pour différents services. Y compris la possibilité de créer vos propres créations personnalisées.

Une installation par défaut de Fail2Ban a une prison ssh activée. Pour activer une prison, vous devrez ajouter enabled = true après le titre de prison. En utilisant OpenWebMail comme exemple :

[openwebmail]
enabled = true
port = http,https
logpath = /var/log/openwemail.log

Si vous souhaitez définir des règles d'interdiction pour un service, vous pouvez le faire sous le service.

[sshd]
enabled = true
maxretry = 5
findtime = 5m
bantime = 10d
ignoreip = 192.169.0.1/8 12.34.56.78

Vous pouvez modifier les filtres dans /etc/fail2ban/filter.d répertoire.

Étape 3 - Redémarrez Fail2Ban

Après chaque installation et configuration terminées, il est préférable de redémarrer le service pour que les modifications prennent effet.

$ sudo systemctl restart fail2ban

Étape 4 - Ligne de commande Fail2ban

Utilisation de l'outil fail2ban-client vous pouvez apporter des modifications avec le script Fail2Ban. Pour utiliser la ligne de commande, utilisez :

$ sudo fail2ban-client [suivi de votre commande]

Pour afficher les options disponibles, utilisez :

$ sudo fail2ban-client -h

Voici quelques commandes pratiques :

Débloquer l'adresse IP :

$ sudo fail2ban-client set sshd unbanip 12.34.56.789

Bannir une adresse IP :

$ sudo fail2ban-client set sddh banip 12.34.56.789


Ubuntu
  1. Comment installer et configurer Redis sur Ubuntu 18.04

  2. Comment installer et configurer Redmine sur Ubuntu 18.04

  3. Comment installer et configurer Fail2ban sur Ubuntu 20.04

  4. Comment installer et configurer Fail2ban sur Ubuntu ?

  5. Comment installer et configurer Fail2ban sur Ubuntu 20.04 LTS

Comment installer et configurer Cacti sur Ubuntu 20.04

Comment installer et configurer Git sur Ubuntu 20.04

Installer et configurer Fail2ban sur Ubuntu 20.04

Comment installer et configurer OpenVAS 9 sur Ubuntu

Comment installer et configurer Redis dans Ubuntu 20.04

Comment installer et configurer Neo4j sur Ubuntu 20.04