GNU/Linux >> Tutoriels Linux >  >> Linux

Comment installer Fail2ban avec Firewalld sur Rocky Linux 8

Fail2ban est une solution logicielle gratuite et open source de prévention des intrusions qui protège les serveurs contre les attaques de connexion par force brute. Il surveille divers fichiers journaux de SSH et d'autres applications Web, et chaque fois qu'une authentification échouée est détectée et atteint le nombre maximum, Fail2Ban bloquera automatiquement l'adresse IP à l'aide des iptables de Firewalld. Fail2Ban est simple, pratique, facile à configurer et flexible.

Dans ce guide, nous allons vous montrer comment installer Fail2Ban avec firewalld sur Rocky Linux 8.

Prérequis

  • Un serveur exécutant Rocky Linux 8 sur la plate-forme cloud Atlantic.Net
  • Un mot de passe root configuré sur votre serveur

Étape 1 - Créer un serveur cloud Atlantic.Net

Tout d'abord, connectez-vous à votre serveur Atlantic.Net Cloud. Créez un nouveau serveur en choisissant Rocky Linux 8 comme système d'exploitation avec au moins 2 Go de RAM. Connectez-vous à votre serveur cloud via SSH et connectez-vous à l'aide des informations d'identification mises en évidence en haut de la page.

Une fois connecté à votre serveur, exécutez la commande suivante pour mettre à jour votre système de base avec les derniers packages disponibles.

dnf mise à jour -y

Étape 2 - Configurer le pare-feu

dnf info firewalld

Si le est installé, vous obtiendrez le résultat suivant :

Dernière vérification de l'expiration des métadonnées :il y a 0:34:46 le mercredi 17 novembre 2021 à 09:52:51 UTC.Installed PackagesName :firewalldVersion :0.8.2Release :7.el8_4Architecture :noarchSize :1.9 MSource :firewalld-0.8.2 -7.el8_4.src.rpmRepository :@SystemFrom repo :baseosSummary :Un démon de pare-feu avec une interface D-Bus fournissant un pare-feu dynamiqueURL :http://www.firewalld.orgLicence :GPLv2+Description :firewalld est un démon de service de pare-feu qui fournit un pare-feu dynamique personnalisable avec une interface D-Bus. Interface D-Bus fournissant un pare-feu dynamiqueURL :http://www.firewalld.orgLicence :GPLv2+Description :firewalld est un démon de service de pare-feu qui fournit un client dynamique omisable :pare-feu avec une interface D-Bus.

Ensuite, vérifiez si le pare-feu est en cours d'exécution ou non.

statut systemctl pare-feu

Vous devriez voir que le service Firewalld est masqué :

● firewalld.service Chargé :masqué (Raison :l'unité firewalld.service est masquée.) Actif :inactif (mort)

Vous devrez donc démasquer le service Firewalld. Vous pouvez le démasquer à l'aide de la commande suivante :

systemctl démasque le pare-feu

Ensuite, démarrez le service Firewalld et activez-le au redémarrage du système :

systemctl démarrer le pare-feudsystemctl activer le pare-feud

À ce stade, Firewalld est installé et fonctionne sur votre système. Vous pouvez maintenant passer à l'étape suivante.

Étape 3 - Installer Fail2Ban

dnf install epel-release -y

Ensuite, installez le package Fail2Ban avec la commande suivante :

installation dnf fail2ban fail2ban-firewalld -y

Une fois Fail2Ban installé, démarrez et activez le service Fail2Ban à l'aide de la commande suivante :

systemctl start fail2bansystemctl enable fail2ban

Vous pouvez vérifier la version de Fail2Ban à l'aide de la commande suivante :

fail2ban-client --version

Exemple de sortie :

Fail2Ban v0.11.2

Étape 4 - Configurer Fail2Ban

Tout d'abord, renommez le fichier de configuration Firewalld pour Fail2Ban à l'aide de la commande suivante :

mv /etc/fail2ban/jail.d/00-firewalld.conf /etc/fail2ban/jail.d/00-firewalld.local

Copiez ensuite le fichier de configuration par défaut de Fail2Ban :

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

Ensuite, modifiez le fichier jail.local :

nano /etc/fail2ban/jail.local

Recherchez les lignes suivantes :

banaction =iptables-multiportbanaction_allports =iptables-allports

Et remplacez-les par les lignes suivantes :

banaction =firewallcmd-rich-rules[actiontype=]banaction_allports =firewallcmd-rich-rules[actiontype=]

Enregistrez et fermez le fichier, puis redémarrez le Fail2Ban pour appliquer les modifications :

systemctl redémarre fail2ban

À ce stade, Fail2Ban est configuré pour fonctionner avec Firewalld.

Étape 5 :Sécurisez le service SSH avec Fail2Ban

Pour protéger le service SSHD, modifiez le fichier jail.local :

nano /etc/fail2ban/jail.local

Recherchez la section [sshd] et activez-la en ajoutant les lignes suivantes :

[sshd]enabled =trueport =sshlogpath =%(sshd_log)sbackend =%(sshd_backend)sbantime =10mfindtime =10mmaxretry =5

Enregistrez et fermez le fichier, puis redémarrez Fail2Ban pour appliquer les modifications :

systemctl redémarre fail2ban

Vous pouvez maintenant vérifier le statut de Fail2Ban à l'aide de la commande suivante :

statut systemctl fail2ban

Vous obtiendrez le résultat suivant :

● fail2ban.service - Service Fail2Ban chargé :chargé (/usr/lib/systemd/system/fail2ban.service ; désactivé ; préréglage fournisseur :désactivé) Actif :actif (en cours d'exécution) depuis le mer. 2021-11-17 10:34 :49 UTC ; Il y a 2 s Docs :man:fail2ban(1) Processus :21154 ExecStop=/usr/bin/fail2ban-client stop (code=exited, status=0/SUCCESS) Processus :21185 ExecStartPre=/bin/mkdir -p /run/fail2ban (code=exited, status=0/SUCCESS) PID principal :21186 (fail2ban-server) Tâches :5 (limite :11411) Mémoire :14,6 M CGroup :/system.slice/fail2ban.service └─21186 /usr/bin/ python3.6 -s /usr/bin/fail2ban-server -xf startNov 17 10:34:49 rockylinux systemd[1] :Démarrage du service Fail2Ban... Nov 17 10:34:49 rockylinux systemd[1] :Démarrage du service Fail2Ban .Nov 17 10:34:49 rockylinux fail2ban-server[21186] :Serveur prêt

Étape 6 - Vérifier le pare-feu Fail2Ban

À ce stade, Fail2Ban est configuré pour protéger le service SSH. Il est maintenant temps de vérifier si Fail2Ban fonctionne.

Tout d'abord, vérifiez la configuration de la prison à l'aide de la commande suivante :

statut fail2ban-client

Vous devriez voir le résultat suivant :

Statut|- Nombre de jail :1`- Liste de jail :sshd

Maintenant, allez sur la machine distante et essayez de vous connecter au serveur SSH avec un mot de passe incorrect. Après avoir atteint le nombre maximum de tentatives (5 fois), votre adresse IP sera bloquée par Fail2Ban.

Maintenant, vérifiez l'adresse IP bloquée par Fail2Ban en utilisant la commande suivante :

fail2ban-client status sshd

Vous devriez obtenir le résultat suivant :

Statut de la prison :sshd|- Filtre| |- Échec actuel :1| |- Échec total :6| `- Correspondances du journal :_SYSTEMD_UNIT=sshd.service + _COMM=sshd`- Actions |- Actuellement interdites :1 |- Total des interdictions :1 `- Liste d'adresses IP interdites :27.61.171.115

Vous pouvez vérifier les règles ajoutées par Firewalld avec la commande suivante :

firewall-cmd --list-rich-rules

Vous obtiendrez le résultat suivant :

rule family="ipv4" source address="27.61.171.115" port port="ssh" protocol="tcp" rejet type="icmp-port-unreachable"

Vous pouvez également consulter les journaux Fail2Ban pour plus d'informations :

tail -f /var/log/fail2ban.log

Exemple de sortie :

2021-11-17 10:37:21,837 fail2ban.filter [21186] :INFO [sshd] Trouvé 27.61.171.115 - 2021-11-17 10:37:212021-11-17 10:37:21,859 fail2ban. actions [21186] :AVIS [sshd] Ban 27.61.171.1152021-11-17 10:37:27,220 fail2ban.filter [21186] :INFO [sshd] Trouvé 27.61.171.115 - 2021-11-17 10:37:27 

Conclusion

Toutes nos félicitations! Vous avez installé avec succès Fail2Ban avec Firewalld. Vous pouvez maintenant implémenter Fail2Ban sur votre serveur pour le protéger contre les attaques de connexion par force brute. Essayez-le sur votre compte d'hébergement VPS d'Atlantic.Net !


Linux
  1. Comment installer et configurer Fail2ban sur Alma Linux 8

  2. Comment installer ModSecurity avec Nginx sur Rocky Linux 8

  3. Comment installer Gulp.js sur Rocky Linux 8

  4. Comment installer Apache Kafka sur Rocky Linux 8

  5. Comment installer Python 3.10 sur Rocky Linux 8

Comment installer le framework Sails.js avec Nginx sur Rocky Linux 8

Comment installer Memcached sur Rocky Linux 8

Comment installer phpBB avec LEMP sur Rocky Linux 8

Comment installer Anaconda Python sur Rocky Linux 8

Comment installer Jenkins sur Rocky Linux 8

Comment installer Fail2ban sur Rocky Linux 8