問題描述
我有幾個託管的 wordpress 博客,我一直在試圖訪問他們,他們真的很慢。我看了我的服務器日誌,我發現這個
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:28 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:28 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:28 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:28 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:29 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:29 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:29 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:29 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:31 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:31 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
stanfordflipside.com:80 188.138.33.149 - - [17/Aug/2013:17:14:31 -0700] "POST /xmlrpc.php HTTP/1.1" 200 595 "-" "GoogleBot/1.0"
我從 GoogleBot 到幾個站點的文件/xmlrpc.php 每秒可以獲得〜 10 次點擊,這似乎正在放慢服務器的速度。我在跑步
tail -f
在日誌文件上,可以看到這些請求繼續。有人知道為什麼會發生這種情況,或者你可以做什麼來阻止它?
最佳解決方案
如果是我,我將使用 iptables 阻止 IP,如果您具有這種服務器級別的訪問權限。
您也可以禁用 xmlrpc 。不幸的是,由於 3.5,禁用該功能的管理屏幕選項已被刪除。一行代碼應該禁用它:add_filter( 'xmlrpc_enabled', '__return_false' ); 這可能會節省一些開銷的請求,雖然它不會消除所有這些。
次佳解決方案
“Googlebot” 沒有理由訪問 xmlrpc.php 您可以將其添加到 xmlrpc.php 的頂部
// Block fake Googlebot
if ( strpos($_SERVER['HTTP_USER_AGENT'], "Googlebot") === true ) { exit(); }
我猜這是一個核心的 WordPress 文件。所以這樣更新可能會令人煩惱。如果 Automattic 使用 Akismet 從所有 WP 腳本到處黑名單這些 IP 將會很好。
更新:在 DDoS 開始對我的服務器徵税後,我最終刪除了 chmod 0 xmlrpc.php 的權限 (見我的評論) 。換句話説,這個有條件的 PHP 代碼可能不會阻止攻擊者臨時禁用您的博客。在任何情況下,他們通常放棄相當快。
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。