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

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

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

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

sudo yum install nginx

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

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

sudo yum 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/conf.d/your_domain.conf

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

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

sudo nginx -t

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

sudo systemctl restart nginx

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