fail2ban et Postfix : Différence entre versions
De Vulgum Techus
(Page créée avec « '''Lien court''' vers cette page : http://vt.cx/f2bPx<br/> '''QR code''' vers cette page : http://vt.cx/f2bPx.qr<br/> <br/> <html> <script type="text/javascript"><... ») |
(→Ajout du jail) |
||
Ligne 41 : | Ligne 41 : | ||
# sendmail[name=Postfix, dest=<email_admin>] | # sendmail[name=Postfix, dest=<email_admin>] | ||
logpath = /var/log/maillog | logpath = /var/log/maillog | ||
− | * Le '''sendmail''' sert à avertir l'admin du blocage d'une '''[[IP]]''' par '''postfix-auth''' -> il est inopérant par défaut du fait du # en début de ligne | + | * Le '''sendmail''' sert à avertir l'admin du blocage d'une '''[[IP]]''' par '''postfix-auth''' -> il est inopérant par défaut du fait du '''#''' (commentaire) en début de ligne |
* Supprimer le '''#''' pour rendre '''sendmail''' opérationnel et indiquer l''''[[email]] de l''''admin''' en lieu et place de '''<[[email]]_admin>''' | * Supprimer le '''#''' pour rendre '''sendmail''' opérationnel et indiquer l''''[[email]] de l''''admin''' en lieu et place de '''<[[email]]_admin>''' | ||
* '''maxretry = 5''' indique le nombre de tentatives avant le bannissement. On peut réduire ou augmenter ce nombre. | * '''maxretry = 5''' indique le nombre de tentatives avant le bannissement. On peut réduire ou augmenter ce nombre. |
Version du 23 mars 2015 à 19:47
Lien court vers cette page : http://vt.cx/f2bPx
QR code vers cette page : http://vt.cx/f2bPx.qr
Sommaire
Présentation
Un rapide coup d'œil au log de Postfix au lien suivant :
/var/log/maillog ou /var/log/mail.log
peut révéler de nombreuses tentatives d'identification SMTP visant à casser le mot de passe dans l'optique de l'utiliser à des fins de spam. Ces tentatives sont identifiées par les messages suivants que l'on trouve en grand nombre :
<date heure host>: lost connection after AUTH from unknown[<IP>] <date heure host>: disconnect from unknown[<IP>]
La procédure permettant d'y mettre fin grâce à fail2ban est ici décrit. Elle permet de tester sur les tentatives d'authentification erronée et de bloquer l'IP dont elles sont originaires.
Procédure
L'opération se passe en 3 temps :
- Ajout du jail postfix-auth dans jail.local
- Création de postfix.auth.conf
- Relance de fail2ban
Ajout du jail
- Se loguer sur le serveur à protéger
- Éditer jail.local en y ajoutant le code suivant :
[postfix-auth] enabled = true filter = postfix.auth maxretry = 5 action = iptables-multiport[name=postfix, port="http,https,smtp,submission,pop3,pop3s,imap,imaps,sieve", protocol=tcp] # sendmail[name=Postfix, dest=<email_admin>] logpath = /var/log/maillog
- Le sendmail sert à avertir l'admin du blocage d'une IP par postfix-auth -> il est inopérant par défaut du fait du # (commentaire) en début de ligne
- Supprimer le # pour rendre sendmail opérationnel et indiquer l'email de l'admin en lieu et place de <email_admin>
- maxretry = 5 indique le nombre de tentatives avant le bannissement. On peut réduire ou augmenter ce nombre.
- Sauvegarder le fichier ainsi modifié
Création de postfix.auth.conf
- Dans /etc/fail2ban/filter.d créer le fichier postfix.auth.conf avec le contenu suivant :
[Definition] failregex = lost connection after AUTH from (.*)\[<HOST>\] ignoreregex =
- Le sauvegarder
Relance de fail2ban
- Cette opération se fait par service fail2ban restart
- D'éventuels messages d'erreurs à ce moment là peuvent indiquer un problème
Désactivation du jail
Il est possible de désactiver le jail à tout moment comme suit :
- Mettre false à la place de true à enabled au niveau de postfix-auth dans jail.local
- Sauvegarder jail.local ainsi modifié
- Relancer fail2ban par service fail2ban restart