2011-08-16 108 views
3

我有一個網絡應用程序,如果它在很短的時間內發出很多請求,我想通過阻止IP地址來阻止DOS攻擊。防止網站拒絕服務攻擊的最佳方法

例如,如果同一個IP地址在一秒鐘內發出100次請求,我可以認爲這是某種攻擊,我想阻止這個IP。

但是,在應用程序層進行此檢查似乎太昂貴 - 進行此檢查的最佳方式是什麼?

我應該做這樣的檢查在我的:

  • 防火牆
  • 路由器
  • Apache的配置
  • 別的地方完全...
+0

嘗試使用谷歌與此「拒絕服務預防工具」 – DwB

回答

0

一些用於在django中生成API的應用程序實現了一些限制每秒請求數量的方法。 例如django-piston使用節流方法來做到這一點。 django-piston throttling

這是一個簡單的方法來解決問題。

0

如果你想阻止IP地址發出一定數量的請求時,最好在網絡層完成。這將暗示您在主機的網絡堆棧中或使用路由器(在網絡層運行)執行此操作。

您可能需要考慮的一些問題是: - 您確實想阻止基於IP地址訪問整個主機,還是希望阻止對特定端口上運行的特定應用程序的訪問? - 有時,通過使用NAT,一個IP地址可能代表許多真實的主機發出請求。

隨着任何安全應用程序,你需要有多層防禦,因此,投資一個好的防火牆也是一個好主意。

相關問題