【发布时间】:2018-01-05 20:39:58
【问题描述】:
我有以下IPTables 和IPSet 作为规则源来阻止攻击IP,但是当我将攻击IP 添加到IPSet 时,在我的nginx 访问日志中,我仍然看到连续访问攻击IP。过了一会儿,大概3~5分钟,IP被屏蔽了。
iptables
~$ sudo iptables -nvL --line-numbers
Chain INPUT (policy ACCEPT 317K packets, 230M bytes)
num pkts bytes target prot opt in out source destination
1 106K 6004K DROP all -- * * 0.0.0.0/0 0.0.0.0/0 match-set Blacklist src
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 match-set Blacklist src
Chain OUTPUT (policy ACCEPT 350K packets, 58M bytes)
num pkts bytes target prot opt in out source destination
ipset
sudo ipset -L
Name: Blacklist
Type: hash:ip
Revision: 4
Header: family inet hashsize 1024 maxelem 65536 timeout 60
Size in memory: 13280
References: 2
Members:
xxx.xxx.xxx.xxx(attacker ip) timeout 0
我不知道为什么规则没有立即生效,这让我疯了,就像攻击者在嘲笑我一样。
我使用-I 选项将ipset 添加到iptables 规则,这应该将规则保持在第一位。那么也许Chain INPUT(policy Accept) 可以解决问题?
请帮帮我,非常感谢。
顺便说一句。
我使用Nginx+Djano/uWSGI部署我的应用程序,我使用shell脚本分析nginx日志将邪恶的ip放到Blacklist ipset。
【问题讨论】:
-
可以提供更多细节,请帮助我,谢谢
-
您应该在将 IP 列入黑名单后显示您的 iptables 规则。
-
@Fogmoon,我的回答是否提供了足够的背景背景?如果没有,请告诉我还缺少什么。如果是,您能否接受和/或奖励赏金?如果您不执行任何操作,至少会丢失一半的赏金(在这种情况下,由于没有答案有 2+,因此将丢失全部)。提前致谢!