NginxサーバーのWordPressでも、ログインページへのURLを無料で変更できるプラグイン XO Security を利用し始めたのでご紹介です。サイトアドレス/wp-admin や/wp-login.php でアクセスしても404ページになり、自分で設定したURLでのみダッシュボードにログインできるようになりました。
プラグイン作者さんは日本の方のようなので、下記プラグインページで詳しく解説がでています。
このページの目次
Nginx対応
最近WEBサーバーをNginxに変更したのですが、前のApacheの時と比べてログインページへのURLを変更できるセキュリティ系のプラグインでNginxに対応しているのは有料版が多かったので放置していました。
そうしたら、botで総当たり攻撃がたくさん来るのは想定内でしたが、先週あたりから、”だれかが次のアカウントのパスワードリセットをリクエストしました:”メールが何度も来るようになり、誰かがログイン画面でパスワードリセットボタンを押しているようです。さすがにこれは気持ち悪いので、WordPressのプラグインディレクトリをいろいろ探して試してこのプラグインを利用することにしました。
設定
インストールは公式ディレクトリーにあるので検索してインストールして有効化したあと、管理画面の左メニューの 設定→XO Securityを開きます。
最初はステータス タブが開き、ログインログ記録だけが有効になっています。右側のタブで有効にしたい機能を設定していきます。以下は、私がここのサイトで設定した内容になります。
ログインタブ
このプラグインのメイン機能であるログインページの設定は、ログインタブで設定します。ログインページのURLを変更するのもこのタブで設定できました。なぜか1回目の****.phpファイルは作成に失敗しましたが、別な名前の***.phpファイル名にすると2回目は成功しました。
- 試行回数制限…ログイン失敗の場合に、24時間の間に4回までリトライを許可する
- ログインページの変更…サイトURLをここで変更します。
- ログインCAPTCHA…ログイン画面にひらがな で画像キャプチャを追加します。
XML-RPCタブ
XML-RPCは、外部のブログ投稿ツールを使わないのであれば、無効にしたほうがこの機能を使っての攻撃を回避することができます。
私は、管理画面からの投稿しかしないので無効にしました。スマートフォンやタブレット用の公式WordPressアプリは無効のままでも利用できました。
REST APIタブ
REST APIは、埋め込み(oEmbed)機能を利用するためWordPressで標準で有効になっています。最近は、定番プラグインJetpackやContact Form7、WooCommersなどでもREST APIを一部機能で利用しているそうです。
このプラグインでは、REST APIを無効化して悪用を防ぎつつ、oEmbed機能、Jetpack、Contact Form7、WooCommersの利用だけは除外する設定ができました。
秘匿タブ
秘匿タブでは、作成者アーカイブやコメント著者から管理者ユーザー名(ID)を特定されてしまうのを防ぎます。
ステータスタブ
ステータスタブに戻ると、設定状況一覧を見ることができます。設定した項目がちゃんと有効になっているか確認できます。
ログインログ
ログインログを見るときは、管理画面の左メニュー ユーザー→ログインログ を開きます。ログインURLを変えているので、おそらく成功結果しか出ていないはずです。
他プラグインと併用可
外部サービスを一切利用していない、.htaccess ファイルの書き換えをしないため、他のセキュリティ系プラグインと併用してもトラブルが少なそうです。
元の/wp-admin や/wp-login.php へのアクセスログや、Malwareチェック、ファイル保護などは、別なセキュリティ系のプラグインを利用しています。私は、Ninja Firewallと併用しています。