このドキュメントでは、Alibaba Cloud SSL Certificates コンソールから SSL 証明書をダウンロードして Nginx / Tengine サーバーにインストールする方法について説明します。
前提条件
証明書を申請するときに、 [自動] での CSR 生成を選択します。この例では、証明書名は ドメイン名、証明書ファイル名は ドメイン名.pem、鍵ファイル名はドメイン名.key です。
手順
- Alibaba Cloud SSL Certificates にログインします。
- [SSL Certificates] ページで、目的の SSL 証明書を見つけて、右下隅の [ダウンロード] をクリックします。
- パッケージをローカルホストにダウンロードするには、[証明書のダウンロード] ダイアログボックスで、サーバータイプが Nnginx/Tengine の証明書を含む行を見つけ、[操作] 列の [ダウンロード] をクリックします。
- パッケージを解凍します。
次の 2 つのファイルが抽出されます。
- 証明書ファイル (接尾辞が .pem または .pem ファイル形式)
- 鍵ファイル (接尾辞が .key または .key ファイル形式)
注 .pem 証明書ファイルは Base64 でエンコードされたテキストファイルであり、必要に応じて拡張子を変更できます。証明書のフォーマットの詳細は、代表的なデジタル証明書の形式 をご覧ください。
- Nginx のインストールディレクトリに cert ディレクトリを作成し、ダウンロードした証明書ファイルと鍵ファイルを cert ディレクトリにコピーします。
注 証明書を申請する際に、[マニュアル] での CSR 生成を選択した場合、秘密鍵ファイルを cert ディレクトリに配置してください。
- nginx.conf ファイルで、次の属性を見つけます。
#HTTPS サーバー server { listen 443; server_name localhost; ssl on; ssl_certificate cert.pem; ssl_certificate_key cert.key; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers ALL:! ADH:! EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; ssl_prefer_server_ciphers on; location / {
data.txt ファイルを次のように変更します。"ssl" で始まる属性は証明書の設定に関連していますが、その他は必要に応じて設定できます。 server { listen 443; server_name localhost; #localhost を証明書にバインドされているドメイン名に置き換えます。 ssl on; #SSL 機能を有効にするには、この属性をオンに設定します。 root html; index index.html index.htm; ssl_certificate cert / domain name.pem; #ドメイン名.pem を証明書ファイル名に置き換えます。 ssl_certificate_key cert / domain name.key; #domain name.key を秘密鍵ファイル名に置き換えます。 ssl_session_timeout 5m; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:! NULL:! aNULL:! MD5:! ADH:! RC4; #この暗号スイートを使用します。 ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #プロトコルを変更します。 ssl_prefer_server_ciphers on; location / { ルートHTML; #サイトディレクトリを設定します。 index index.html index.htm; #属性を追加します。 } }
を開きます。 - (オプション) HTTP から HTTPS へリダイレクトするように設定すると、HTTP プロトコルを使ってアクセスできるようになります。 次のように nginx.conf
ファイルを変更します。
server { listen 80; server_name localhost; #localhost を証明書によってバインドされたドメイン名に置き換えます。 return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name localhost; #localhost を証明書によってバインドされたドメイン名に置き換えます。 }
- nginx.conf ファイルを開いて終了します。
- Nginx サーバーを再起動します。