發生在測試環境,有外網網域名稱。
客戶端同學反映介面不能請求,看了下日誌沒有錯誤,重啟了一下可以正常啟動。
過了一段時間又不能訪問了,開始排查nginx日誌。發現一瞬間有大量的請求響應碼為404,之後我們的請求響應499。
因為測試環境跑了多個服務,記憶體使用率較高98%,考慮是不是記憶體不足引起的開始做服務遷移,將我的服務遷走並且nginx**的新服務,觀察一段時間。
好景不長,第二天又掛了。說明不是記憶體的問題,再看nginx日誌發現還是一樣的情況,大量的請求,其中不乏sql注入,env,secret_key和各種靜態檔案。
由於我們只支援post請求,並且每個請求都有sign,所以並沒有攻擊到db。採用應急手段先把這個ip誒deny了,之後所有攻擊的請求都直接返回403不再打到tomcat,暫時解決問題,後面又有幾次攻擊均未造成影響。
後續解決方案:
主要應該是測試環境配置有限,突然流量激增時tomcat很容易***,所以要做限流。
1.springcloud zuul中用令牌桶
2.在tomcat容器中,我們可以通過自定義執行緒池,配置最大連線數,請求處理佇列等引數來達到限流的目的。
3.在nginx中也可以限流
1、在nginx.conf裡的http{}裡加上如下**:
limit_conn_zone $binary_remote_addr zone=perip:10m;limit_conn_zone $server_name zone=perserver:10m;
limit_conn perip 2;補充說明下引數:limit_conn perserver 20;
limit_rate 100k;
記一次被自己DDOS攻擊
伺服器報警 初步分析 進一步分析 最終分析 總結toc 7月24號下午5點半開始,突然伺服器報警,檢查監控,發現cpu異常100 該伺服器正常情況下cpu使用率在40 已經算高了,另外負載經過除錯都保持在cpu承受範圍內。系統負載同時飆公升 資料報的量直上雲霄 tcp連線數上2w,正常情況下最多6k...
一次真實的DDoS攻擊防禦實戰
第一輪進攻 突然發現公司的web server無法訪問,嘗試遠端登入,無法連線,呼叫idc重啟伺服器。啟動後立即登入察看,發現攻擊還在繼續,並且apache所有230個程序全部處於工作狀態。由於伺服器較老,記憶體只有512m,於是系統開始用swap,系統進入停頓狀態。於是殺掉所有httpd,稍後伺服...
記一次阿里雲伺服器被用作DDOS攻擊肉雞
事件描述 阿里雲報警 檢測該異常事件意味著您伺服器上開啟了 chargen dns ntp snmp ssdp 這些udp埠服務,黑客通過向該ecs傳送偽造源ip和源埠的惡意udp查詢包,迫使該ecs向受害者發起了udp ddos攻擊 源ip xx.xx.xx.xx 源port 111 目的port...