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データ変換方法(必読)

推薦する

HTMLからPDFへの変換のための純粋なクライアント側と純粋なサーバー側の実装ソリューション

必要ユーザーがフォームに入力して「保存」をクリックすると、PDF ドキュメントを直接ダウンロードでき...

CSS3セレクターの新機能の実装

目次基本的なセレクタ拡張属性セレクタ疑似クラスと疑似要素セレクター基本的なセレクタ拡張1. 子要素セ...

Vue はファジークエリを実装します - MySQL データベースデータ

目次1. 需要2. 実装3. 結果1. 需要入力ボックスにデータを入力し、入力結果に基づいてデータベ...

Apache SkyWalking アラーム設定ガイドの詳細な説明

アパッチ スカイウォーキングApache SkyWalking は、マイクロサービス、クラウド ネイ...

nginx サーバーでの 502 不正なゲートウェイ エラーの原因のトラブルシューティング

パブリックアカウントのファンデータを同期してバッチプッシュするときに、サーバーがエラー502を報告し...

JS でオブジェクトを作成する 4 つの方法

目次1. リテラル値でオブジェクトを作成する2. 新しいキャラクターを使ってオブジェクトを作成する3...

よく使われるCSSカプセル化方法の概要

1. pc-reset PCスタイルの初期化 /* 正規化.css */ html{ 行の高さ: 1...

Vueはページdivボックスのドラッグアンドドロップソート機能を実装します

vue は、ページ上の div ボックスのドラッグ アンド ドロップ ソート機能を実装します。 序文...

HTMLウェブページのMETAタグのコンテンツを書く際のポイント

META タグは、HTML 言語のヘッダー領域にある補助タグです。作成者、日時、Web ページの説明...

CSS3 の新しいレイアウト: flex の詳細な説明

Flexの基本概念フレックス レイアウト (フレックスはフレキシブル ボックスの略)、エラスティック...

MySQLで数千万のテストデータを素早く作成する方法

述べる:この記事で扱うデータ量は 100 万です。数千万のデータが必要な場合は、量を増やすだけで済み...

XHTML 入門チュートリアル: XHTML Web ページ画像アプリケーション

<br />適度に画像を追加すると、Web ページがより美しくなります。 画像タグ &l...

Html、sHtml、XHtml の違いのまとめ

たとえば、<u>には終了文字がなく、ブラウザはそれを認識します。 SHTML は Ser...

ウェブデザイナーが注意すべき 43 のウェブデザインの間違い

これはウェブサイトのユーザビリティに関する記事です。著者は自身の経験に基づいて、ウェブサイトのデザイ...

Ubuntu 20.04の新バージョンでルートユーザーを使用してシステムにログインする方法の詳細なチュートリアル

Ubuntu 20.04 では、デフォルトで root ログインが有効になっていないため、デスクトッ...