有什麼具體的可以做,以幫助使Django頻道服務器不易受輕或意外從websocket/HTTP客戶端的DDoS攻擊或一般負載增加?由於Channels並非真正的異步(仍然是幕後工作人員),我覺得取下基於頻道的網站是相當容易的 - 即使是相當簡單的硬件。我目前正在Django頻道上構建一個應用程序,稍後將運行一些測試以瞭解它如何成立。負載尖峯保護的Django頻道
是否存在某種形式的內置於達芙妮的節流?我應該實施一些應用程序級別的限制嗎?這仍然很慢,因爲工作人員仍然處理受限制的請求,但請求速度可能更快。我還有什麼可以嘗試阻止這些攻擊?
我想過的一個事情是確保有工作人員爲特定頻道指定 - 這樣,如果websocket頻道超載,HTTP仍會響應。
編輯:我很清楚,低級DDoS防護是一個理想的解決方案,並且我理解DDoS攻擊如何工作。我正在尋找的是一種解決方案,可以幫助處理類似增加的負載。或許達芙妮能夠擴大渠道規模並縮小另一渠道來彌補,或者可以在某個點之後降低每個請求的重量的節流方法。
我正在尋找達芙妮/頻道的具體答案 - 有關DDoS或一般負載處理的一般答案不是我正在尋找的 - 關於這個有很多其他問題。
我還可以根據誰登錄,誰不是 - 對未登錄的用戶節流可以幫助控制節流。
再次編輯:請閱讀整個問題!我不是在尋求一般的DDoS緩解建議或對低級方法的解釋。我想知道如果達芙妮有類似的支持:基於隊列的大小
- 節流
- 動態分配工人
- 中間件對認證的請求優先提供
或者這種性質的東西。我也打算直接與渠道社區聯繫,因爲SO可能不是這個問題的最佳位置。
帶軟件防火牆的DDOS保護?我的意見是「敬畏」的主意!在每個請求上讀取60個字節的數據包標題。觸發更多的拒絕 - 丟棄 - 凍結功能是「系統資源」問題。延遲是'已定的結論'。您可以在低價值攻擊方面取得成功,但如何處理系統資源?不能在防火牆上使用任何存儲過程,意味着good_user vs bad_user請求。 **如果接受不需要的請求,則無法保護自己!**如果數據包達到環回('lo'),則不便宜。 – dsgdfg