僕とブログとLogin rebuilderとBrute Force Login Protectionとxmlrpc.php

このサーバは借りたホストで自前で管理しているんだけど、よくいろんな国からログイン試行のアクセスが来る。sshでも来るし、Wordpress(WP)のログイン試行も多い。治安悪いなぁ。

fail2banやWPのBrute Force Login Protection(BFLP)といったソフトウェアは、ログイン試行を記録して不正と見なすほどの頻度で来た場合にそのIPアドレスをブロックするというものだ。割と有効で、ちょくちょく通知メールが来る。BFLPはApacheの.htaccessを作ってくれるけど、私はincronと自作スクリプトを組み合わせてnginxで運用している。

sshならポートを変えたり、WPならLogin rebuilderというプラグインがあって、ログインページのURLを変更することができる。これも効果があって、特にsshによるlogin attemptは劇的に減った。しかしWPのBFLPの通知は相変わらず、頻繁に来続けた。ログインページ変更ってほとんど効果ないじゃん。

アクセスログを見てみたら、不正なログインはxmlrpc.phpに向けたPOSTリクエストだった。wp-login.phpの倍くらいのxmlrpc.phpへのPOSTが来ている。なるほど。このエンドポイントもURL変更しないと効果は半減というわけか。ただこのエンドポイント、自分としては消すことはできなくて、Androidとかから投稿するのに必要なんだよね。

…と思っていたんだけど、実はこのxmlrpc.phpは古いクライアントのためのものであって、今はほとんど使われていないらしい。ずいぶん前からREST APIがあってそっちが使われてるとかなんとか。へー。Androidのアプリが使ってないなら、xmlrpc.phpを残す意味がない。ので、無効化した。

でもさ、REST APIは攻撃されたりしないのかな。REST APIにもBFLPは有効なんだろうか。ここは治安の悪いインターネット、不安の種は尽きない。

(追記) 2020/08/26

動作確認をしてなかった、と思ってAndroidのアプリから投稿してみようと思ったら、使えなくなっていた。xmlrpc.phpはやっぱり必要なのか。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です