WordPressのログイン画面 URLを変更する 管理画面に Basic認証を設定する
2017/04/28
WordPressのセキュリティ対策
2014.08.04 追記
6月に記事中に書いていた参考サイトがなくなっていることに気づきました。
それに伴い、改めて記事を書き直しましたので、下記の記事もあわせて参考にしてください。
WordPressのユーザ名を後から変更する方法。adminの使用は危険。
WordPressの管理画面ログインURLの変更方法解説
WordPressの管理画面ログインURLファイルにBasic認証を設定する方法解説
Basic認証をファイル単位・URL単位で設定する方法の解説
また、ファイル単位で Basic認証を設定するためのツールも作成し、下記に記事を書きましたので、あわせて参考にしてください。
Basic認証の.htaccess、.htpasswd生成ツールと解説
WordPressを使うことのリスク
WordPressは、利用しているユーザも多いために、アタックの対象になりがちです。
特に、デフォルトでは管理画面の URLは決まっていて、IDが adminになっていますので、そのまま利用している場合は非常に危険です。
総当たり攻撃と呼ばれるブルートフォースアタックを仕掛けるためには、ログイン画面の URLが分からなといけないわけですが、WordPressの場合はデフォルトの URLは誰でも知っているわけですから。
さらには、IDが adminだと分かっていればさらにアタックの成功率を高めてしまいます。
そのためにやるべきこととして簡単に思いつくのは、下記の 3点です。
- 管理者のアカウントを admin から変える
- 管理画面の URLを変更する
- 管理画面に Basic認証を設定する
管理者のアカウントを admin から変える
これに関しては、別ページ「WordPressのユーザ名を後から変更する方法。adminの使用は危険。」にページを分けて詳しく書いていますので、そちらを参考にしてください。
管理画面の URLを変更する
WordPressの管理画面のデフォルトの URLは、以下のいずれかです。
http://{WordPressが入っているURL}/wp-admin
http://{WordPressが入っているURL}/wp-login.php
「wp-admin」は管理画面の処理が入っているフォルダがこの名称ですので、分かりやすい URLとしてはこちらの方ではないかと思います。
ですが、実際のログイン処理をしているファイルという意味では「wp-login.php」になりますので、こちらでもログインできます。
実際に利用する場合はどちらでも問題ありません。
上記の通り、WordPressは、デフォルトのままではログイン URLがどのサイトも同じになっていますので、そのサイトが WordPressを利用している、ということが分かれば管理画面の URLも分かってしまうということになります。
そうすると、そのログイン画面に対してブルートフォースアタックを行うチャンスを与えてしまうことになります。
そうしないためには、ログイン画面の URLを変更してしまえばいいわけです。
そして、その作業をするのに参考になるサイトが下記です。
ログインページを変える
http://elearn.jp/wpman/column/c20121118_01.html
このサイト通りに進めていけば問題なく対応できると思いますが、いくつか補足説明をしてきます。
最初に作る「anywhere-login.php」がログイン URLになりますので、好きなファイル名を付けましょう。このファイルは、新たに作成するファイルになります。
そして、ここで作成したファイル名をその次に記述する「functions.php」の 1行目の「anywhere-login.php」を書き換えることになります。
※「functions.php」は下記の場所にあります。
/{WordPressがインストールされている場所}/wp-content/themes/{テーマ名}/functions.php
「WordPressの functions.phpがある場所」に詳しく書いていますのでそちらも参考にしてください。
ログイン画面の URLを変更するにはプラグインを用いる方法もありますが、プラグインでは処理がブラックボックスになりがちのため、こちらの方法がいいと感じています。
処理の意味が分かっていれば、何か不具合があった時にも対処のしようがあるというものでしょう。
また、次の Basic認証を設定するためにもログイン画面を表示するファイルの確認等が必要になりますので、その意味でもこの方法をお勧めします。
管理画面に Basic認証を設定する
続いて、Basic認証を設定する方法です。
Basic認証と言えば、フォルダ単位で認証設定をする際によく用いられるものですが、ファイル単位での設定も可能です。
そこで、Basic認証を利用して、管理画面のログインに使うファイルにだけ Basic認証を設定し、ログイン画面にアクセスする際に認証をさせよう、という処理です。
これにより、2回のログイン認証を通らないと管理機能を利用できるようになりませんので、セキュリティの強度はぐっと増加します。
2回もパスワードを入力する必要がありますので、日々の運用の際の面倒さは増えますが、ブラウザに記憶させておけば全く気にならない問題かと思います。(より高いセキュリティを求めるなら、ブラウザに記憶させておくべきではないですが...)
具体的な設定は下記サイトを参照してください。
http://www.saases.jp/blog/wordpress/375/
このサイトも詳しく説明がされていますので、読みながら設定していけば問題ないと思いますが、Basic認証設定ファイルの説明を少ししますと、下記のような感じです。
フォルダ単位の Basic認証の設定は以下の感じです。
.htaccess
————————————————-
1 2 3 4 5 |
AuthUserFile /wordpress/wp-admin/.htpasswd AuthGroupFile /dev/null AuthName "Member Only" AuthType Basic require valid-user |
————————————————-
ファイル単位での Basic認証の設定(URLを変更しない場合の指定は下記になります。)
.htaccess
————————————————-
1 2 3 4 5 6 7 |
<Files wp-login.php> AuthUserFile /wordpress/wp-admin/.htpasswd AuthGroupFile /dev/null AuthName "Member Only" AuthType Basic require valid-user </Files> |
————————————————-
こんな感じで「<Files wp-login.php>」の部分を追加します。
ここで設定したファイル単位で個別の処理を追加していくことが可能です。
また、ここで記述するファイル名(wp-login.phpの部分)は、前の項目で指定した「wp-login.php」から変更したファイル名になります。それを指定してください。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
BackWPupでバックアップ・機能の基本設定 Settings
BackWPupその5。バックアップ設定のベースになるBackWPup自体の設定解説です。
-
WordPressのウィジェットにGoogle+ページのバッジ編集方法
Google+ページの特徴(Facebook、Mixiとの違い)や構築のメリット(Google対策)、登録、バッジの編集方法の解説。
-
WordPressの管理画面ログインURLファイルにBasic認証を設定する方法解説
管理画面のログインURLにBasic認証を追加することでさらなる極めて高いセキュリティ向上の方法を解説します。
-
WordPressの不正ログインを Force email loginで回避
WordPressのセキュリティ強化に Force email loginを使う理由と設定方法の解説をしています。
-
WordPressのアップグレードの英語版と日本語版の公開のタイムラグは?
WordPressのアップグレードの英語版と日本語版の公開のタイムラグについて説明しています。
-
BackWPupでバックアップ・設定したJobの実行、ファイル一覧
BackWPupその4。バックアップ設定した Jobを実行する方法、ログの一覧、保存されたファイル一覧の解説です。
-
WordPressのスラッグとは?
WordPressのスラッグって何?それを解説している記事です。なんとなく分かっている気になっているものを改めてしっかり確認をしてみませんか?
-
WordPressの不正ログインを Edit Author Slugで回避
WordPressのセキュリティ強化に Edit Author Slugを使う理由と設定方法の解説をしています。
-
WordPressにプラグインを使わず OGP(Open Graph Protocol)の設定方法解説
WordPressに OGP(Open Graph Protocol)をプラグインを使わずに設定する方法の解説。
-
Basic認証をファイル単位・URL単位で設定する方法の解説
Basic認証はフォルダ単位だけでなくファイル単位での設定もできるためログイン画面だけにBasic認証を設定することもできます。その解説です。