ホームページ >運用・保守 >Nginx >Nginx サーバーが IP と user_gent によってアクセスを制限する方法

Nginx サーバーが IP と user_gent によってアクセスを制限する方法

王林
王林転載
2023-06-04 21:40:031424ブラウズ

DDoS 攻撃は、大規模な Web サイトにアクセスするときによく発生する問題で、何者かがプログラムを通じてサイトの特定のページを悪意を持ってブラッシングし、サイトの応答を遅らせたり、直接サービスを拒否したりすることを指します。

この状況は、nginx のアクセス ログを分析することでわかります。同じ IP または user_agent を持つリクエストが多数存在します。これらのアクセス リクエストは、類似性に基づいて nginx レベルで直接フィルタリングできます。リクエスト。

ip によるアクセスの制限

nginx のアクセス制御モジュールの関連ドキュメント

アクセス制御は、deny 命令によってアクセスを拒否したり、アクセスを許可したりできます。許可命令を通じて。

拒否ルールと許可ルールが複数ある場合、該当ルールに一致した場合に飛び出します。

固定 IP を拒否します

deny 192.168.1.12;

IP ネットワーク セグメントを拒否します

deny 192.168.1.0/24;

イントラネット アクセスのみを許可します

allow 192.168.1.0/24;
deny all;

user_agent によるアクセスの制限

nginx には、user_agent に対する特定の制限命令がありません。user_agent には、nginx の $http_user_agent 変数を通じてアクセスできます。if 命令を使用して、 control user_agent. 通常のマッチングでは、一致したルールについてはアクセスを拒否するだけです。

nginx の if 命令は、書き換えモジュールで詳しく紹介されています

user_agent

if ($http_user_agent ~ "^apache.*java"){
  return 403;
}
を介して jmeter テスト ツールへのアクセスを制限する

以上がNginx サーバーが IP と user_gent によってアクセスを制限する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。