悪意のあるアクセスやクローラー攻撃を防ぐための Nginx アクセス制限構成

PHPz
リリース: 2023-07-04 10:25:12
オリジナル
2456 人が閲覧しました

悪意のあるアクセスとクローラー攻撃を防ぐための Nginx アクセス制限構成

はじめに:
今日のインターネット時代において、悪意のあるアクセスとクローラー攻撃は大きなセキュリティ脅威となっています。高性能 Web サーバーおよびリバース プロキシ サーバーとして、Nginx は一部の構成を通じてアクセスを制限し、Web サイトをこれらの攻撃から保護できます。この記事では、一般的に使用される Nginx のアクセス制限構成をコード例とともにいくつか紹介します。

1. IP ブラックリストとホワイトリストの制限

  1. IP ブラックリストの制限
    特定の IP アドレスへのアクセスを制限したい場合は、Nginx に付属の ngx_http_access_module モジュールを使用できます。 。
http { # 创建一个blacklist.conf文件来存储黑名单的IP地址 include blacklist.conf; server { location / { # 在这里设置黑名单的访问规则 deny 192.168.1.100; deny 192.168.1.0/24; deny 10.0.0.0/8; # 其他配置... } } }
ログイン後にコピー

上記の構成は単純かつ明確であり、location ブロックで直接拒否を使用して、指定した IP アドレスまたは IP アドレス範囲へのアクセスを拒否できます。

  1. IP ホワイトリストの制限
    IP ブラックリストとは逆に、特定の IP アドレスへのアクセスのみを許可し、他の IP アドレスを拒否したい場合は、allow コマンドを使用できます。
http { # 创建一个whitelist.conf文件来存储白名单的IP地址 include whitelist.conf; server { location / { # 在这里设置白名单的访问规则 allow 192.168.1.100; allow 192.168.1.0/24; allow 10.0.0.0/8; # 最后拒绝所有其他访问 deny all; # 其他配置... } } }
ログイン後にコピー

上記の設定では、allow コマンドを使用して、指定した IP アドレスまたは IP アドレス範囲へのアクセスを許可し、すべて拒否して他のすべての IP アドレスへのアクセスを拒否します。

2. ユーザー エージェントの制限
一部のクローラー攻撃は偽のユーザー エージェントを使用してアクセスするため、ユーザー エージェントを制限することでそのような攻撃を防ぐことができます。

http { server { location / { # 在这里设置拒绝某些特定User-Agent的访问 if ($http_user_agent ~* (curl|wget) ) { return 403; } # 其他配置... } } }
ログイン後にコピー

上記の設定では、if コマンドと正規表現を使用して特定のユーザー エージェントと一致させ、return コマンドを使用して 403 Forbidden を返します。
このようにして、curl や wget などのツールを使用して Web サイトにアクセスしようとするリクエストは拒否されます。

3. 頻度制限
DDoS 攻撃やブルート フォース クラッキングを防ぐために、アクセス頻度の制限を設定できます。

http { limit_req_zone $binary_remote_addr zone=one:10m rate=2r/s; server { location / { # 在这里设置访问频率限制 limit_req zone=one burst=10 nodelay; # 其他配置... } } }
ログイン後にコピー

上記の構成では、limit_req_zoneコマンドを使用してIPアドレスを格納するメモリ領域を作成し、名前は1つ、サイズは10m、アクセス頻度は2r/sに設定しています。次に、location ブロックで limit_req コマンドを使用して周波数を制限します。burst パラメータはアクセスが超過したときのバッファ サイズを示し、nolay はリクエストを直ちに処理する必要があることを示します。

概要:
IP ブラック/ホワイト リスト制限、ユーザー エージェント制限、および頻度制限の上記の設定例を通じて、悪意のあるアクセスとクローラ攻撃を効果的に防ぐことができます。もちろん、具体的な構成は実際のニーズに応じて調整できます。最後に、上記の内容が Nginx のアクセス制限設定に役立つことを願っています。

以上が悪意のあるアクセスやクローラー攻撃を防ぐための Nginx アクセス制限構成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!