fail2ban / iptables有一个很奇怪的问题。 有些事情是不正确的,但我不能想象出什么。
我已经添加了这个conf&和过滤fail2ban:
[wordpress-register] enabled = true port = http,https filter = wordpress-register logpath = /var/log/nginx/access.log [Definition] failregex = ^<HOST> .* "GET /wp-login.php\?action=register HTTP/.*" .*$
Fail2ban启动,但在错误日志中有这个:
2014-09-22 15:14:35,794 fail2ban.server.action [5275]:错误ipset create fail2ban-wordpress-register hash:ip timeout 600
firewall-cmd –direct –add-rule ipv4 filter INPUT 0 -p tcp -m multiport –dport http,https -m set –match-set fail2ban-wordpress-register src -j REJECT –reject-with icmp -port-unreachable – stderr:'ipset v6.19:收到内核错误:set type not supported \ n'
2014-09-21 02:57:43,860 fail2ban.server.action [1191]:ERROR ipset create fail2ban-wordpress-register hash:ip timeout 600 firewall-cmd –direct –add-rule ipv4 filter INPUT 0 -p tcp -m multiport –dport http,https -m set –match-set fail2ban-wordpress-register src -j REJECT –reject-with icmp-port-unreachable – stdout:“\ x1b [91mError:COMMAND_FAILED:'/ sbin / iptables -t filter -I INPUT_direct 1 -p tcp -m multiport –dport http,https -m set –match -set fail2ban-wordpress-register src -j REJECT –reject-with icmp-port-unreachable'失败:iptables v1.4.21:设置fail2ban-wordpress-register不存在。\ n \ n尝试`iptables -h'或'iptables –help'以获取更多信息。\ x1b [00m \ n“
任何想法可能是什么问题? 我想主要的是这样的:
ipset v6.19:收到内核错误:不支持设置types
但是,这是什么意思?
ipset命令需要在内核中支持IP SET。 具体来说,您将会查找以下设置:
CONFIG_IP_SET=m CONFIG_IP_SET_HASH_IP=m
而且看起来你的内核是没有ipset支持的,或者至less它不能find这些模块。 解决这个问题,你的错误应该消失。
尝试运行find /lib/modules/$(uname -r) -name ip_set.ko来查看你当前的内核是否支持它们,并且find /lib/modules -name ip_set.ko来查看是否有安装的内核支持它们。
如果你需要更多的帮助,你必须告诉我们:
我还应该注意到,在你的问题(6.19)中报告的ipset版本是CentOS 7自带的,所以如果你使用的是EPEL原始版本的内核和fail2ban,那么所有的东西都应该可以正常工作。
CentOS 6.5也支持IP设置,fail2ban可以在EPEL中用于CentOS 6.这些也应该可以正常工作。
但是,如果你正在运行CentOS 5,那么你很可能不走运。 你可能有一些运气build立ipset自带的模块,但我不确定CentOS 5内核是否被支持。 如果你真的设法解决这个问题,然后升级内核,那么只需要重新构build新内核的模块。