# 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+\[\]: 554 5\.7\.1 .*$ ^%(__prefix_line)sNOQUEUE: reject: RCPT from \S+\[\]: 554 5\.5\.2 .*$ ^%(__prefix_line)sNOQUEUE: reject: RCPT from \S+\[\]: 450 4\.7\.1 : Helo command rejected: Host not found; from=<> to=<> proto=ESMTP helo= *$ ^%(__prefix_line)s\S+\: reject: RCPT from \S+\[\]: 550 5\.1\.1 <\S*>: Recipient address rejected:.*$ ^%(__prefix_line)sNOQUEUE: reject: RCPT from \S+\[\]: 454 4\.7\.1 <\S*>: Relay access denied;.*$ ^%(__prefix_line)swarning: \S+\[\]: SASL LOGIN authentication failed: Invalid authentication mechanism$ ^%(__prefix_line)swarning: Recipient address rate limit exceeded: \S+\ from unknown\[\] for service smtp$ ignoreregex = [Init] journalmatch = _SYSTEMD_UNIT=postfix@-.service