WordPressサイトの.htaccessファイルに特定のIPアドレスからのアクセスを拒否する設定を記述する方法。
以下に、そのための機能(コード)と手順の備忘録です。
.htaccessによるIPアドレスアクセス拒否設定
特定のIPアドレスからのアクセスを拒否するには、WordPressのルートディレクトリにある.htaccess
ファイルに以下のコードを追記します。
単一のIPアドレスを拒否する場合
特定のIPアドレス(例:192.168.1.1
)からのアクセスを拒否するには、以下の記述を追加します。
<RequireAll>
Require all granted
Require not ip 192.168.1.1
</RequireAll>
または、古いApacheのバージョン(2.2以前)を使用している場合は、以下の形式で記述します。
Order allow,deny
Allow from all
Deny from 192.168.1.1
ポイント:
192.168.1.1
の部分を、実際にアクセスを拒否したいIPアドレスに書き換えてください。
複数のIPアドレスを拒否する場合
複数のIPアドレスをまとめて拒否することも可能です。IPアドレスをスペースで区切って記述します。
<RequireAll>
Require all granted
Require not ip 192.168.1.1 192.168.1.2 10.0.0.1
</RequireAll>
古いApacheバージョンの場合は、以下のように記述します。
Order allow,deny
Allow from all
Deny from 192.168.1.1 192.168.1.2 10.0.0.1
CIDR表記で範囲を指定して拒否する場合
特定の範囲のIPアドレス(例:192.168.1.0
から192.168.1.255
まで)をまとめて拒否したい場合は、CIDR表記が便利です。
<RequireAll>
Require all granted
Require not ip 192.168.1.0/24
</RequireAll>
古いApacheバージョンの場合は、以下のように記述します。
Order allow,deny
Allow from all
Deny from 192.168.1.0/24
47.79.xxx.xxx
のように特定の範囲のIPアドレスをまとめて拒否(ブロック)できます。
これは「CIDR表記」または省略形を使って、.htaccess
ファイルに記述します。
CIDR表記で範囲を指定する方法
47.79.xxx.xxx
の範囲は、47.79.0.0/16
と表現します。これは47.79.0.0
から47.79.255.255
までの約65,000個のIPアドレスすべてを意味します。
Apache 2.4以降の場合(推奨)
<RequireAll>
Require all granted
Require not ip 47.79.0.0/16
</RequireAll>
Apache 2.2以前の場合
Order allow,deny
Allow from all
Deny from 47.79.0.0/16
## 省略形で指定する方法 (Apache 2.2以前)
古いバージョンのApacheでは、IPアドレスの先頭部分だけを記述することで、その部分に一致するすべてのIPを拒否できます。こちらの方が直感的かもしれません。
Order allow,deny
Allow from all
Deny from 47.79.
ポイント:
- この記述で
47.79.
から始まるすべてのIPアドレスからのアクセスをブロックできます。
⚠️ ご注意
- .htaccessファイルを編集する前には、必ずバックアップを取ってください。 記述を間違えるとサイトが表示されなくなる可能性があります。
- この設定を行うと、そのIP範囲のユーザーはサイトのすべてのページにアクセスできなくなります。広範囲を指定する際はご注意ください。
📝 設定手順
- バックアップの取得:
.htaccess
ファイルを編集する前には、必ずファイルのバックアップを取ってください。設定を間違えるとサイトが表示されなくなる可能性があります。 - .htaccessファイルの場所: このファイルは、WordPressをインストールしたルートディレクトリ(
wp-config.php
やwp-content
フォルダがある場所)にあります。FTPクライアントやホスティングサービスのファイルマネージャで確認できます。- 注意:
.htaccess
は不可視ファイル(隠しファイル)の場合があります。ファイルが見つからない場合は、FTPクライアントやファイルマネージャの設定で「隠しファイルを表示する」を有効にしてください。
- 注意:
- コードの追記:
.htaccess
ファイルを開き、既存の記述(# BEGIN WordPress
から# END WordPress
まで)を変更せずに、その上か下に上記の拒否コードを追記します。一般的には、ファイルの先頭に記述することが推奨されます。 - 保存と確認: ファイルを保存した後、実際に拒否設定したIPアドレスからサイトにアクセスできなくなっているかを確認してください。また、それ以外のIPアドレスからは正常にアクセスできるかも確認しましょう。
プラグインを利用する方法
WP File Managerからhtaccessを編集
WP File Managerを使えばFTP接続なしに、WordPress管理画面から直接.htaccessを編集できます。
;htaccessを選択して右クリック
Editorをクリックします。
Editor(編集画面)が開くので.htaccessの最下部などにアクセス拒否のコードを記述(コピペ)します。
SAVE&CLOSEをクリックで保存されます。
プラグインで管理
.htaccess
ファイルを直接編集するのが不安な場合は、IPアドレスを管理画面から簡単に設定できるプラグインを利用するのも良い方法です。
- All In One WP Security & Firewall: セキュリティ全般を強化するプラグインですが、IPアドレスの拒否機能も含まれています。
- Wordfence Security: こちらも有名なセキュリティプラグインで、ファイアウォール機能の一部としてIPアドレスのブロックが可能です。
これらのプラグインを使えば、専門的な知識がなくても安全にアクセス制限を設定できます。
ご自身のスキルや運用方法に合わせて、最適な方法を選択してください。