Bonjour, j'utilise postfix plus fail2ban sur Centos 6.5, mais je me fais virer (je ne fais pas de relais, mais voilà) et pour une raison quelconque, fail2ban ne parvient pas à couper l'adresse IP et à la bloquer, cela fait 6/7 fois par seconde dans mon /var/log/maillog
Mar 3 13:05:47 postfix/smtpd[27715]: lost connection after UNKNOWN from Unknown[209.15.212.253]
Mar 3 13:05:47 postfix/smtpd[27715]: disconnect from unknown[209.15.212.253]
Mar 3 13:05:47 postfix/smtpd[27715]: warning: valid_hostname: misplaced delimiter: .
Je n'ai pas de problème avec publishing
l'adresse IP de ce bot, car ce n'est clairement un ami pour personne et c'est un moteur de spam conçu à cet effet (le RDNS est un ".", Pour essayer de créer une faille délimitante mal placée)
de toute façon j'ai fail2ban configuré assez juste, il m'envoie un email pour lui dire qu'il est opérationnel sous sasl et postfix
Voici la /etc/fail2ban/jail.local
findtime = 600
bantime = 600
maxretry = 6
[sasl-iptables]
enabled = true
filter = postfix-sasl
backend = polling
action = iptables[name=sasl, port=smtp, protocol=tcp]
sendmail-whois[name=sasl, [email protected]]
logpath = /var/log/maillog
maxretry = 5
bantime = 300
[postfix-tcpwrapper]
enabled = true
filter = postfix
action = hostsdeny[file=/not/a/standard/path/hosts.deny]
sendmail[name=Postfix, [email protected]]
logpath = /var/log/maillog
bantime = 300
maxretry = 6
##the following are done in sheer desperation - no idea if they are needed
[postfix]
enabled = true
port = smtp,ssmtp
filter = postfix
action = hostsdeny
logpath = /var/log/maillog
[perdition]
enabled = true
filter = perdition
action = iptables-multiport[name=perdition,port="110,143,993,995"]
logpath = /var/log/maillog
[dovecot-pop3imap]
enabled = true
port = pop3,pop3s,imap,imaps
filter = dovecot-pop3imap
action = hostsdeny
logpath = /var/log/maillog
Quelqu'un peut-il m'aider à expliquer pourquoi ces règles sont encore en vigueur /var/logs/maillog
, et que personne n'est en train d'être banni?
[/ EDIT] étant un peu un noob chez fail2ban, je ne m'en suis pas rendu compte (en quelque sorte). /etc/fail2ban/filter.d/postfix.conf
# Fail2Ban filter for selected Postfix SMTP rejections
#
#
[INCLUDES]
# Read common prefixes. If any customizations available -- read them from
# common.local
before = common.conf
[Definition]
_daemon = postfix/smtpd
failregex = ^%(__prefix_line)sNOQUEUE: reject: RCPT from \S+\[<HOST>\]: 554 5\.7\.1 .*$
^%(__prefix_line)sNOQUEUE: reject: RCPT from \S+\[<HOST>\]: 450 4\.7\.1 : Helo command rejected: Host not found; from=<> to=<> proto=ESMTP helo= *$
^%(__prefix_line)sNOQUEUE: reject: VRFY from \S+\[<HOST>\]: 550 5\.1\.1 .*$
ignoreregex =
# Author: Cyril Jaquier
Réponses:
Vous ne nous avez pas dit ce qu'il y avait dans votre
postfix
filtre, mais si votre installation ressemble à la mienne, c'est quelque chose commePuisque les lignes de journal que vous nous avez montrées ne ressemblent à rien,
fail2ban
cela ne les déclenchera pas. Vous devrez écrire votre propre filtre, qui correspond à ces lignes, si vous souhaitez qu’ils déclenchent une interdiction.Mais vous constaterez peut-être que, pour bloquer cette adresse IP unique, il est plus efficace de définir une
iptables
règle en vous-même. Quelque chose commeferait probablement l'affaire.
la source
edit
desOP
- pouvez-vous m'aider à écrire un bon match de regex? Je ne veux pas simplement l'iptables
interdire pour l'instant, je préférerais que le bot ait été supprimé automatiquementfail2ban
- c'est un bon test