SSL/TLS を Nginx オンに設定する Ubuntu

Nginx on を使用して SSL/TLS を構成するには Ubuntu 、次の手順に従います。

ステップ 1: インストール Nginx

をインストールしていない場合は Nginx 、次のコマンドを実行してインストールします。

sudo apt update  
sudo apt install nginx

ステップ 2: OpenSSL をインストールする

OpenSSL がインストールされていない場合は、次のコマンドを使用してインストールします。

sudo apt install openssl

ステップ 3: SSL 証明書ファイル用のディレクトリを作成する

SSL 証明書ファイルを保存するディレクトリを作成します。

sudo mkdir /etc/nginx/ssl

ステップ 4: 自己署名 SSL/TLS 証明書を生成する(オプション)

認証局からの SSL 証明書を使用していない場合は、OpenSSL を使用して自己署名証明書を生成できます。 これは、開発環境で SSL/TLS をテストする場合に役立ちます。 自己署名証明書を作成するには、次のコマンドを実行します。

cd /etc/nginx/ssl  
sudo openssl genrsa -out server.key 2048  
sudo openssl req -new -key server.key -out server.csr  
sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt  

ステップ 5: Nginx SSL/TLS を使用するように構成する

Nginx 保護する Web サイトの構成ファイル を開きます。

sudo vi /etc/nginx/sites-available/your_domain

SSL を有効にするには、構成ファイルに次の行を追加します。

server {  
    listen 80;  
    server_name your_domain.com www.your_domain.com;  
    return 301 https://$host$request_uri;  
}  
  
server {  
    listen 443 ssl;  
    server_name your_domain.com www.your_domain.com;  
  
    ssl_certificate /etc/nginx/ssl/server.crt;  
    ssl_certificate_key /etc/nginx/ssl/server.key;  
  
    # Additional SSL/TLS options can be added here(optional)  
    ssl_protocols TLSv1.2 TLSv1.3;  
    ssl_prefer_server_ciphers on;  
    ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';  
      
    # Additional configurations(if needed)  
      
    location / {  
        # Reverse proxy configuration(if needed)  
    }  
}  

ステップ 6: 構成を有効にして再起動する Nginx

構成ファイルからシンボリック リンクを作成して、 sites-available 構成 sites-enabled を有効にします。

sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/

構成にエラーがないか確認します Nginx。

sudo nginx -t

エラーがない場合は、 Nginx サービスを再起動して新しい構成を適用します。

sudo systemctl restart nginx

完了すると、Web サイトは SSL/TLS で保護されます。 自己署名証明書を使用すると、信頼できない証明書に関するブラウザの警告が表示されることに注意してください。 信頼できる SSL/TLS 証明書を取得するには、認証局から無料の証明書を購入または取得する必要があります。