WordPressで日本国内からのみ管理画面を閲覧できる設定

WordPressは一番利用されているCMSであるが故に、多くの攻撃の対象にもなっています。

ログを見ると海外からの不正アクセスが圧倒手に多かったので、日本からのみ管理画面にアクセスできるようにしました。

手順1: 日本で利用されているIPアドレスのリストを取得。

以下のサイトにアクセスし「.htccessをダウンロード」をクリック。

日本に割り当てられているIPアドレスをAPNICより取得して、日本国外(海外/外国)からのアクセスを制限する(禁止する).htaccessファイル又は一覧を作成します。

日本のIPアドレスが記載された「htaccess」ファイルを入手します。

作者様ありがとうございます!

手順2: htaccessをホスティングサーバへ転送

scpを用いて、ホスティングサーバへhtaccessファイルを転送します。

書式)

scp /tmp/htaccess user名@ホスト名:/tmp -P ポート番号 -i ~/.ssh/identity.pem

手順3: 既存のhtaccessへIPアドレスリストをマージ

htaccessは本日時点で4000行以上あるので、コピー&ペーストでは、情報が欠落する可能性があります。

リダイレクトの処理を用いて、既存の.htaccessへマージしました。

下準備:

3.1 まずは既存の.htaccessをバックアップ

cp .htaccess .htaccess.orig

3.2 日本のIPアドレスが記載されたファイルをわかり易い名前に変更

mv htaccess htaccess.japan

3.3 htaccess.japanの先頭と末尾に、以下の行を追加して、wp-login.phpにのみ設定を適用させる。

先頭に追加

<Files wp-login.php>
order deny,allow
deny from all


末尾に追加

</Files>

3.4 htaccess.japanを既存の.htaccessにマージ

cat htaccess.japan >> .htaccess

以上の操作で wp-login.phpファイルが日本からのみアクセス可能になり、セキュリティが少し向上します。

参考にさせていただきました。ありがとうございます。

WordPress のブルートフォースアタックは以前から問題になっており、管理しているサイトでもユーザー名とパスワードを工夫するなどの対策をしていました。