2011-06-09 50 views

回答

4

如果您的Web應用程序非常複雜並且佔用相當多的資源,那麼由於slowloris-attack存在問題,可能是實施slowban的地方不對。

相反,您可以通過代理您的應用程序通過輕量級代理或web服務器(如lighttpd或nginx從緩存和靜態內容提供服務並利用您的防火牆)來引入slowban。從那裏,你可能會在你的防火牆中保留shape the bandwidth,因爲連接巨魔主要是由輕量級代理服務器代替沉重的應用程序服務器來保持所需資源相對較低。

雖然這本身有一些危險要考慮(即爲了使可能不安全的應用程序在防火牆中插入基於ip的規則),但iptables和內核在資源上相對容易。

您唯一需要考慮的是您系統可以容忍的開放連接數量以及何時開始查殺最長的開放連接以騰出空間。 Definetly爲您的網站準備fighting against low bandwidth-攻擊。

+2

真是一個偉大的答案。謝謝! – cherouvim 2012-11-02 06:08:03

2

您可以將slowban與資源監控結合起來,以便如果變得越來越明顯,slowbanned用戶正在試圖進行DoS,他們將被改爲permabanned。

-2

你的巨魔有多聰明?您可以在任何發佈回服務器的元素上引入JavaScript延遲。

-2

您可以實現slowban客戶端,而不是服務器端,e.g:

CSS:

body { 
    visibility: hidden; 
} 

的JavaScript:

$(document).ready(function() { 
    window.setTimeout(function() { 
     $("body").css("visibility", "visible"); 
    }, /*How long you want the delay to be*/); 
});