服務熱線:4008-650-660
14
產品文檔
控制臺使用
基礎類問題
應用類問題
網絡類問題
安全類問題
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查看服務器資源也正常了。


這條幫助是否解決了您的問題? 已解決 未解決

提交成功!非常感謝您的反饋,我們會繼續努力做到更好! 很抱歉未能解決您的疑問。我們已收到您的反饋意見,同時會及時作出反饋處理!

在線
客服

在線客服服務時間:8:30-18:30

售后支持

客服
熱線

4008-650-660
7*24小時客服服務熱線

關注
微信

關注官方微信
頂部
网上打鱼输钱经历 龙虎和预测软件手机 浙江快乐12历史开奖结果 xd股票是什么意思 辽宁快乐12中奖金额 哪一家股票配资平台安全可靠 福建11选5真准网 免费炒股软件哪个最好 北京快乐8压大小的方法 浙江体彩十一选五开 黑龙江11选5下注平台