阻止IP地址的范围

我受到来自中国所有类似知识产权的企图攻击的轰炸。

我将如何阻止IP范围像116.10.191。*等

我正在运行Ubuntu服务器13.10。

我正在使用的当前行是:

sudo /sbin/iptables -A INPUT -s 116.10.191.207 -j DROP 

这只能让我一次拦截每一个,但黑客正在每次尝试都在改变IP地址。

要阻止116.10.191。*地址:

$ sudo iptables -A INPUT -s 116.10.191.0/24 -j DROP

要阻止116.10。*。*地址:

$ sudo iptables -A INPUT -s 116.10.0.0/16 -j DROP

要阻止116。*。*。*地址:

$ sudo iptables -A INPUT -s 116.0.0.0/8 -j DROP

但要小心使用这种方法阻止。 您不希望阻止合法stream量到达主机。

编辑 :正如指出的那样,iptables按顺序评估规则。 规则集中较高的规则在规则集中较低的规则之前应用。 因此,如果规则集中的规则允许上述stream量,那么附加( iptables -A )DROP规则将不会产生预期的阻止结果。 在这种情况下,插入( iptables -I )规则:

  • 作为第一条规则

sudo iptables -I ...

  • 或在允许规则之前

sudo iptables --line-numbers -vnL

说,显示规则3号允许sshstream量,你想阻止ssh的ip范围。 -I接受一个整数的参数,这是您想要插入新规则的规则集中的位置

iptables -I 2 ...

sudo /sbin/iptables -A INPUT -s 116.10.191.0/24 -j DROP

这阻止了范围。 您可以根据需要使用相同的一般格式来扩展子网。

作为一种替代方法,你可以使用像fail2ban这样简单的方法。 它会连续失败的login尝试超时,并使bruteforcing不可行,因为他们每超时只有几次机会。 我把时间设定为30分钟。 等到他们一两个小时的时候,他们意识到他们将无法取得进展,放弃。