【Wordpress】一番簡単かつ一番確実にサイトへの不正ログイン対策を行う方法 | Knowledge Base

一番簡単かつ一番確実にサイトへの不正ログイン対策を行う方法

WordPressは汎用のCMS(サイト管理ツール)ですので、ログイン画面や管理画面のURL構造は共通。「このサイトはWordpressで作られてる」ということが分かれば当然それらのURLも類推できますし、ユーザー名も何も対策していなければSEO対策の一環で設置する記事作者の一覧のURLから簡単に類推できてしまいますね。そうなると最後の砦はパスワードだけ・・になってしまいます。

大抵の場合はこの方法で不正ログインが試みられます。その対策として有名なのは

  1. 何かのコードを追加するなどしてログイン画面や管理画面のURLを変える方法
  2. セキュリティ系のプラグインで1のことを設定する方法

の2つ。でも・・・

変更したURLがもしも分からなくなったらどうしますか??もしも何かの不具合でプラグインが正常に動作しなくなったらどうしますか?自力で復旧できることを確認してそれらの方法を使っていますか??

プラグインなんだから不具合が出たら強制停止すればいい!とフォルダのリネームや削除をしてもセキュリティ系プラグインの場合には解決しないことが多いんです。そして一旦削除したら・・・復旧はより困難になります。

今回はそんな不安定な方法ではなく、より確実に設定でき、より簡単に設定でき、そしてより簡単に復旧できる方法を紹介します。

もちろん記事執筆時にはこのサイトでも使っている方法ですので、通常のログインURLや管理画面URLでアクセスしてみてください。

見事に
アクセス制限画像
な画面が表示されたらこの方法は使えるのではないでしょうか?

※なおこの方法は不特定の場所からログインをするような性質のサイトには向きませんのであしからず

一番簡単かつ一番確実にサイトへの不正ログイン対策を行う方法

多分ちらっと書いた「不特定の場所・・・」という一文でピーンと来た方もいることでしょう。その方法は管理画面やログイン画面へのアクセスを制限するというものです。

つまり、管理画面やログイン画面へのアクセスは家、会社など特定の場所からのみに限定するのです。ですから不特定の場所からログインするというサイトでは使えないということになります。

この設定を行うのに必要な環境や設定

変更や万が一の場合の復旧に備え、この設定を行うためには、

  1. FTPクライアントでサーバー内のファイル操作ができる
  2. サーバーのファイル操作をするためのサーバーログイン情報が確実に保存されている

のうちのどちらか(両方が推奨)が必要になります。

最近のテーマにはこれから紹介する方法を管理画面から操作できるものもありますし、プラグインにもそうした機能を持つものがありますが、それらはWordpressのサイトへログインできたときはじめて操作できる機能ですから、万が一の時には全く役に立ちませんのでご注意ください。

不正ログイン対策で行うこと

具体的な不正ログイン対策を行う方法を紹介します。といってもこの項目が一番短いかも・・・。

  1. 前項の方法のいずれかでWordpressのインストールされている場所へアクセスします。
  2.   ※インストールされている場所とは「index.php」ファイルや「wp-content」フォルダのあるところを言います。

  3. 「.htaccess」というファイルを見つけ、パソコンへダウンロードします
  4. ダウンロードした「.htaccess」ファイルを開きます
  5.  ※メモ帳でも大丈夫かと思いますが、できればterapadなど無料のものでもいいのでテキストエディタを推奨します

  6. 一番先頭に以下のコードを追記します
  7. <FilesMatch "wp-login.php|wp-admin">
      Order deny, allow
      Deny from all
      Allow from xxx.xxx.xxx.xxx
    </FilesMatch>
    
  8. コードの中のxxx.xxx.xxx.xxxの部分へ実際にアクセスするIPアドレスを入力します
  9. 今管理画面を開いている場所のIPアドレスを調べるには

    あなたのアクセスしているIPアドレス情報などをENVとJavaScriptで取得し表示します。あなたのIPアドレスからポート疎通・ping疎通・DNS索引・WHOIS情報も取得できます。

    へアクセスします(すぐに表示されますのでその通りに入力してください)

  10. 「.htaccess」ファイルを保存します
  11. 元の場所へ上書きアップロードします

これで、今管理画面を開いている場所以外から管理画面やログイン画面へのアクセスができなくなります。

ね、とっても簡単です。
※もしも本当にログインできないの?をテストする場合はわざと違うIPアドレスにしてみるとチェックできます。

※複数の場所を指定する場合はコード中の

  Allow from xxx.xxx.xxx.xxx
の行を追加して、IPアドレスを入力すればいくつでも追加できます。

※この設定をした後でサイトに何かを行う(投稿する、プラグインを追加するなどすべての操作)場合は、一旦ログアウトして再ログインしてからにしましょう(思わぬアクセス拒否が出ることがあります)。

ログイン画面がアクセス拒否されたら・・・

これを知ってて設定するのと知らずに設定するのは雲泥の差となります。

が、設定した部分も1つですから復旧も簡単・・・ですよね??

前項の設定で「.htaccess」ファイルに追記した部分を削除して元の場所へアップロードすれば、何事もなかったかのように元の状態に戻ります。


たったこれだけ?のことで、簡単に自分やログインする人(場所)以外からログインされる、管理画面にアクセスされるのを防ぐことができます。

個人サイトはもちろん、企業サイトで社内以外から操作させないようにしたい場合(特に退職者などが勝手にログインして改ざんしたりしないようにしたい場合)などにはもってこいの方法です。

・・・とはいえ、サイトを作っていた担当者などが退職した場合にはFTPの接続情報やサーバーへの接続情報は漏洩していて間違いないと思いますので、それらのパスワードの変更もしっかり行って、操作できる口を減らす措置はきちんと講じましょう。

トップへ戻る