Apache-2.2

處理 Apache 垃圾郵件

  • February 25, 2014

我收到很多可疑請求,導致 Apache 使用大量記憶體(超過 1GB)

[Mon Feb 24 09:48:29 2014] [error] [client 120.37.238.125] PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 76 bytes) in /var/www/wiki/lib/plugins/authplain/auth.php on line 321, referer: http://myserver.com/wiki/clash_of_clans_cheat?do=register

[Mon Feb 24 09:51:01 2014] [error] [client 23.94.23.159] (36)File name too long: access to /wiki/viagra-bestellen_2013_profile_kerstinsheean_how_to_get_no_credit_check_financial_loans_up_to_5000_profile_dawnmillington_profile_gidgetmcwhorter_how_much_ict_is_electronic_healthcare_record_emr_solutions_profile_constancesylves_profile_constancesylves_paying_for_healthcare_equipment_and_treatment failed

這 2 條消息不斷從各種 IP 重複(每分鐘約 10 條消息)。我怎樣才能避免這種情況?我已經設置了fail2ban,它每5分鐘禁止超過40個IP……

我正在使用帶有 Apache 2.2 + PHP5.3 的 Ubuntu 12.04.2 LTS 伺服器。伺服器上只有一個 Dokuwiki,它是私有的,幾乎沒有使用。

查看您發布的兩個不同的 IP 地址(一個來自中國,另一個來自美國),我猜這些是執行腳本攻擊的受感染殭屍網路機器。

如果 Docuwiki 足夠私密,您可以將其屏蔽以僅響應某些 IP 範圍,那可能是您最好的選擇。除此以外…

我不知道您執行的是哪個版本的 Docuwiki,但看起來最近的版本支持 Bad Behavior 外掛。過去我在不良行為方面運氣不錯。(不良行為拒絕來自格式錯誤的客戶端的請求,例如腳本。)您可能也想考慮類似的事情。

引用自:https://serverfault.com/questions/577810