Nginxのアクセス制限設定の詳細な説明

Nginxのアクセス制限設定の詳細な説明

Nginxのアクセス制限設定とは

Nginx のアクセス制限は、IP ベースのアクセス制御とユーザーベースの信頼できるログイン制御の 2 つの側面に基づいています。

以下では、これら2つの方法を1つずつ紹介します。

IP ベースのアクセス制御の概要:

IPベースのアクセス制御を設定して、特定のIPにアクセスを許可したり、アクセスできないIPを制限したりできます。

これはアクセスを許可する設定方法です

設定構文: allow address | CIDR | unix | all;

デフォルト設定: 設定なし

構成パス: http、server、location、limit_except;

これはアクセスを許可しない構成です

メソッド設定構文: deny address | CIDR | unix | all;

デフォルト設定: 設定なし

構成パス: http、server、location、limit_except;

IPアクセス制限に基づくテスト

1. ローカル IP アドレスを確認します。パブリック ネットワークの場合は、ip138 ネットワークに移動して確認します。テストの場合は、cmd を使用して確認します。

2. /opt/app/code/ディレクトリにadmin.htmlファイルを追加します。このファイルには、背景色付きの通常の管理ページが含まれています。

3. /etc/nginx/conf.d/ディレクトリで、default.confファイルを変更し、次の内容を追加します。


上図からわかるように、admin.html に合わせて場所が追加され、IP 制限に基づく設定が設定され、192.xx.xx.xx からのアクセスが制限され、他のユーザからのアクセスが可能になります。

4. nginxをリロードする

5. ブラウザにURLを入力してログを確認する



6. 上の図から、特定の IP のアクセス制限が実現されていることがわかります。特定の IP のみにアクセスを許可する場合は、キーワードを変更するだけで済みます。

例:

1. サーバーのグローバルIP制限

#vi nginx.conf
  allow 10.115.0.116; #許可されたIP
  すべてを否定する;

2. サイト制限IP

#vi vhosts.conf
サイトグローバル限定IP:
位置 / {
  インデックス index.html index.htm index.php;
  10.115.0.116 を許可します。
  すべてを否定する;

サイトディレクトリの制限

場所 ^~ /test/ {
  10.115.0.116 を許可します。
  すべてを否定する;

ログインしたユーザーの信頼に基づくアクセス制御

たとえば、Apache 情報にアクセスすると、アクセス前の検証を実行するためにユーザー パスワード ボックスのプロンプトがポップアップ表示されます。

設定構文: auth_basic string | off;

デフォルト設定: auth_basic オフ;

構成パス: http、server、location、limit_except;

構成構文と一致します: auth_basic_user_file filePath;

デフォルト設定に一致: 設定なし

構成パスを一致させます: http、server、location、limit_except;

1. アイデンティティファイル、auth_confファイルを追加する必要があります。ここではhtpasswdツールを使用します。

コマンド htpasswd -c ./auth_conf root を使用します。

説明: htpasswd コマンド -c: デフォルトでは MD5 暗号化が使用され、./auth_conf は指定されたパスとファイル、root はユーザー名です

入力後、パスワードを2回入力するよう求められます。


2. default.conf設定ファイルを修正し、内容を次のように変更します。


3. nginxをリロードする

4. URL を入力して結果を確認します。アクセスするには ID 情報を入力する必要があることがわかります。


以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • マルチポートおよびマルチドメイン名アクセスのNginx構成の実装
  • nginx での tp5 の設定アクセスを変更する問題を解決する
  • 同じ IP のアクセス頻度を制限するように nginx を設定する方法
  • nginx ssl を設定して https アクセスを実装する手順 (初心者向け)
  • 異なるドメイン名への PC または携帯電話のアクセスを区別するように Nginx を構成する方法
  • SSL モジュール構成を使用して HTTPS アクセスをサポートする nginx の詳細な説明
  • nginx を使用して wgcloud へのアクセスを構成する方法

<<:  vue-router を遅延ロードする 3 つの方法のまとめ

>>:  MySQL NULLデータ変換方法(必読)

推薦する

擬似分散グラフィックを実現するための VMware 構成 Hadoop チュートリアル

1. 実験環境シリアルナンバープロジェクトソフトウェアとバージョン1オペレーティング·システムCen...

Dockerのデフォルトネットワークセグメントの正しい変更手順

背景同僚がセキュリティ プロジェクトに取り組んでおり、AWS サーバーに秘密兵器を展開する必要があり...

JSはカリキュラムタイムテーブルアプレット(スーパーカリキュラムタイムテーブルを模倣)を実装し、カスタムバックグラウンド機能を追加します

概要:市販されているいくつかのタイムテーブルソフトウェアから教訓を得ました。機能が複雑すぎるため、タ...

Vue-cliはプロジェクトを作成し、プロジェクト構造を分析します

目次1. ディレクトリを入力してプロジェクトを作成する2. 必要な設定項目を選択します2.1 Vue...

Linux システムに Zookeeper サービスをインストールする方法

1. /usr/local/services/zookeeper フォルダを作成します。 mkdir...

ubuntu20.04 LTSにdockerをインストールする方法

ゼロ: 古いバージョンをアンインストールするDocker の古いバージョンは、docker、dock...

Centos7.X Linux システムに tomcat8 をインストールするためのグラフィック チュートリアル

1. Tomcatのインストールパスを作成する mkdir /usr/local/tomcat 2....

Vue ページでよりエレガントに画像を紹介する方法

目次エラーのデモンストレーション計算により画像が変わらない場合は直接インポートするCSS変数による画...

CSS3でよく使われるスタイルの詳しい解説[基本的なテキストとフォントのスタイル]

概要: Web ページをより美しく見せるために、ここでは CSS3 でよく使用されるスタイルをいくつ...

jsはショッピングウェブサイトの商品の拡大鏡効果を実現します

この記事では、ショッピングサイトの商品の拡大鏡効果を実現するためのjsの具体的なコードを紹介します。...

自動ロック画面機能を実現するjs

1. 使用シナリオこのような要件があるため、システムが開発されました。ユーザーがデスクトップを離れ...

あるテーブルからバッチデータをクエリし、それを別のテーブルに挿入する MySQL の完全な例

事前に言っておくNodejs はデータベースを非同期操作として読み取るため、データベースがデータを読...

コードレイン効果を実現するJavaScriptキャンバス

この記事では、コードレイン効果を実現するためのキャンバスの具体的なコードを参考までに共有します。具体...

MySQL でコミットされていないトランザクション情報を見つける方法

少し前に、「ORACLE でコミットされていないトランザクションの SQL ステートメントを見つける...