WordPressの管理画面のセキュリティ対策は行ってますか?(WordPress以外もですが)
WordPressはデフォルトだと「ドメイン名/wp-admin/」と入力すると簡単にログイン画面に到達できてしまいます。
ログイン画面まで行ってしまえばブルートフォースアタックをされる確率が高まります。
ブルートフォースアタックをされるとサーバへ負荷が掛かったり、最悪パスワードを突破されて管理画面に入られてしまう可能性があります。

今回はベーシック認証で簡易にWordPressの管理画面を表示させなくする方法を紹介します。

ブルートフォースアタックってなに?

webアプリケーション等にパスワードを総当りで攻撃し、不正にログインすることです。
全てのパスワードを試すためサーバにも負荷がかかります。

今回はこれを防ぐためにベーシック認証で2重にパスワードを掛け、より安全性を高めます。

ベーシック認証を設定する

では早速ベーシック認証を設定していきましょう。
htpasswdを簡単に作成できるサービスがあるのでそちらを使っていきます。

設置場所

今回はWordPressの管理画面を想定しているので、「ドメイン名/wp-admin/」に設置します。
WordPressを設置している箇所に合わせて場所を確認して下さい。

htpasswdの作成

Webサービスで簡単にhtpasswdを作成してくれるサービスがあるので、そちらで作成します。
今回はこちらで作成しました。
使用するパスワードを入力するだけで、htpasswdを作成することができます。

【使用方法】
IDとパスワードを入れるだけです。
「htpasswd.txt」で保存します。

htaccessの作成

テキストエディタを開き、下記を入力します。

AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /フルパス/wp-admin/.htpasswd
require valid-user

フルパスの部分がもしわからない場合は、「フルパスを調べるのが面倒なのでPHPで取得してみる」でPHPでフルパスを確認する方法を紹介しているので確認してみて下さい。

「htaccess.txt」で保存します。

FTPでアップロード

最初に確認した「ドメイン名/wp-admin/」にアップロードします。
「htpasswd.txt」と「htaccess.txt」をサーバにアップロードして下さい。

名前変更

「htpasswd.txt」、「htaccess.txt」のままだと機能しないため、サーバ上で名前を変更します。
「.htpasswd」と「.htaccess」に名前をそれぞれ変更して下さい。

確認

管理しているWordPressの管理画面にログインしてみて下さい。
成功していれば、ログイン画面の前にベーシック認証が出てくるはずです。
設定したIDとパスワードを入力するとログイン画面が表示されるはずです!

以上!
お疲れ様でした!

関連記事