WordPressにBasic(Digest)認証を設定する方法

認証画面が表示されるとワクワクしてしまうリョウです。

人のアカウントを乗っ取ろうと考える者(ハッカー)は、様々な手段でIDとパスワードを突き止めてきます。

それはワードプレスにおいても同様です。

もしあなたがハッキングされたくないのであれば、より一層のセキュリティ強化が必要です。

今回はその中のひとつ、Basic(Digest)認証を設定する方法をご紹介します。

Basic認証、Digest認証とは何か?

”Basic認証”とはHTTPに備わっているユーザー認証方式の一つです。

”基本認証”とも呼ばれ、特定のページを見るのに、ユーザー名(ID)とパスワードを入力しなければ見られないようにする機能があります。

また、”Digest認証”では、ユーザー名とパスワードをハッシュ化(要約)するので、より強度の高いセキュリティ能力を発揮します。

Basic認証では、”.htpasswd”と”.htaccess”を組み合わせてアクセス制限を持たせます。
この二つのファイルは、サーバー上の同じ場所に設置して作動させます。

ちなみに、.htpasswdの方はファイル名を変えても大丈夫です。
注意点としては、二つとも拡張子を”.txt”(テキストファイル)にしてください。

Basic(Digest)認証の作成手順

Basic(Digest)認証には”.htpasswd”と”.htaccess”の二つのファイルを必要とします。

早速、それぞれの作成方法を見ていきましょう。
慣れれば2分もあれば全ての手順を完了できます。

.htpasswdファイルの作成

”.htpasswd”ファイルには認証時に必要な”ID”と”パスワード”を設定します。

こちらには任意のIDとパスワードを用いますが、そのままではなく、エンコードして暗号化したものを入力します。
暗号化することで、万が一人に見られても簡単には分からなくなります。

暗号化には以下のサイトが便利です。
http://www.luft.co.jp/cgi/htpasswd.php
http://www.luft.co.jp/cgi/htpasswd.php

試しに、
ID:kojin Password:kasegu
で暗号化したところ、↓のように変換されました。

kojin:xfcdmlcKH9mgc

ちなみに文字列は生成する度に変化しますがどれでも使用可です。

.htaccessファイルの作成

”.htaccess”ファイルには下記のコードを記述しましょう。
(.htaccessはサーバー上の動作を、.htaccessに記述した内容で制御することが可能なファイルです。)

※.htaccessが、「wp-login.php(ログイン画面)」と同じディレクトリ(階層)に既に存在している場合は、追記の形を取ります。

<Files wp-login.php>
AuthName "Input your ID and Password."
AuthType Basic
AuthUserFile /home/ドメイン名/フォルダ名/.htpasswd
Require valid-user 
</Files>

1行目、AurhNameはお好きな文章を記入しましょう(認証画面で表示されます)。

4行目、AuthUserFileの項目は、.htpasswdのアップロード先を記入します。

もしBasic認証ではなく、よりセキュリティの高い”Digest認証”にしたい場合は、3行目のAuthTypeを”Digest”と指定してください。

FTPソフトなどを使い、二つのファイルを同じディレクトリ(階層)上にアップロードすれば完了です。

アップロード後は、必ず問題なく動作するかを確認するようにしてください。

不具合が出た場合は、下記のコードを.htaccessに追記してください。

# Exclude the file upload and WP CRON scripts from authentication
<FilesMatch "(async-upload\.php|wp-cron\.php|xmlrpc\.php)$">
Satisfy Any
Order allow,deny
Allow from all
Deny from none
</FilesMatch>

それでも駄目だった場合は、アップロードした内容を削除して、今回の手順を全てリセットしてください。


以上、今回はワードプレスのログイン画面にBasic認証またはDigest認証を設定する方法でした。

通常であれば、前回紹介したIPアドレスでのアクセス制限で十分です。

ただ、念には念を入れてログイン画面を二重構造にしておくと良いかもしれませんよ。

それではまた!

コメントを残す

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