nginx:SSLサーバ証明書の設定[スタンダード]

設定するFQDN(コモンネーム)が1つであるスタンダードタイプのSSLサーバ証明書の設定手順をご案内します。

1枚のSSLサーバ証明書を複数のサイトで利用するマルチタイプのSSLサーバ証明書を設定は以下のページをご覧ください。

nginx:SSLサーバ証明書の設定[ワイルドカード・マルチドメインタイプ]

構成例

秘密鍵の保存ディレクトリ /etc/pki/tls/private/
証明書を保存するディレクトリ /etc/pki/tls/certs/
SSLの設定ファイル /etc/nginx/conf.d/ssl.conf

※nginxのバージョンや環境によってパスやディレクトリ名、ファイル名などが異なる場合があります。お客様の環境に合わせて設定してください。

設定手順

  1. 送付したSSLサーバ証明書と中間証明書を、SSLサーバ証明書の保存ディレクトリに保存してください。

    ※稼働中のSSLサーバ証明書がある場合は、設定済みのSSLサーバ証明書及び秘密鍵を上書きしないようご注意ください。

  2. サーバにログインして/etc/pki/tls/に移動してください。
    # cd /etc/pki/tls/
  3. SSLサーバ証明書と中間証明書を結合してください。
    #cat SSLサーバ証明書ファイル 中間証明書ファイル > 新しい結合ファイル
    #cat certs/example_com.crt certs/example_com.ca-bundle > certs/example_com_combined.crt

    ※ 結合済みの場合は、この項目をスキップしてください。

  4. 結合したSSLサーバ証明書を、root権限のみで読めるようにアクセス権と所有権を変更してください。
    # chmod 400 SSLサーバ証明書の保存ディレクトリ/結合後のファイル名
    # chown root:root SSLサーバ証明書の保存ディレクトリ/結合後のファイル名
    
    # chmod 400 certs/example_com_combined.crt
    # chown root:root certs/example_com_combined.crt

    ※ 結合前のSSLサーバ証明書を利用しない場合は削除しても問題ありません。

  5. 続いて、SSLの設定ファイルをvi等のエディタで開いてください。
    # vi SSLの設定ファイル
    # vi /etc/nginx/conf.d/ssl.conf
  6. SSLに該当する項目を設定します。
    listen SSLで使用するポート番号を指定します。
    ssl SSLの有効/無効を指定します。
    ssl_certificate 結合したSSLサーバ証明書ファイルを指定します。
    ssl_certificate_key SSLサーバ証明書とペアになる秘密鍵を指定します。
    ssl_protocols 使用プロトコル
    server {
    	listen ポート番号;
    	ssl 有効/無効;
    	server_name コモンネーム(FQDN);
    	ssl_certificate SSLサーバ証明書を保存しているディレクトリ/SSLサーバ証明書のファイル名;
    	ssl_certificate_key 秘密鍵を保存しているディレクトリ/秘密鍵のファイル名;
    
    	location / {
    	…
    	}
    }
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    server {
    	listen 443;
    	ssl on;
    	server_name www.example.com;
    	ssl_certificate /etc/pki/tls/certs/example_com_combined.crt;
    	ssl_certificate_key /etc/pki/tls/private/example_com.key;
    
    	location / {
    	…
    	}
    }
  7. 設定に誤りがないか検証してください。
    #/etc/init.d/nginx configtest
    #/etc/init.d/nginx configtest
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
  8. reloadもしくはrestartで設定を反映させてください。
    # /etc/init.d/nginx reload
    nginx を再読み込み中:                                      [  OK  ]
  9. 以上で設定は完了です。SSL通信に問題がないか、証明書の有効期限が更新されているか等を確認してください。

nginx関連情報

nginx

ページの先頭に戻る

  1. ホーム
  2. サポート
  3. マニュアル
  4. nginx
  5. SSLサーバ証明書の設定