我有CentOS 7与firewalld。 我安装了fail2ban并使用firewallcmd-new操作。 我看到在fail2ban日志中禁止,并且我想在firewallcmd中检查是否被阻止。 我该怎么做?
首先,我强烈build议你使用banaction = firewallcmd-ipset因为当禁止列表开始变大时,这将提供更好的性能。
现在,使用fail2ban的firewalld动作,它将添加一个直接规则,您可以使用firewall-cmd --direct --get-all-rules来检查:
# firewall-cmd --direct --get-all-rules ipv4 filter INPUT 0 -p tcp -m multiport --dports ssh -m set --match-set fail2ban-sshd src -j REJECT --reject-with icmp-port-unreachable ipv4 filter INPUT 0 -p tcp -m multiport --dports 0:65535 -m set --match-set fail2ban-nginx-http-auth src -j REJECT --reject-with icmp-port-unreachable ipv4 filter INPUT 0 -p tcp -m multiport --dports http,https -m set --match-set fail2ban-nginx-wordpress-login src -j REJECT --reject-with icmp-port-unreachable
正如你所看到的,我正在使用firewallcmd-ipset ,所以实际禁止的IP地址不在这里列出。 相反,我find他们与ipset list :
# ipset list Name: fail2ban-sshd Type: hash:ip Revision: 1 Header: family inet hashsize 1024 maxelem 65536 timeout 600 Size in memory: 16528 References: 1 Members: Name: fail2ban-nginx-http-auth Type: hash:ip Revision: 1 Header: family inet hashsize 1024 maxelem 65536 timeout 600 Size in memory: 16528 References: 1 Members: Name: fail2ban-nginx-wordpress-login Type: hash:ip Revision: 1 Header: family inet hashsize 1024 maxelem 65536 timeout 86400 Size in memory: 40656 References: 1 Members: 108.62.172.244 timeout 70819 108.62.172.121 timeout 82750 212.252.164.233 timeout 69907 108.62.24.87 timeout 58024 23.19.127.20 timeout 84310 ### many more omitted...
详情请见: https : //fedoraproject.org/wiki/FirewallD#Which_zones_are_available.3F
列出具有启用function的所有区域。
firewall-cmd --list-all-zones
打印带有启用function的区域。 如果省略了区域,则将使用默认区域。
firewall-cmd [--zone=<zone>] --list-all
如果上述命令没有显示足够的信息,可以尝试
对于最高级的用法,或者对于iptables专家来说,FirewallD提供了一个直接的接口,允许你将原始的iptables命令传递给它。 除非使用–permanent,否则直接接口规则不是永久的。
要查看所有添加到FirewallD的自定义链或规则:
firewall-cmd --direct --get-all-chains
firewall-cmd --direct --get-all-rules