検索
ホームページ運用・保守NginxNginx リバースプロキシの URI ベースの ACL 構成

Nginx リバースプロキシの URI ベースの ACL 構成

Jun 10, 2023 am 10:42 AM
nginxリバースプロキシACL設定

Nginx は、多数の同時リクエストを簡単に処理できるオープンソースの高性能 Web サーバーおよびリバース プロキシ サーバーです。 Nginx にはさまざまな機能モジュールが統合されていますが、その中でも ACL (Access Control List) は重要な設定方法です。 ACL を使用すると、管理者はどのユーザーまたは IP アドレスが Nginx サーバーにアクセスできるかを制御できるため、Web サーバーのセキュリティと信頼性が向上します。この記事では、Nginx リバース プロキシの ACL 構成を使用して、URI に基づいてアクセス許可を制御する方法を紹介します。

  1. ACL とは何ですか?

ACL、正式名アクセス コントロール リスト、中国語名アクセス コントロール リストは、アクセス権を制御する技術的手段です。特定のユーザーまたは IP アドレスへのアクセスを許可または拒否することで、Web サーバーを悪意のある攻撃から保護します。

Nginx で ACL を実装するには 2 つの方法があります。1 つは IP アドレスに基づく ACL、もう 1 つは URI に基づく ACL です。この記事では、URI ベースの ACL に焦点を当てます。

  1. URI ベースの ACL 構成

URI ベースの ACL は、アクセス許可を制御する比較的一般的で柔軟な手段です。要求された URI をフィルタリングすることにより、ユーザーのアクセス権をカテゴリごとに制御できます。

具体的な例を見てみましょう。 Web アプリケーションに 2 つのモジュールがあり、1 つはバックグラウンド管理モジュール、もう 1 つはフロントエンド ユーザー モジュールであるとします。これら 2 つのモジュールのアクセス URI は異なります。

Nginx の ACL 機能を使用してリバース プロキシ モジュールと連携し、これら 2 つのモジュールへのアクセス制御を実現できます。まず、次の ACL ルールを Nginx 構成ファイルに追加する必要があります:

location / {

proxy_pass http://backend;
allow 192.168.1.0/24; # 允许192.168.1.0/24网段的访问
deny all; # 拒绝其他所有IP地址的访问

}

location /admin {

proxy_pass http://backend;
allow 192.168.1.10; # 允许指定IP地址的访问
deny all; # 拒绝其他所有IP地址的访问

}

上記の構成では、すべての URI と /admin URI に異なる ACL ルールを設定します。すべての URI について、192.168.1.0/24 ネットワーク セグメント内の IP アドレスのみにアクセスが許可されます。 /admin URI の場合、指定された IP アドレスのみへのアクセスが許可され、他の IP アドレスは拒否されます。

ACL ルールの順序は非常に重要であることに注意してください。 Nginx は最初に最長の URI を照合し、照合に成功すると、その URI に対応する ACL ルールが使用されます。 URI が複数の ACL ルールに一致する場合、最初に一致した ACL ルールが使用されます。

  1. 正規表現ベースの ACL 構成

URI ベースの ACL 構成に加えて、Nginx は正規表現ベースの ACL 構成もサポートしています。この方法はより柔軟で、さまざまなニーズに応じてカスタマイズできます。

例を見てみましょう。 /api で始まるすべての URI へのアクセスを制御する必要があるとします。次の ACL 設定を使用できます:

location ~ ^/api/(.*)$ {

proxy_pass http://backend;
allow 192.168.1.0/24; # 允许192.168.1.0/24网段的访问
deny all; # 拒绝其他所有IP地址的访问

}

上記の構成では、正規表現を使用して /api で始まるすべての URI と一致し、対応する ACL ルールを設定します。

ACL 設定に正規表現を使用すると、パフォーマンスのオーバーヘッドが発生する可能性があることに注意してください。したがって、可能な限り URI ベースの ACL 構成を使用することをお勧めします。

  1. 概要

ACL は、Nginx リバース プロキシでアクセス許可を制御する非常に重要な手段です。 URI ベースの ACL 構成では、URI ごとに異なるアクセス許可を設定できます。正規表現に基づく ACL 構成はより柔軟であり、さまざまなニーズに応じてカスタマイズできます。さまざまなアプリケーション シナリオに応じて、さまざまな ACL 構成方法を選択できます。同時に、パフォーマンスを向上させるために、ACL 設定に複雑な正規表現の使用を避けるように努める必要があります。

以上がNginx リバースプロキシの URI ベースの ACL 構成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
NGINX:最新のWebアプリケーション用の汎用ツールNGINX:最新のWebアプリケーション用の汎用ツールApr 11, 2025 am 12:03 AM

nginxisentialformodernwebapplicationsdueToitsRolesasareverseproxy、loadbalancer、andwebserver、weberporformanceandscalability.1)itactsasaReverseproxy、拡張、およびパフォーマンスを強化し、パフォーマンスを強化し、積極的に積極的なものを増やします

nginx SSL/TLS構成:HTTPSでWebサイトを保護しますnginx SSL/TLS構成:HTTPSでWebサイトを保護しますApr 10, 2025 am 09:38 AM

NGINXを通じてWebサイトのセキュリティを確保するには、次の手順が必要です。1。基本的な構成を作成し、SSL証明書と秘密鍵を指定します。 2。構成を最適化し、HTTP/2を有効にし、OCSPSTAPLING。 3.証明書パスや暗号化スイートの問題などの一般的なエラーをデバッグします。 4。let'sencryptの使用やセッションの多重化など、アプリケーションのパフォーマンス最適化の提案。

Nginxインタビューの質問:DevOps/System管理インタビューをAceNginxインタビューの質問:DevOps/System管理インタビューをAceApr 09, 2025 am 12:14 AM

Nginxは、高性能のHTTPおよびリバースプロキシサーバーであり、高い並行接続の取り扱いに優れています。 1)基本的な構成:ポートを聞いて静的ファイルサービスを提供します。 2)高度な構成:逆プロキシとロードバランシングを実装します。 3)デバッグスキル:エラーログを確認し、構成ファイルをテストします。 4)パフォーマンスの最適化:GZIP圧縮を有効にし、キャッシュポリシーを調整します。

nginxキャッシュテクニック:ウェブサイトのパフォーマンスの向上nginxキャッシュテクニック:ウェブサイトのパフォーマンスの向上Apr 08, 2025 am 12:18 AM

Nginxキャッシュは、次の手順を通じてWebサイトのパフォーマンスを大幅に改善できます。1)キャッシュ領域を定義し、キャッシュパスを設定します。 2)キャッシュ有効期間を構成します。 3)異なるコンテンツに従って異なるキャッシュポリシーを設定します。 4)キャッシュストレージと負荷分散を最適化します。 5)キャッシュ効果を監視およびデバッグします。これらの方法により、Nginxキャッシュはバックエンドサーバーの圧力を軽減し、応答速度とユーザーエクスペリエンスを向上させることができます。

Dockerを使用したNginx:コンテナ化されたアプリケーションの展開とスケーリングDockerを使用したNginx:コンテナ化されたアプリケーションの展開とスケーリングApr 07, 2025 am 12:08 AM

DockerComposeを使用すると、Nginxの展開と管理が簡素化され、DockerswarmまたはKubernetesをスケーリングすることは一般的な慣行です。 1)DockerComposeを使用してNginxコンテナを定義および実行する、2)DockerswarmまたはKubernetesを介してクラスター管理と自動スケーリングを実装します。

Advanced Nginx構成:マスタリングサーバーブロックとリバースプロキシAdvanced Nginx構成:マスタリングサーバーブロックとリバースプロキシApr 06, 2025 am 12:05 AM

nginxの高度な構成は、サーバーブロックとリバースプロキシを介して実装できます。1。サーバーブロックにより、複数のWebサイトを1つの場合に実行することができます。各ブロックは個別に構成されます。 2.逆プロキシは、リクエストをバックエンドサーバーに転送して、負荷分散とキャッシュアクセラレーションを実現します。

nginxパフォーマンスチューニング:速度と低レイテンシの最適化nginxパフォーマンスチューニング:速度と低レイテンシの最適化Apr 05, 2025 am 12:08 AM

NGINXのパフォーマンスチューニングは、ワーカープロセスの数、接続プールサイズの数、GZIP圧縮とHTTP/2プロトコルの有効化、およびキャッシュとロードバランスを使用することで実現できます。 1.ワーカープロセスの数と接続プールサイズを調整します:worker_processesauto;イベント{worker_connections1024;}。 2。GZIP圧縮とhttp/2プロトコルを有効にします:http {gzipon; server {risten43sslhttp2;}}。 3。キャッシュ最適化:http {proxy_cache_path/path/to/cachelevels = 1:2k

Nginxセキュリティ硬化:Webサーバーを攻撃から保護しますNginxセキュリティ硬化:Webサーバーを攻撃から保護しますApr 04, 2025 am 12:06 AM

NGINXセキュリティの強化は、次の手順を通じて達成できます。1)すべてのトラフィックがHTTPSを介して送信されることを確認する、2)HTTPヘッダーを構成してコミュニケーションセキュリティを強化するように設定します。これらの測定は、Nginxサーバーのセキュリティを効果的に改善できます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。