WordPressのログイン画面のセキュリティ対策は大丈夫?【Basic認証を設定しよう】

2020年5月22日

当サイトはアフィリエイト広告を利用しています。

WordPressのインストールが終わったら、やっておきたいセキュリティ対策が「Wordpressログイン画面のBasic認証(ベーシック認証)」です。

WordPressのログイン画面は、誰でものぞくことができます。

特に何もしていない場合は、ドメイン名とファイル名で固定URLになっているからです。

https://ドメイン名/wp-login.php

あくまでログイン画面の表示だけで、実際に管理画面にログインするには「ユーザー名またはメールアドレス」と「パスワード」が必要です。

でも、ログイン画面が誰にでもアクセスできる状態はセキュリティ的にもよくありません。

誰かに勝手にサイトをのぞかれる感じがして怖い・・・
特に収益化ができているブログを乗っ取られでもしたら・・・

WordPressのログイン画面のセキュリティ対策として、簡単にできる方法があります。

それが、「Basic認証」でアクセス制限する方法です。

WordPressでBasic認証を設定すると、下記のような画面が表示されて、「Wordpressのログイン画面」自体にアクセスできないように制限をかけることができます。

以下からWordpressのログイン画面に、Basic認証をかける方法を紹介していきます。

Basic認証だと一つ問題点があり、パスワード付きのページを生成すると、パスワードを入力した後に認証が必要になってしまいます。

そういう場合は、ワードプレスプラグインの「WPS Hide Login」がおすすめです。

WordPressのログイン画面にBasic認証を設定する

WordPressにBasic認証を設定には「.htaccess」と「.htpasswd」の2つのファイルを、Wordpressのあるフォルダにアップロードして認証をかけます。
※FTPを使ってサーバーにアップします。

「.htaccess」はサーバーを制御するためのファイルで、「.htpasswd」は認証するためのパスワードが書かれているファイルです。

それぞれのファイルに書く内容について説明していきます。

「.htaccess」の内容

「.htaccess」ファイルは、Wordpressにすでにファイルが存在するので、そのファイルを修正します。

既存の「.htaccess」ファイルは、「wp-admin」フォルダ、「wp-content」フォルダ、「wp-includes」フォルダと同じところにあります。
※Wordpressをインストールしたフォルダ

「.htaccess」ファイルをテキストエディターで開いて、すでにコードが書かれていたら、そこはいじらずに、その下に下記のコード追加します。

<Files wp-login.php>
AuthType Basic
AuthName "Input your ID and Password."
AuthUserFile /(.htpasswdのあるフォルダを絶対パスを使って指定)/.htpasswd
require valid-user
</Files>

<Files ~ "^.(htpasswd|htaccess)$">
  deny from all
</Files>

上記の「AuthUserFile」の部分は、.htpasswdファイルのある場所を、「絶対パス」を使って指定します。
※絶対パスは、使っているサーバーによって違います。
※基本的にFTPのルートパスとは別です。その上に階層があります。

コアサーバーの場合は、「/virtual/アカウント名/」が絶対パスの指定になり、「AuthUserFile」で指定するパスは下記のようになります。

/virtual/アカウント名/public_html/wordpressをインストールしたフォルダ/.htpasswd

「.htpasswd」の内容

次に、「.htpasswd」ファイルを新規で作成します。

「.htpasswd」には、「ユーザー名」と「パスワード」を暗号化したものを書きます。暗号化は下記のサイトを利用すると便利です。

ユーザー名とパスワードを暗号化するツール
.htaccessによる認証用パスワード暗号化ツール
※パスワードを生成するだけなので、危ないサイトではありません。

入力フォームにある「ID(ユーザー名)」と「Password」を入力して、「生成」ボタンを押すと、入力したものを暗号化して生成してくれます。
※「ID(ユーザー名)」と「Password」はメモしておきましょう。認証する時に必要になります。

生成されたテキスト(暗号化された文字)をそのまま「.htpasswd」ファイルに貼り付けます。

(例)IDに「basicninsho2020」、Passwordに「koregapasuwado」を入力して変換すると下記のようになります。
basicninsho2020:uZ2i8We0dmWOg

「.htaccess」と「.htpasswd」をサーバーにアップする

どちらのファイルも「.htaccess」があったフォルダに、FTPでアップロードします。

Basic認証ができているかどうか、ログイン画面にアクセスして確認します。

「ユーザー名」と「パスワード」を入力するBasic認証画面が表示されて、設定したIDとパスワードを入力すると、ログイン画面が開くかどうかを確認します。

成功したら、他の部分が間違ってアクセス制限されていないか、自分のサイトも確認しておきましょう。

まとめ

以上、Basic認証を設定をつかって、Wordpressのログイン画面のセキュリティ対策を行う方法でした。

ログイン画面が誰にでもアクセスできる状態は、好ましくないのでしっかりセキュリティ対策をしておきましょう。

Stories - jp.freepik.com によって作成された security ベクトル

-ワードプレス
-,