我有这个范围的 IPS 197.192.xx,它日复一日地对我的 pop/imap/smtp 服务器进行暴力攻击。
我已经设置了这个 ipset,它会阻止每个试图攻击我的服务器的 IP。
我想阻止以 197.192 开头的所有 IP 的 pop/smtp/imap 访问
为此,我输入了以下命令:
ipset -A myIpset 197.192.0.0/24
但这向我的 ipset 添加了 65536 个 IP,使其变得巨大,现在我无法向其中添加更多 IP。
还有另一种方法可以以更优雅的方式做到这一点吗?
答案1
您可以添加另一个要阻止的 ipset,这次类型为hash:net
,并将 197.192.0.0/16 添加到该 ipset。或者将您的 ipset 替换为其中一种类型,hash:net
因为hash:net
也可以存储 IP 地址(网络掩码 32)。
要从 转换hash:ip
为hash:net
:
ipset save myIpset > myIpset &&
ipset destroy myIpset &&
sed s/:ip/:net/ myIpset | ipset restore &&
ipset add myIpset 197.192.0.0/16
答案2
你可以不使用 ipset 来实现这一点; iptables 可以相当容易地匹配网络:
iptables -I INPUT -s 197.192.0.0/16 -p tcp --dports smtp,imap,pop3 -j DROP
或类似的。
顺便说一句:您是否向以下人员举报了虐待行为?[电子邮件受保护]按照 AfriNIC Whois 中的要求?值得一试...