2020-04-04 00:38:17 +00:00
# Fail2Ban filter for the Proftpd FTP daemon
2006-10-02 13:42:36 +00:00
#
2013-12-09 03:46:01 +00:00
# Set "UseReverseDNS off" in proftpd.conf to avoid the need for DNS.
2013-12-09 03:45:09 +00:00
# See: http://www.proftpd.org/docs/howto/DNS.html
2015-04-06 15:04:41 +00:00
# When the default locale for your system is not en_US.UTF-8
2015-04-08 13:57:39 +00:00
# on Debian-based systems be sure to add this to /etc/default/proftpd
2015-04-06 15:04:41 +00:00
# export LC_TIME="en_US.UTF-8"
2013-06-13 12:11:05 +00:00
[INCLUDES]
before = common.conf
2006-10-02 13:42:36 +00:00
[Definition]
2013-09-17 21:32:26 +00:00
_daemon = proftpd
2013-08-09 17:54:08 +00:00
2020-03-18 15:11:53 +00:00
__suffix_failed_login = ([uU]ser not authorized for login|[nN]o such user found|[iI]ncorrect password|[pP]assword expired|[aA]ccount disabled|[iI]nvalid shell: '\S+'|[uU]ser in \S+|[lL]imit (access|configuration) denies login|[nN]ot a UserAlias|[mM]aximum login length exceeded)
2013-09-17 21:32:26 +00:00
2017-02-21 14:54:59 +00:00
2020-03-18 15:11:53 +00:00
prefregex = ^%(__prefix_line)s%(__hostname)s \(\S+\[<HOST>\]\)[: -]+ <F-CONTENT>(?:USER|SECURITY|Maximum) .+</F-CONTENT>$
2017-02-21 14:54:59 +00:00
2020-03-18 15:11:53 +00:00
failregex = ^USER <F-USER>\S+|.*?</F-USER>(?: \(Login failed\))?: %(__suffix_failed_login)s
^SECURITY VIOLATION: <F-USER>\S+|.*?</F-USER> login attempted
^Maximum login attempts \(\d+\) exceeded
2006-11-12 14:52:36 +00:00
2006-11-15 18:44:28 +00:00
ignoreregex =
2013-10-30 13:02:59 +00:00
2017-06-30 16:00:01 +00:00
[Init]
journalmatch = _SYSTEMD_UNIT=proftpd.service
2013-10-30 13:02:59 +00:00
# Author: Yaroslav Halchenko
# Daniel Black - hardening of regex