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.log
fichier, 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 smtpd
processus 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-server
Le 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 30m
ou alors 12h
bannir 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 :