WordPressのログイン画面にBasic認証をかけて二重ロックする
不正アクセスって怖いなと思いながらもアクセス制限などは難しそうで手を付けていませんでした。こちらの投稿「WordPress › フォーラム » wp-login.phpのパーミッションとファイル名変更」をみて、ログイン画面にBasic認証をかけるという手があったのかと目からうろこだったので、さっそくwp-login.phpファイルへBasic認証をかけて二重ロックにしました。
Basic認証とは
.htaccessファイルで設定する、IDとパスワードによる認証方法です。Apacheなどが動作しているサーバで使用できます。
ログイン画面へBasic認証をかける手順
1. .htaccessファイルを作成する
すでにルートディレクトリに .htaccessファイルがある場合はそのファイルを使用します。ない場合はテキストエディタで .htaccess という名前のファイルを作成すればOKです。ローカルで頭に”.”がつくファイルが作成できない場合は、htaccess.txt でもなんでも良いので仮の名前でサーバー上にアップロードした後に名前の変更をします。
2. .htpasswdファイルを作成する
.htpasswdファイルは、Basic認証で認証する為のIDとパスワードを記入するファイルです。.htpasswdファイルもテキストエディタで .htpasswd という名前のファイルを作成すればOKです。
こちらも場合によりサーバー上にアップロードの後に名前の変更をします。
.htpasswdファイルに記入する内容は、「 ID:暗号化されたパスワード 」とします。IDもパスワードも任意のもので良いですが、パスワードは暗号化する必要があります。
こちらのサイト「.htaccess ファイルを簡単作成「.htaccess Editor」」で .htpasswdに必要な暗号化されたパスワードを含む、必要事項が生成できます。
例えば、IDが”saori”、パスワードを”saoripass”とした場合は以下のように生成されますので、.htpasswdファイルへコピーアンドペーストします。
▼.htpasswdファイルへ記入
saori:jCs1Pj/prD72I
IDとパスワードを記入したらサーバーの任意の場所へアップロードします。
3. .htaccessファイルへ必要事項を書き込む
wp-login.phpファイルの認証設定を以下のように、.htaccessファイルへ記入します。
<Files wp-login.php> AuthName "Input ID & Password" AuthType Basic AuthUserFile /home/www/◯◯◯/.htpasswd Require valid-user </Files>
AuthName の箇所は認証時に表示されるメッセージを入力します。
AuthUserFile の箇所は .htpasswd へのサーバー内でのフルパスを入力します。FTPソフトなどで確認できます。もしくは、サーバーの管理画面などで確認できると思います。
丁度今日コリスさんで紹介されていた、”.htaccessのリダイレクト関連を手軽に設定できるオンラインサービス -Free .htaccess Redirect Generator | コリス”こういったサービスを利用すると簡単にできますね。
.htaccessファイルへ必要事項を書き込んだら、サーバーのルートディレクトリへアップロードします。これで完了です。
ログイン画面(wp-login.php) へアクセスしようとすると、IDとパスワードを求められ入力しないと先へすすめません。これでログイン画面が守られるので安心です。
ダッシュボードにたどり着くまでに、2回パスワードを入力しなくてはいけないので、自分以外が管理している場合は相手によって面倒臭がられるかもしれないので積極的には勧められないですが、自分のサイトにはいいなぁと思いました。
Web + WP 初心者です。
Limit LA や IP 制限でこれまでしのいでいたのですが、3日程前から1日何十件もの”admin”でのロックアウトが発生するようになって困っていました。
先にたどり着いた他のブログを参考にBASIC認証を設定しようとしたこともありますが、なぜかうまくいかず。
祈るような気持ちでこちらの記事での設定方法を試してみました…ら、出来ました!!!
いまのところ正常作動しています。これでどれだけ不正アクセスが減るかは分かりませんが、二重ロックということでとりあえず気が休まりました。
丁寧でわかりやすい記事を、どうもありがとうございました。それだけ言いたくて。
WPでつまづいたら、またこちらに来ますね(*^^*)
コメント頂きとても嬉しいです!
こちらこそありがとうございます!!
この記事がお役にたったようでよかったです〜(^O^)