以前、Ubuntu サーバーを LAMP から LEMP に切り替えたため、Apache と Nginx の SSL 証明書の設定方法が異なるため、https サイトは一時停止する必要がありました。今日、Comodo Positive SSL 証明書を変更した後、https サイトは再びアクセスできるようになりました。ここでは、Nginx 環境で SSL 証明書を設定する方法について記録します。
- Comodo の管理画面から Comodo Positive SSL 証明書をダウンロードします。ダウンロードが完了したら、解凍されたフォルダには以下の証明書ファイルが含まれています。
www_lidaren_com.crt
COMODORSADomainValidationSecureServerCA.crt
COMODORSAAddTrustCA.crt
AddTrustExternalCARoot.crt
- CAT コマンドを使用してこれらの証明書ファイルを 1 つのファイルに結合します。notepad を使用する場合は、順番に追加することに注意してください。
cat ./www_lidaren_com.crt ./COMODORSADomainValidationSecureServerCA.crt ./COMODORSAAddTrustCA.crt ./AddTrustExternalCARoot.crt > www_lidaren_com_new.crt
- 証明書と以前に作成した CSR で生成された.key ファイルをサーバーにアップロードします。ここでは、証明書を以下の場所に配置しました。
/usr/share/nginx/certs
- 証明書と Key ファイルにシンボリックリンクを作成します(省略可能)。
ln -s /usr/share/nginx/certs/www_lidaren_com.crt /etc/ssl/certs/www_lidaren_com.crt
ln -s /usr/share/nginx/certs/www_lidaren_com.key /etc/ssl/private/www_lidaren_com.key
- Nginx のサイト情報を設定します。http の設定をコピーして追加または変更します。
server
{
listen 443;
server_name www.lidaren.com;
index index.php index.html index.htm ;
root /usr/share/nginx/html/;
ssl on;
ssl_certificate /etc/ssl/certs/www_lidaren_com.crt ;
ssl_certificate_key /etc/ssl/private/www_lidaren_com.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
ssl_prefer_server_ciphers on;
#
その他の設定は省略します
#
}
- Nginx の設定が正しいかどうかをテストします。
nginx -t
- Nginx サーバーを再起動し、SSL アクセスをテストします。
service nginx restart