Comment installer Fail2ban sur Ubuntu Server 18.04
Améliorer La sécurité du serveur Ubuntu par l'ajout d'un système de détection d'intrusion. Pour cela, vous voudrez probablement vous tourner vers Fail2ban. Fail2ban surveille des fichiers journaux spécifiques (trouvés dans le /var/log répertoire) pour les tentatives de connexion infructueuses ou les attaques automatisées. Lorsque Fail2ban détecte une tentative de compromission à partir d'une adresse IP, il empêche l'adresse IP (en ajoutant une nouvelle chaîne au système de sécurité iptables) d'accéder au serveur.
Pour installer Fail2ban, vous avez besoin d'un accès shell sur n'importe quelle version prise en charge d'Ubuntu Server, avec un compte disposant des privilèges sudo permettant l'installation de nouveaux packages logiciels.
Comment installer Fail2ban
Installez Fail2ban en utilisant Apt. Il est préférable d'effectuer l'installation sur une plate-forme de serveur fraîchement mise à jour, et si la version du noyau est mise à jour, redémarrez le serveur avant d'installer Fail2ban.
Une fois l'installation terminée, démarrez et activez Fail2ban avec les deux commandes suivantes:
sudo systemctl démarrer fail2ban
sudo systemctl activer fail2ban.
Fail2ban s'exécute maintenant sur le système et est prêt à être configuré.
Configurer Fail2ban
Fail2ban est configuré à l'aide de jails. Une prison définit comment un service surveille et à quelle vitesse prendre des mesures contre les attaques.
Hors de la boîte, le système est déjà sécurisé. Cependant, il est également très flexible. Le fichier de configuration principal est /etc/fail2ban/jail.conf. Ne modifiez pas ce fichier. Au lieu de cela, créez un nouveau fichier avec l'extension de fichier .local. Fail2ban lit toujours les fichiers .conf en premier et les fichiers .local en second. Toute configuration lue dans le fichier .local remplacera les configurations similaires dans le fichier .conf.
Exemple de configuration
Supposons que vous souhaitiez créer une prison personnalisée pour le démon Secure Shell qui:
- Surveillez /var/log/auth.log.
- Utilisez le filtre sshd fail2ban par défaut.
- Réglez le port SSH sur 22.
- Définissez le nombre maximal de tentatives sur 3.
Les personnalisations ssh dans la prison .local remplaceront toute configuration similaire trouvée dans le fichier de configuration principal, jail.conf (par exemple, le nombre maximal de tentatives par défaut dans jail.conf est défini sur 5). Avec cette prison en place, si une personne (ou un bot) échoue à un Connexion SSH tentative trois fois, l'origine adresse IP sera interdit.
Pour configurer cela, exécutez la commande:
sudo nano /etc/fail2ban/jail.local.
Dans ce nouveau fichier, collez le contenu suivant:
[sshd]
activé = vrai
port = 22
filtre = sshd
logpath = /var/log/auth.log
essai max = 3.
Enregistrez et fermez le fichier, puis redémarrez Fail2ban avec la commande:
sudo systemctl redémarrer fail2ban.
Tester Fail2ban
Pour tester Fail2ban, accédez à une autre machine avec une adresse IP différente et lancez une session Secure Shell sur le serveur, en tapant à chaque fois le mot de passe utilisateur de manière incorrecte. Après le troisième échec de connexion, ce compte d'utilisateur est banni.
Même si vous essayez de vous connecter en SSH au serveur à partir de la même adresse IP, l'accès est toujours refusé.
Débloquer une adresse IP
Annulez l'interdiction d'une adresse IP avec la commande fail2ban-client (qui est installée avec fail2ban) comme suit:
sudo fail2ban-client set sshd unbanip 192.168.1.100.