!
也想出现在这里? 联系我们
广告位
当前位置:首页>教程分享>服务器教程>Linux被DDOS&CC攻击解决实例

Linux被DDOS&CC攻击解决实例

背景:这两天一个客户反映自己的网站经常出现mysql 1040错误,他的在线用户才不到一千,mysql配置也没问题,没理由出现这种情况,于是,进行了一系列的排查。top了一下,mysqld跑到了200%多。

 

1 解决方案&思路
怀疑是CC攻击,鉴于系统是centos,我运行了下面的这两行命令。

netstat -anlp|grep 80|grep tcp|awk \'{print $5}\'|awk -F: \'{print $1}\'|sort|uniq -c|sort -nr|head -n20 | netstat -ant |awk \'/:80/{split($5,ip,\":\");++A[ip[1]]}END{for(i in A) print A[i],i}\' |sort -rn|head -n20

把请求过多的IP记录下来。

174.127.94.*
199.27.128.*
199.27.133.*

开始封禁IP,具体可以看我下面运行的命令。本文主要是采用iptables进行封禁,iptables使用方法请见:

iptables -I INPUT -s 174.127.94.0/16 -j DROP
iptables -I INPUT -s 199.27.128.0/16 -j DROP
iptables -I INPUT -s 199.27.133.0/16 -j DROP
iptables -I INPUT -s 193.1.0.0/8 -j DROP 【慎用封禁整个段】

运行上面这些命令之后我们已经完成封禁操作了,不过还得保存一下,如果不保存的话重启系统之后上面设定的规则会消失。

service iptables save

保存然后重启:service iptables restart

这一步建议多进行几次,发现异常IP用上面的办法封禁。如果出现误封可以参考下面这行解封命令进行解封

iptables -D INPUT -s 222.142.2.0/16 -j DROP
 

2 常用命令

封单个IP的命令是:iptables -I INPUT -s 11.11.11.11 -j DROP

 

封IP段的命令是:

iptables -I INPUT -s 211.1.0.0/16 -j DROP
iptables -I INPUT -s 211.2.0.0/16 -j DROP
iptables -I INPUT -s 211.3.0.0/16 -j DROP

封整个B段的命令是:iptables -I INPUT -s 211.0.0.0/8 -j DROP

封几个段的命令是:

iptables -I INPUT -s 61.37.80.0/24 -j DROP
iptables -I INPUT -s 61.37.81.0/24 -j DROP

 

3 后续
进行了上面的操作之后,网站正常了。top查看服务器资源也正常了。

给TA打赏
共{{data.count}}人
人已打赏
服务器教程

Windows香港服务器安装宝塔教程步骤

2021-4-17 17:54:36

服务器教程

香港服务器的linux中如何关闭selinux

2021-4-17 17:54:38

声明 本站上的部份代码及教程来源于互联网,仅供网友学习交流,若您喜欢本文可附上原文链接随意转载。无意侵害您的权益,请发送邮件至 [email protected] 或点击右侧 私信:吉吉国王 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
OneEase