たぶん、ここ一週間ぐらいだと思うんですけど、WordPressのXML-RPCエンドポイントへのブルートフォース攻撃が多くないですか? 僕がEC2でホスティングしているWordPressは全部やられました。
そんなにものすごい勢いでアクセスが来るわけじゃないので、大規模なサイトでは気づかないかもしれないのですが、サーバがしょぼいとCPUの利用率が100%を超えます。xml-rpc.php への認証をトライされるとDBへの接続が必ず行われてしまうからですね。
一番簡単なのは xmlrpc.php へのアクセスを遮断してしまうことなのですが、プラグインJetpackを使っている場合、そうもいかなかったりします。JetpackがXML-RPC使ってるからですね。
そこで、こんな設定をNginxの設定ファイルにこんな記述をしておくとわりとなんとかなります。
# Exclude jetpack
location ~ ^/xmlrpc\.php {
if ( $http_user_agent !~* jetpack ) {
return 403;
}
}
ユーザーエージェントにJetPackが含まれていなかったら403エラーを返すという設定です。
これでわりとなんとかなると思いますが、いかがでしょうか。
雑感
JetPackってAutomatticの作ってるプラグインなわけで、ブルートフォースプロテクションとか、サイト監視とかいろんな機能をうたってはいますが、このプラグインを使うためには /xmlrpc.php を開放しておかなくてはならず、逆に他のプラグインがXML-RPC使っているかというとほぼ使っておらず、JetPackが一番のセキュリティホールなんじゃないの? と思ったり、思わなかったり。
