我已经在 Linux Mint 中设置了 ufw 并且运行良好。
在我的 Linux Mint Box 中,我运行 Dovecot 并且看到许多次登录尝试失败。
我这样设置fail2ban:
[dovecot-pop3imap]
enabled = true
filter = dovecot-pop3imap
action = iptables-multiport[name=dovecot-pop3imap, port="pop3,imap", protocol=tcp]
logpath = /var/log/
maxretry = 2
findtime = 1200
bantime = 1200
在 /etc/fail2ban/filter.d/dovecot-pop2imap.conf 中我输入了以下行:
[Definition]
failregex = (?: pop3-login|imap-login): .*(?:Authentication failure|Aborted login \(auth failed|Aborted login \(tried to use disabled|Disconnected \(auth failed|Aborted login \(\d+ authentication attempts).*rip=`<HOST>`
登录失败尝试继续。有什么建议吗?
答案1
该logpath
指令应指向实际的日志文件,而不仅仅是目录。您可以使用包含 * 或 ? 的通配符,但 fail2ban 只会在启动时生成匹配文件的列表。
你似乎还做了比需要的更多的工作。大多数发行版可能都带有默认规则,可以处理更多情况。例如,Debian/etc/fail2ban/filter.d/dovecot.conf
定义了failregex
,而 jail 则定义在 中/etc/fail2ban/jail.conf
:
[dovecot]
port = pop3,pop3s,imap,imaps,submission,465,sieve
logpath = %(dovecot_log)s
backend = %(dovecot_backend)s
dovecot_log
最终指向/var/log/mail.log
(如果不使用 journald)。如果您log_path
在 Dovecot 配置中定义了,则可能需要将其指向该文件。
由于 Mint 基于 Ubuntu,而 Ubuntu 又基于 Debian,因此我期望它具有这些默认配置。您可以通过创建/etc/fail2ban/jail.local
并覆盖必要的参数来启用配置,如下所示:
[dovecot]
enabled = true
maxretry = 2
findtime = 20m
bantime = 20m