広告

WordPress管理画面に.htaccessでIPアドレス制限をかける

WEB
この記事は約3分で読めます。

個人的メモ

.htaccess の記述

WordPress の設置ディレクトリに置く!

例1

wp-admin 丸ごとなので注意

<FilesMatch "wp-login.php|wp-admin|xmlrpc.php">
  Order deny, allow
  Deny from all
  Allow from xxx.xxx.xxx.xxx
  Allow from xxx.xxx.xxx.xxx
  Allow from xxx.xxx.xxx.xxx
</FilesMatch>
<FilesMatch "wp-config.php">
  Order deny, allow
  Deny from all
</FilesMatch>

プラグインによっては、admin-ajax.phpにアクセスする必要があるので、下記を追加する

# Allow acces to wp-admin/admin-ajax.php
<Files admin-ajax.php>
Order allow,deny
Allow from all
Satisfy any
</Files>

 

例2 接続元ホスト名で制限する方法(例1が使えない時)

「HOSTNAME」の記入例
Allow from .ppp-bb.dion.ne.jp
「****.ppp-bb.dion.ne.jp」というホスト名のアクセスを許可します。
「KD111099219121.ppp-bb.dion.ne.jp」でも「KD132099219121.ppp-bb.dion.ne.jp」でも接続できる
Allow from .dion.ne.jp
「****.dion.ne.jp」というホスト名のアクセスを許可します。
<FilesMatch "wp-login.php|wp-admin|xmlrpc.php">
  Order deny, allow
  Deny from all
# 「****.ppp-bb.dion.ne.jp」というホスト名のアクセスを許可
  Allow from .ppp-bb.dion.ne.jp
# 「****.dion.ne.jp」というホスト名のアクセスを許可
  Allow from .dion.ne.jp
</FilesMatch>
<FilesMatch "wp-config.php">
Order deny, allow
Deny from all
</FilesMatch>
.htaccessファイル内の記述をコメントアウトするときは、#をつける

.htaccessファイル内の意味

Order deny, allow

deny(拒否)、allow(許可)の順番を指定する

deny from all

特定のホスト以外のアクセス全てを拒否

allow from

許可するホスト、IPを指定します。複数指定する場合は、1行ずつ指定します。

パーミッション

.htaccessのパーミッションは「604」に設定

wp-config.phpも忘れないで設定しておく

<FilesMatch "wp-config.php">
Order deny, allow
Deny from all
</FilesMatch>

基本は、全部アクセス拒否でOK