Fedora:fail2ban 不会出现在 iptables -L 中

Fedora:fail2ban 不会出现在 iptables -L 中

我在我们的一台服务器上安装了 Fedora 并安装fail2ban在上面。在 中jail.conf,我添加了以下文本,但iptables -L仍然不会显示fail2ban-ssh。我错过了什么吗?

文本添加到jail.conf

[ssh]

enabled  = true
port     = ssh
filter   = sshd
logpath  = /var/log/auth.log
maxretry = 6

iptables-L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination   

更新

当前文件:

在此输入图像描述

更改为 sshd.conf 会出现以下错误:

2018-02-22 08:45:14,029 fail2ban.actions        [10124]: ERROR   Failed to start jail 'ssh' action 'firewallcmd-ipset': Error starting action

答案1

您的默认禁令配置错误。以下是我尝试修复它的方法:

  1. 编辑/etc/fail2ban/jail.conf文件并更改行

    banaction = firewallcmd-ipset
    

    banaction = iptables-allports
    

    如果你重新加载你的fail2ban-client,它现在应该可以正确启动,但是......

由于我建议根本不要更改默认的 Jail.conf 文件,因此我会创建一个单独的 Jail.local 配置文件并在其中添加自定义选项。

  1. 编辑/etc/fail2ban/jail.conf文件并删除手动添加的 [ssh] 监狱部分。

  2. 创建单独的配置文件/etc/fail2ban/jail.local并在此文件中添加:

    [DEFAULT]
    banaction = iptables-allports
    
    [sshd]
    enabled = true
    

    就是这样。这将设置正确的banaction并激活默认的sshd监狱(如jail.conf中所示)。这个 sshd 监狱将查找过滤器文件,/etc/fail2ban/filter.d/sshd.conf因为我们没有指定任何其他过滤器文件。而且,只要您没有任何特殊配置,默认的 sshd.conf 过滤器文件就应该可以正常工作。

答案2

首先检查您的fail2ban 服务是否正在运行。如果是,请检查filter.d 目录中是否有过滤器ssh.conf。

您可以在fail2ban.conf中激活fail2ban的日志:loglevel = DEBUG logtarget = path_to_log

编辑后重新启动fail2ban。而且总有可饮用性,没有任何东西被禁止,因为没有人尝试以错误的权限访问超过 6 次。

答案3

恢复一个旧线程说我自己也遇到了这个。 Fail2ban 似乎已经切换到即时机制,在 IP 被禁止之前它不会创建链和跳转规则。

手动禁止 IP ( fail2ban-client set recidive banip 1.2.3.4),并且该链以及跳转规则会添加到 iptables 中。

相关内容