Fail2Ban

Flood SMTP AUTH : Comment arrêter le flood des spammeurs

(Last Updated On: 28 janvier 2023)

Après un certain temps, le spammeur a su qu’il ne pouvait pas passer à travers mon filtre anti-spam. Ce mauvais acteur a commencé à inonder mon serveur de messagerie avec des connexions Flood SMTP AUTH. Dans mon /var/log/mail.logfichier, je peux trouver les messages suivants.

14 décembre 09:58:37 e-mail postfix/smtpd[22095] : connexion depuis inconnu[117.86.35.119]
 14 décembre 09:58:37 e-mail postfix/smtpd[22119] : connexion perdue après AUTH d'inconnu[114.232.141.99]
 14 décembre 09:58:37 e-mail postfix/smtpd[22119] : déconnexion de l'inconnu[114.232.141.99] ehlo=1 auth=0/1 commandes=1/2
 14 décembre 09:58:37 e-mail postfix/smtpd[22119] : connexion depuis inconnu[180.120.191.91]
 14 décembre 09:58:38 e-mail postfix/smtpd[22095] : connexion perdue après AUTH d'inconnu[117.86.35.119]
 14 décembre 09:58:38 e-mail postfix/smtpd[22095] : déconnexion de l'inconnu[117.86.35.119] ehlo=1 auth=0/1 commandes=1/2
 14 décembre 09:58:38 e-mail postfix/smtpd[22119] : connexion perdue après AUTH d'inconnu[180.120.191.91]
 14 décembre 09:58:38 e-mail postfix/smtpd[22119] : déconnexion de l'inconnu[180.120.191.91] ehlo=1 auth=0/1 commandes=1/2
 14 décembre 09:58:38 e-mail postfix/smtpd[22095] : connexion depuis inconnu[49.67.68.34]
 14 décembre 09:58:39 e-mail postfix/smtpd[22106] : perte de connexion après AUTH d'inconnu[180.120.192.199]
 14 décembre 09:58:39 e-mail postfix/smtpd[22106] : déconnexion de l'inconnu[180.120.192.199] ehlo=1 auth=0/1 commandes=1/2
 14 décembre 09:58:39 e-mail postfix/smtpd[22095] : perte de connexion après AUTH d'inconnu[49.67.68.34]
 14 décembre 09:58:39 e-mail postfix/smtpd[22095] : déconnexion de l'inconnu[49.67.68.34] ehlo=1 auth=0/1 commandes=1/2
 14 décembre 09:58:39 e-mail postfix/smtpd[22119] : connexion depuis inconnu[121.226.62.16]
 14 décembre 09:58:39 e-mail postfix/smtpd[22119] : connexion perdue après AUTH d'inconnu[121.226.62.16]
 14 décembre 09:58:39 email postfix/smtpd[22119] : déconnectez-vous de l'inconnu[121.226.62.16] ehlo=1 auth=0/1 command=1/2
 14 décembre 09:58:39 email postfix/smtpd[22106] : connexion depuis inconnu[58.221.55.21]
 14 décembre 09:58:40 e-mail postfix/smtpd[22106] : perte de connexion après AUTH d'inconnu[58.221.55.21]
 14 décembre 09:58:40 e-mail postfix/smtpd[22106] : déconnexion de l'inconnu[58.221.55.21] ehlo=1 auth=0/1 commandes=1/2
 14 décembre 09:58:47 e-mail postfix/smtpd[22095] : connexion depuis inconnu[121.232.65.223]
 14 décembre 09:58:47 e-mail postfix/smtpd[22095] : perte de connexion après AUTH d'inconnu[121.232.65.223]
 14 décembre 09:58:47 e-mail postfix/smtpd[22095] : déconnexion de l'inconnu[121.232.65.223] ehlo=1 auth=0/1 commandes=1/2 

Postfix est conçu pour fonctionner même dans des conditions stressantes. Il utilise une quantité limitée de mémoire, de sorte que de telles attaques sont beaucoup moins efficaces. Cependant, je ne veux pas qu’ils apparaissent dans mon journal de messagerie et nous devrions enregistrer smtpdprocessus pour les clients SMTP légitimes, au lieu de perdre du temps à traiter avec des spambots. Pour arrêter ce type d’attaque par inondation, vous pouvez utiliser fail2ban, qui est un ensemble de programmes serveur et client pour limiter les tentatives d’authentification par force brute. Installez fail2ban à partir du référentiel Ubuntu par défaut.

sudo apt installer fail2ban 

Une fois installé, il sera automatiquement démarré, comme on peut le voir avec :

statut sudo systemctl fail2ban 

Les fail2ban-serverLe programme inclus dans fail2ban surveille les fichiers journaux et émet la commande ban/unban. Par défaut, il bannirait l’adresse IP d’un client pendant 10 minutes si le client échouait 5 fois à s’authentifier. L’interdiction se fait en ajoutant des règles de pare-feu iptables. Vous pouvez vérifier les règles iptables en exécutant la commande suivante.

sudo iptables -L 

Pour activer fail2ban sur l’attaque Postifx SMTP AUTH, ajoutez les lignes suivantes dans le fichier  /etc/fail2ban/jail.local. Si le fichier n’existe pas, créez ce fichier.

[postfix-flood-attack]
 activé = vrai
 bantime = 30m
 filter = postfix-flood-attack
 action = iptables-multiport[nom=postfix, port="http,https,smtp,submission,pop3,pop3s,imap,imaps,sieve", protocole=tcp]
 logpath = /var/log/mail.log 

Vous pouvez changer le bantime en quelque chose comme 30mou alors 12hbannir le mauvais acteur plus longtemps. Si vous souhaitez ajouter votre propre adresse IP à la liste blanche, ajoutez la ligne suivante pour indiquer à fail2ban d’ignorer votre adresse IP. Remplacez 12.34.56.78 par votre propre adresse IP. Plusieurs adresses IP sont séparées par des espaces.

ignoreip = 127.0.0.1/8 ::1  12.34.56.78 

Par défaut, le nombre maximal d’échecs autorisé est de 5 fois. Après 5 échecs, le client sera banni. Pour spécifier un nombre personnalisé d’échecs, ajoutez la ligne suivante. Modifiez le numéro à votre convenance.

maxretry = 4 

Enregistrez et fermez le fichier. Créez ensuite le fichier de règles de filtrage.

sudo nano /etc/fail2ban/filter.d/postfix-flood-attack.conf 

Dans ce fichier, nous spécifions que si la “connexion perdue après AUTH de” est trouvée, alors bannir cette adresse IP.

[Definition]
 failregex = connexion perdue après AUTH from (.*)\[<HOST>\]
 ignoreregex = 

Enregistrez et fermez le fichier. Redémarrez fail2ban pour que les modifications prennent effet.

sudo systemctl restart fail2ban 

Dans le fichier journal fail2ban ( /var/log/fail2ban.log), je peux trouver le message comme ci-dessous, qui indique que l’adresse IP 114.223.221.55 a été interdite car elle a échoué 5 fois à l’authentification.

2018-12-14 09:52:15,598 fail2ban.filter [21897] : INFO [postfix-flood-attack] Trouvé 114.223.211.55 - 2018-12-14 09:52:15
 2018-12-14 09:52:16,485 fail2ban.filter [21897] : INFO [postfix-flood-attack] Trouvé 114.223.211.55 - 2018-12-14 09:52:16
 2018-12-14 09:52:20,864 fail2ban.filter [21897] : INFO [postfix-flood-attack] Trouvé 114.223.211.55 - 2018-12-14 09:52:20
 2018-12-14 09:52:21,601 fail2ban.filter [21897] : INFO [postfix-flood-attack] Trouvé 114.223.211.55 - 2018-12-14 09:52:21
 2018-12-14 09:52:22,102 fail2ban.filter [21897] : INFO [postfix-flood-attack] Trouvé 114.223.211.55 - 2018-12-14 09:52:22
 2018-12-14 09:52:22,544 fail2ban.actions [21897] : AVIS [postfix-flood-attack] Ban 114.223.211.55 

Je peux aussi vérifier mon iptables.

sudo iptables -L 

output:

Chain f2b-postfix (1 references)
target     prot opt source               destination         
REJECT     all  --  195.140.231.114.broad.nt.js.dynamic.163data.com.cn  anywhere reject-with icmp-port-unreachable
RETURN     all  --  anywhere anywhere

Cela indique que fail2ban a mis en place une règle iptables qui rejette la connexion de 195.140.231.114.broad.nt.js.dynamic.163data.com.cn, qui est un nom d’hôte utilisé par le spammeur.

Si vous souhaitez bloquer manuellement une adresse IP, exécutez la commande suivante. Remplacez 12.34.56.78 par l’adresse IP que vous souhaitez bloquer.

sudo iptables -I INPUT -s  12.34.56.78  -j DROP 

Si vous utilisez UFW (interface iptables), exécutez

sudo ufw insert 1 deny from  12.34.56.78 to any 

source : linuxbabe


Merci de votez pour cet article :
Votez : Pas malMoyenBienAcès bienExcélent (4 votes, average: 5,00 out of 5)
Loading...

Laisser un commentaire

Translate »