是否可以fail2ban
以某种“模拟模式”运行,这样它就不会禁止,而是在某处记录它要禁止的人?
在 Ubuntu 12.04 上运行 fail2ban。
答案1
如果你查看 jail.conf,你会看到这样一行:
# Default banning action (e.g. iptables, iptables-new,
# iptables-multiport, shorewall, etc) It is used to define
# action_* variables. Can be overriden globally or per
# section within jail.local file
banaction = iptables-multiport
所有操作都在 /etc/action.d/ 中
您可以制作一个只发送邮件的程序..那里已经有相当多的操作可以执行您想要的操作。
答案2
接受的答案仍然有效,我只想补充一点,在当前的 fail2ban 版本中现在有一个名为“dummy.conf”的操作,无需自己制作。我只需要更改日志文件位置(靠近文件末尾)。默认是登录到/var/run/fail2ban/fail2ban.dummy
,它位于 tmpfs 上。
答案3
讽刺的是,fail2ban
它没有一种方法可以对其中定义的操作进行“试运行”或“无操作”运行。您唯一的选择是临时更改banaction
特定 jail 定义的操作,方法是覆盖给定 jail 中的操作,或者覆盖操作本身。
在较新版本中,您可以通过创建后缀为 而fail2ban
不是 的同名文件来轻松创建覆盖。您还可以访问和子目录,您可以在其中放置特定 jail 的覆盖配置文件,以便您可以重新定义先前设置的变量的值,例如。.local
.conf
actions.d
jail.d
banaction
如果你jail.conf
或jail.local
其中有这个:
[sshd]
port = ssh
logpath = %(sshd_log)s
banaction = iptables-multiport
您可以像这样覆盖这个监狱,通过在下面创建一个新文件,jail.d
其中包含以下内容:
[sshd]
port = ssh
logpath = %(sshd_log)s
banaction = iptables-multiport-debug
然后,您需要在 下创建一个action.d
名为 的相应文件iptables-multiport-debug.conf
。您也可以放弃执行此操作,而只是banaction
在目录中覆盖文件本身action.d
。只需将预先存在的iptables-multipart.conf
文件复制到即可iptables-multipart.local
。
笔记:在执行第二个选项时要小心,因为您将覆盖banaction
任何可能使用它的监狱。