2026年10月5日

2026年10月5日

NginxでIPアドレスのアクセス制限を設定する方法

ステップ1: Nginxのアクセス制限設定ファイルを開く

まず、NginxでIPアドレスのアクセス制限を設定するためには、/etc/nginx/nginx.conf または個別のサーバーブロックファイル(例:/etc/nginx/conf.d/example.com.conf)にアクセス制限を適用するルールを追加します。このファイルを開き、必要な設定を行います。

# Nginxの設定ファイルを開く
sudo nano /etc/nginx/conf.d/example.com.conf

ステップ2: IPアドレスのブロック設定

特定のIPアドレスからのアクセスをブロックするためには、deny キーワードを使用します。複数のIPアドレスや範囲をブロックしたい場合は、deny を繰り返し使用します。

# 特定のIPアドレスをブロックする例
location / {
    deny 192.0.2.1;
    deny 198.51.100.0/24;  # IP範囲をブロックする例
}

ステップ3: 白名单設定

特定のIPアドレスからのみアクセスを許可するためには、allow キーワードを使用します。これにより、他の全てのIPアドレスからアクセスが禁止されます。

# 特定のIPアドレスからのみアクセスを許可する例
location / {
    allow 192.0.2.2;
    deny all;  # ここでdeny allを使って全てのIPアドレスからのアクセスをブロックします
}

ステップ4: 設定適用とテスト

設定が完了したら、Nginxで変更を検証し、必要な場合は再起動します。

# Nginxの構成ファイルをチェック
sudo nginx -t

# 構成ファイルに問題がない場合、Nginxを再起動する
sudo systemctl restart nginx

注意事項

  • セキュリティ上の注意: IPアドレスをブロックする際は、必要な範囲を正確に指定することが重要です。無駄なIPアドレスがブロックされると、誤って重要なアクセスが制限されることもあります。
  • パフォーマンス/運用上の注意: 大量のIPアドレスやIP範囲を制限する場合、Nginxサーバーの負荷が高くなる可能性があります。適切な設定を行うことで、セキュリティとパフォーマンスのバランスを取ることが求められます。

まとめ

1. アクセス制限を適用するファイルを開く: Nginxの設定ファイル(/etc/nginx/conf.d/example.com.conf)を開きます。

2. 特定IPアドレスのブロック: deny キーワードを使用して、特定のIPアドレスや範囲からアクセスを禁止します。

3. 白名单設定: 一部のIPアドレスからのみアクセスを許可するために allow キーワードを使用します。

4. 設定適用とテスト: 構成ファイルをチェックし、Nginxを再起動して新しい設定を適用します。

この手順を踏むことで、Nginxサーバーから特定のIPアドレスへのアクセス制限を効果的に設けることができます。

お気軽にご相談ください

お見積りへ お問い合わせへ
▲