wordpressのxmlrpc.phpとwp-cron.phpの設定を変更する。

管理しているサーバが数日頻繁に落ちることがあり、調べたところ、httpdへのアクセスが原因であることがわかりました。
以下のようなhttpdのログが多数あり、googlebotかと思っていたのですが、調べてみるとユーザエージェントを偽装していることに気が付きました。(調べ方

159.253.151.109 - - [21/Oct/2015:01:13:00 +0900] "POST /xmlrpc.php HTTP/1.0" 200 380 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; http://www.google.com/bot.html)"
::1 - - [21/Oct/2015:01:13:14 +0900] "OPTIONS * HTTP/1.0" 200 - "-" "Apache (internal dummy connection)"
133.242.161.73 - - [21/Oct/2015:01:13:15 +0900] "POST /wp-cron.php?doing_wp_cron=1445357595.6190190315246582031250 HTTP/1.0" 200 10 "-" "WordPress/4.3.1; http://aaa.yyy.zzz"
159.253.151.110 - - [21/Oct/2015:05:12:24 +0900] "POST /xmlrpc.php HTTP/1.0" 500 263 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; http://www.google.com/bot.html)"

xmlrpc.phpの制限方法はいろいろあるのですが、xmlrpc.phpと同じディレクトリにある.htaccessに

RewriteRule ^xmlrpc\.php$ "http\:\/\/0\.0\.0\.0\/" [R=301,L]

を追記し、

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^xmlrpc\.php$ "http\:\/\/0\.0\.0\.0\/" [R=301,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

としました。(xmlrpc.phpにアクセスがあればhttp://0.0.0.0/に転送される)

wp-cron.phpについては、ページにアクセスがある度にキックされる設定になっているので、5分おきにCRONでキックするように設定を変更しました。
具体的には、wp-config.phpに

define('DISABLE_WP_CRON', 'true');

を書き、

*/5 * * * * curl http://aaa.yyy.zzz/wp-cron.php > /dev/null 2>&1

といった感じでCRONを設定します。(aaa.yyy.zzzの部分はサンプルです)