阿里雲伺服器,這幾天老是CPU盤跑滿,然後網站就訪問不了了,之前雲盾有提示一直遭受外部流量攻擊。跑滿的時候重啟一下伺服器,過了一會又CPU跑滿,有時候訪問網站的時候還會提示資料庫連接錯誤,求大神指導。


到資料庫裡面show processlist看看當前資料庫在執行什麼,是不是有大量連接卡在某個資料庫慢查詢上面。

打開資料庫慢查詢日誌,看看日誌裡面能不能捕捉到一些可疑的慢查詢。

apache有一個server status設置項,開起來可以通過一個URL來看當前Web伺服器狀態,看能不能捕捉到一些可以跡象。

首先cpu跑滿是什麼導致的?純粹的網路流量?還是動態頁面處理,還是資料庫query?

對症下藥吧,但是假如是ddos的話我覺得都非常棘手,因為跑滿一個網口太容易了。


CUP使用率如果經常百分百的話,很可能是受到cc攻擊。cc攻擊,是一種以網站頁面為攻擊目標的應用層攻擊,攻擊時選擇伺服器開放的頁面中需要較多資源開銷的應用。例如佔用大量cpu資源進行運算或需要大量訪問資料庫的應用。因此攻擊會造成伺服器CPU使用率百分之百。cc攻擊的特點: 很小的流量達到拒絕服務的效果; 正常訪問特徵,攻擊特徵不明顯,沒有長時間的半開連接,也沒有大量的tcp或UDP的syn包流量出現,很難與正常訪問區分。

cc攻擊的檢測方法:

1.cookie認證,驗證瀏覽器端cookie; 2.通過HTTP_X_FORWARDED_FOR變數檢測代理伺服器,提供代理時會通過HTTP_X_FORWARDED_FOR變數發送原始的用戶ip地址,根據這個變數可以統計在一段時間內同一原始ip通過不同的代理伺服器發送了多少個訪問請求,如果超出正常值,就可以認定為攻擊行為; 3.將頁面中需要進行數據訪問或者較複雜處理的內容放在一個重定向指令之後,訪問該頁面得用web伺服器訪問重定向功能先讓用戶訪問一個簡單的預處理頁面,由預處理頁面記錄用戶訪問信息,並進行認證,通過認證的請求重定向到執行用戶訪問請求的頁面,對用戶訪問信息設置過期,如果一段時間內出現大量用戶信息過去,就可以判斷出頁面正受到攻擊; 4.建立網站各個頁面訪問量分佈模型,當用戶訪問分佈情況發生較大的變化時,可以判定為發生cc攻擊了。

cc攻擊的防禦只需要在伺服器上裝上相應的伺服器安全防禦軟體就可以達到效果了,至於這類的軟體可以百度上自行搜索,伺服器安全狗效果不錯,建議可以考慮。


找對靠譜的安全廠商進行防禦,59盾瞭解下


就我所知,阿里雲主機帶寬價格極貴(100M帶寬差不多1萬/月),我以猜測你不可能上百M的出口帶寬。這麼小的帶寬受到ddos攻擊,能把cpu跑滿的,估計cpu都在等IO了。

有sar收集下性能數據和流量數據再來問吧。


先把所有服務能關的關了,然後一個個檢查日誌有沒有奇怪的訪問,
推薦閱讀:
相關文章