想要屏蔽IP攻击者的IP段,在linux上如何过滤掉或者去掉重复的IP呢?

Author: Kirito - Posted:5年前 - View:1540

RT,楼主的服务器系统是CentOS 7.2。
最近登录服务器使用netstat -tnp,看到了太多关于SYN_RECV的攻击,我的网站就个人博客而已啊,配置也才1核1G啊,这些无聊的攻击者,到底要怎么这样对我,真TM的丧尽天良啊!!!

每天我自己的网站都在指定的一段时间内打不开,固定的都在下午一点开始,一直持续到晚上八点才能恢复,打开速度实在太慢了,就像蜗牛一样,我真的快要崩溃了,实在受不了啦,也许是我的防火墙没有设定好,看来我要把所有的SYN_RECV的IP全封掉,不是封IP而是要封IP段,但是现在有一个问题,因为当我使用netstat -tnp的时候,会出现很多重复的IP,每一次封IP段的时候会出现太多重复的IP段,正确封掉以后就效果如下:

$ sudo iptables -L -n
DROP       tcp  --  117.18.0.0/16        0.0.0.0/0            tcp dpt:80
DROP       tcp  --  47.11.0.0/16         0.0.0.0/0            tcp dpt:80
DROP       tcp  --  211.91.0.0/16        0.0.0.0/0            tcp dpt:80
DROP       tcp  --  113.47.0.0/16        0.0.0.0/0            tcp dpt:80

排除重复IP的时候,我也用到了/bin/uniq,但还是有重复的IP,感觉这个命令没有用一样,是不是我少了哪个步骤?

0 人点赞  ∙  0 人收藏  
加入收藏 点赞 我要评论

目前共有 2 条回复

coding
- coding - 5年前

楼主估计是没有进行网上先搜索答案吧?

uniq只能去重临近的行,如果要去重的IP不相邻,那就起不到去重的效果了。
要想把不相邻的重复行也去除掉的话,必须要将所有行进行sort排序,然后再才使用uniq来进行去重了。

Kirito
- Kirito - 5年前

@banniwang TKS,解决了,的确需要先排序才可以,这样就可以将重复的IP排序到相邻位置,一次性就能去重了。