WordPressは一番利用されているCMSであり、多くの攻撃の対象にもなっています。
ログを見ると海外からの不正アクセスが圧倒的に多かったので、日本からのみ管理画面にアクセスできるようにしました。
ご注意:
今回の例では、クライアントにmacOSを用いて、ターミナルからコマンドによる作業を行いましたが、作業自体は「サーバの.htaccessに行を追記する」だけですので、WindowsとWinSCPなどでも同様のことができます。
手順1: 日本で利用されているIPアドレスのリストを取得。
以下のサイトにアクセスし「.htccessをダウンロード」をクリック。
日本のIPアドレスが記載された「htaccess」ファイルを入手します。
作者様ありがとうございます!
手順2: htaccessをホスティングサーバへ転送
scp等を用いて、ホスティングサーバへhtaccessファイルを転送します。
scpでのファイル転送の書式)
scp /tmp/htaccess user名@ホスト名:/tmp -P ポート番号 -i ~/.ssh/identity.pem
手順3: 既存のhtaccessへIPアドレスリストをマージ
htaccessは本日時点で4000行以上あるので、コピー&ペーストでは、情報が欠落する可能性があります。
Linuxのリダイレクトの処理を用いて、既存の.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ファイルが日本からのみアクセス可能になり、セキュリティが向上しました。
参考にさせていただきました。ありがとうございます。
この記事は「ConoHa WING」のサーバで検証しました。