Apache-2.2
在 Apache 2.X 中記錄超時請求
我正在將一些應用程序從 Apache 1.3 遷移到 2.2。
我們曾經執行一些測試,攻擊者打開一些與我們伺服器的 HTTP 連接,但什麼也不做。Apache 1.3 將記錄以下 408 程式碼,例如:
126.1.86.85 - - [01/Dec/2010:06:26:19 +0000] "-" 408 - "-" 0 126.1.86.85 - - [01/Dec/2010:06:26:19 +0000] "-" 408 - "-" 0
但是對於 Apache 2.2,日誌文件中不會記錄任何內容。我通過使用 netcat 打開連接來執行相同的測試:
$ nc IP_victim PORT_victim $ nc 10.42.37.3 80
我想讓 Apache 2.2 將相同的 408 程式碼記錄到日誌文件中,以便我們知道來自外部的嘗試 DoS 攻擊。我是否需要在 Apache 2 中進行更多配置才能啟用此功能?
我嘗試了一些不同的配置,例如
LogLevel = Debug, Timeout 30, RequestReadTimeout header=10 body=30.
謝謝。
我在 Apache 郵件列表https://issues.apache.org/bugzilla/show_bug.cgi?id=39785中找到了這個。其中談到了這一點。這看起來在 apache 版本 2.2.2 中已解決。這是http://svn.apache.org/viewvc?view=revision&revision=919323中的相關檢查。它有一條評論說“只有在沒有保持連接超時的情況下才記錄 408”。
因此,請檢查您是否設置了 KeepAlive 值,並檢查以確保您使用的是 2.2.2 或更高版本。