Linux
如何防止對 Amazon EC2 的 DDOS 攻擊?
我使用的其中一台伺服器託管在 Amazon EC2 雲上。每隔幾個月,我們似乎就會對該伺服器進行一次 DDOS 攻擊。這極大地減慢了伺服器的速度。大約 30 分鐘後,有時會重新啟動,一切都恢復正常。
Amazon 有安全組和防火牆,但我還應該在 EC2 伺服器上安裝什麼來緩解或防止攻擊?
從我學到的類似問題中:
- 通過 IP 表(或者可能是 UFW?)等方式限制來自特定 IP 地址的請求/分鐘(或秒)的速率
- 有足夠的資源在這樣的攻擊中倖存下來——或者——
- 可能建構 Web 應用程序,使其具有彈性/具有彈性負載均衡器,並且可以快速擴展以滿足如此高的需求)
- 如果使用 mySql,請設置 mySql 連接,以便它們按順序執行,這樣慢速查詢就不會阻塞系統
我還缺少什麼?我想要有關特定工具和配置選項的資訊(同樣,在這裡使用 Linux)和/或任何特定於 Amazon EC2 的資訊。
ps:關於監控 DDOS 的註釋也將受到歡迎 - 也許與 nagios?;)
DDOS(甚至是 DOS)本質上是一種資源耗盡。您將永遠無法消除瓶頸,因為您只能將它們推得更遠。
在 AWS 上,您很幸運,因為網路組件非常強大 - 得知上游鏈路已飽和會非常令人驚訝。但是,CPU 以及磁碟 I/O 更容易氾濫。
最好的做法是啟動一些監控(本地如 SAR,遠端使用 Nagios 和/或 ScoutApp)和一些遠端日誌記錄工具(Syslog-ng)。通過這樣的設置,您將能夠確定哪些資源已飽和(由於 Syn flood 導致的網路套接字;由於 SQL 查詢或爬蟲錯誤導致的 CPU;由於…而導致的 ram)。不要忘記在 EBS 卷上設置日誌分區(如果您沒有啟用遠端日誌記錄)(以便稍後研究日誌)。
如果攻擊來自網頁,訪問日誌(或等效的)可能非常有用。