Debian 12 で SSL 対応の Web サイトをホストするために Nginx をインストールする方法
1 min read

Debian 12 で SSL 対応の Web サイトをホストするために Nginx をインストールする方法

エンギンクス は非常に人気のある高性能ウェブサーバーであり、 リバースプロキシ、負荷分散、キャッシュなど、さまざまな機能があります。設定方法に応じて、リバースプロキシとしてだけでなく、ロードバランサーとしても機能します。 HTTP/HTTPS サーバー。

エンギンクス ウェブサーバーは、数千の同時接続を処理する驚異的な能力を備えており、これにより、世界で最も忙しいサイトの半分以上を稼働させている最速のウェブサーバーとなっています。これには以下が含まれます。 ネットフリックスダックダックゴー、 そして ドロップボックス ほんの一部を挙げると。

このチュートリアルでは、インストール手順を説明します。 エンギンクス 仮想ホストを使用して複数のドメインをホストする デビアン12 サーバ。

前提条件

始める前に、次の要件が満たされていることを確認してください。

  • Debian 12 サーバーのインスタンス。
  • 完全修飾ドメイン名完全修飾ドメイン名) がサーバーを指します。
  • このガイドでは、ドメイン tecmint.com を指して デビアン12 IPアドレスを持つシステム 192.168.122.27
  • 良好なインターネット接続。

ステップ1: Debian 12パッケージリポジトリを更新する

まず最初に、ローカルパッケージリポジトリを最新バージョンに更新する必要があります。これを行うには、次の通常のユーザーとしてログインします。 sudo 権限 以下のコマンドを実行します。

sudo apt update -y
Debian パッケージの更新
Debian パッケージの更新

ステップ2: Debian 12にNginxをインストールする

 

以来 エンギンクス Debianのリポジトリに存在する場合は、 apt パッケージ マネージャー Debian に付属しています。

sudo apt install nginx -y
DebianにNginxをインストールする
DebianにNginxをインストールする

エラーが発生しなかった場合は、 エンギンクス Web サーバーが正常にインストールされました。さらに設定を行う前に、Web サーバーの状態を確認することをお勧めします。

ステータスを確認するには エンギンクス、 実行する:

sudo systemctl status nginx

Web サーバーが稼働している場合は、以下の通知が表示されます。

Debian で Nginx のステータスを確認する
Debian で Nginx のステータスを確認する

Nginx Web サーバーを再起動する場合は、コマンドを実行します。

sudo systemctl restart nginx

Nginx を停止するには、コマンドを発行します。

sudo systemctl stop nginx

Web サーバーを起動するには、実行します。

sudo systemctl start nginx

起動時に Nginx Web サーバーを起動するように構成するには、実行します。

sudo systemctl enable nginx

ステップ3: ファイアウォールを設定してNginxポートを開く

エンギンクス 正常にインストールされ、実行されている場合は、特に外部ユーザーに対してサービスへのウェブアクセスを許可する必要があります。 UFWファイアウォールが有効、許可する必要があります ウェブ そして 翻訳 ファイアウォール経由でアクセスします。

これを実現するには、コマンドを実行します。

sudo ufw allow 'Nginx HTTP'

次に、変更を有効にするためにファイアウォールを再ロードします。

sudo ufw reload

これで、実行することで HTTP がファイアウォールを通過できることを確認できます。

sudo ufw status
Nginx ポートを開く
Nginx ポートを開く

上記の抜粋から、 Nginx HTTP 許可されている UFW ファイアウォール

ステップ4: Nginx Webサーバーへのアクセス

ここまで基本的な設定を行ってきましたが、 エンギンクス 起動して実行します。Web ブラウザ経由で Web サーバーにアクセスするには、次に示すようにサーバーの IP アドレスを参照します。

http://server-IP-address 
OR  
http://server-domain-name
Nginx ページを確認する
Nginx ページを確認する

これは、 エンギンクス 稼働中です。

ステップ 5: Debian 12 で Nginx サーバー ブロックを構成する

これはオプションのステップであり、複数のドメインを1つのサーバーでホストしたい場合に便利です。 エンギンクス Web サーバー。これを機能させるには、Debian サーバーを指すドメイン名が必要です。

このセクションではドメイン名を使用します tecmint.com だれの A レコードはサーバーのIPを指しています 192.168.122.27

ドメイン名をサーバーの IP アドレスにポイントすると、ドメイン名はすぐに変更され、次のように Web サーバーを指すようになります。

ドメインでNginxページを確認する
ドメインでNginxページを確認する

それでは、サーバー ブロックを作成しましょう。

まず、図のようにドメイン用のディレクトリを作成しましょう。

sudo mkdir -p /var/www/html/tecmint.com

次に、図に示すように必要なファイルの所有権を割り当てます。

sudo chown -R $USER:$USER /var/www/html/tecmint.com

次に、図に示すように、グループとパブリック ユーザーに読み取り権限と実行権限を割り当てます。

sudo chmod -R 755 /var/www/html/tecmint.com

では、簡単な index.html サンプルウェブページ vim テキストエディタ。

sudo vim /var/www/html/tecmint.com/index.html

ファイルにサンプルコンテンツをいくつか追加します。これはブラウザに表示されます。

<html>
    <head>
        <title>Welcome to TecMint</title>
    </head>
    <body>
        <h1>Success! Welcome to your new server block on Tecmint Nginx Web Server !</h1>
    </body>
</html>

保存してエディターを終了する

このコンテンツを提供するには、サーバー ブロックを作成する必要があります。

サーバーブロックを作成しましょう

sudo vim /etc/nginx/sites-available/tecmint.com

次の内容をコピーして、サーバー ブロック ファイルに貼り付けます。

server {
        listen 80;
        listen [::]:80;

        root /var/www/html/tecmint.com;
        index index.html index.htm index.nginx-debian.html;

        server_name tecmint.com www.tecmint.com;

        location / {
                try_files $uri $uri/ =404;
        }
}

ドメイン名を必ず更新してください techmint.com について 独自のドメイン名を使用します。

サーバー ブロック ファイルをアクティブ化または有効にするには、次のようにシンボリック リンクを作成します。

sudo ln -s /etc/nginx/sites-available/tecmint.com /etc/nginx/sites-enabled/

Nginx のすべての設定が正しく構成されていることを確認するには、実行します。

sudo nginx -t

準備完了です! 最後に、Nginx を再起動します。

sudo systemctl restart nginx

ブラウザを開いて更新し、すべてがうまくいけば、ブラウザは次のようにサーバー ブロックの Web ページを提供するはずです。

Debian 12 で Nginx サーバー ブロックの Web サイトを確認する
Debian 12 で Nginx サーバー ブロックの Web サイトを確認する

ステップ 6: Nginx で Let’s Encrypt を使用して HTTPS/SSL を有効にする

有効にする 翻訳 の上 エンギンクスをインストールする必要があります サートボット Let’s Encrypt からドメインの無料 SSL 証明書を自動的にダウンロードするツール。

sudo apt install certbot python3-certbot-nginx -y

走る サートボット 証明書を取得して自動的に構成する エンギンクス それを使用する。

sudo certbot --nginx -d tecmint.com -d www.tecmint.com

Certbot should automatically configure your virtual host to use SSL for your domain.

Open a web browser and navigate to your domain, you should see the sample page you created earlier, and the connection should be secure with HTTPS.

ステップ7: NginxのSSL証明書を自動的に更新する

Let’s Encrypt 証明書の有効期間は 90 日間なので、cron ジョブによる自動更新を設定することが重要です。

sudo crontab -e

crontab に次の行を追加します。

0 0 * * 0 /usr/bin/certbot renew --quiet

これにより、SSL 証明書が毎週自動的に更新され、90 日間の有効期限が切れる前に確実に更新されるようになります。

結論

このガイドでは、インストール方法を学びました エンギンクス あなたの デビアン12 インスタンスを作成し、追加のドメインをサポートするようにさらに構成します。このガイドが参考になれば幸いです。フィードバックをお待ちしています。

Hope this help!

Source link

Leave a Reply

Your email address will not be published. Required fields are marked *