非常にシンプル: NGINX + Certbot + HTTP 基本認証の 1 つの条項の処理!

非常にシンプル: NGINX + Certbot + HTTP 基本認証の 1 つの条項の処理!

サートボットこれは、HTTP 基本認証を使用しているときに Certbot を使用して NGINX を設定するための簡単なチュートリアルです。

HBA は、次のようなパラメータを場所に設定した場合に表示されます。

       認証基本  「任意の名前」
       認証基本ユーザーファイル  /etc/nginx/path/to/my/password/file;

これを実行すると、サイトにアクセスしたときに次のようなプロンプトが表示されます。

HTTP 基本認証

パスワード ファイルを作成するには、httpasswd (Apache ツール - Debian では apache2-tools にあります) を使用できます。

HTTP Basic認証は、作業中のサイトへのアクセスを制限したり(あるいはサイトを永久に非公開にしておきたい場合)、非常に便利な方法です。多くのWebアプリにはログイン/認証機能があり、ユーザーベースを管理している場合は、当然のことながら、それに対応したシステムを使用する必要があります。しかし、サイトを「自分専用」で素早くアクセス制限したり、認証に時間と労力をかけたくないサイトをロックしたりする場合には、この認証は非常に有効です。

ただし、問題があります: Certbot の更新です。

Certbot は HTTP Basic 認証のユーザー名とパスワードを認識できないため、証明書の更新(または最初の証明書のプロビジョニング)に失敗します。HBA を無効にしてプロビジョニングまたは更新を行い、その後再度有効にするか、DNS などの別の種類のチャレンジを検討することもできます。ただし、ここでは設定して忘れてしまうような簡単な手順を紹介します。サイトの NGINX 設定ファイルでは、次のようになります。

   場所 /.well-known {
        自動インデックスオン;
        root /your/web/root/for/this/site;
        auth_basic オフ;
    }

これは、NGINXに、ディレクトリ.well-known(Certbotがチャレンジを実行する場所)がHTTPベーシック認証で保護されないことを指示するものです。他のディレクトリは保護されますが、このディレクトリだけが保護されず、Certbotは正常に動作します。

この方法は、完全な Web セットアップをスクリプト化できるため気に入っています。NGINX 構成ファイル/リンク/ユーザー ファイルを作成し、NGINX をリサイクルし、certbot を実行すると、サイトはすべて 1 つのスクリプトで準備完了になります。

楽しむ!

おすすめの記事