セコムのSSLサーバー証明書

証明書の設定nginx 新規/更新用

中間CA証明書、サーバー証明書をダウンロードし、次の手順に従い証明書を設定してください。

以下の

  • ・ssl_certificate
  • ・ssl_certificate_key

等の指定はnginxの立上げファイルの中にあります。 既定の立上げファイルの名前は、「nginx.conf」です。 既定の立上げファイルは、 nginxのインストール先直下の「conf/」下位ディレクトリーにあります。

立上げファイルでは、 「#」文字で行内コメントが始まります。 以下で使用する各種の指定の左に「#」文字のないことを確認してください。

1.証明書のインストール

立上げファイルの「ssl_certificate」に指定するパス名のファイルに、 2枚以上の証明書をつないで保存します。

この手順では、 例として立上げファイルで「ssl_certificate」に以下と設定することを前提としています。

例)ssl_certificate /pathname/of/combined.crt;

4階層をご希望のお客様

SR3.0サービスの信頼チェーンは、 通常ルート証明機関「Security Communication RootCA2」を信頼した3階層ですが、中間CA証明書の追加で、 ルート証明機関「Security Communication RootCA1」を信頼した4階層にもできます。

ルート証明機関が異なることにより、 スマートフォンの対応環境が向上します。
4階層をご希望の方は、4階層用の中間CA証明書とSR3.0用の中間CA証明書の2つの中間CA証明書を連結し、テキストファイルに貼り付けて保存しご利用ください。

連結の例)

     -----BEGIN CERTIFICATE-----
      SR3.0用中間CA証明書
     -----END CERTIFICATE-----
     -----BEGIN CERTIFICATE-----
      4階層用の中間CA証明書
     -----END CERTIFICATE-----


1-1
サーバー証明書とチェーン証明書(中間CA証明書)の2つをつなぐ

まず、各証明書ファイルの末尾が5つのハイフンと改行で終わっていることを、ご確認ください。

次のコマンドを入力し、ダウンロードしたサーバー証明書(例: B1234567.txt)と中間CA証明書(例: pfwsr3ca.txt)の2つファイルをつないでください。

※ダウンロードしたファイルは、 現在作業中のディレクトリーにあるものとします。

コマンド例:

# cat B1234567.txt pfwsr3ca.txt >/pathname/of/combined.crt

B1234567.txt」: サーバー証明書のパス名

pfwsr3ca.txt」: 中間CA証明書のパス名

/pathname/of/combined.crt」: 立上げファイルの「ssl_certificate」に指定したパス名
※相対パス名で書くと、 nginxのインストール先直下の「conf/」下位ディレクトリーからの相対パス名とみなされます

以上で証明書のインストールは完了です。

2.鍵ペアのインストール

立上げファイルの「ssl_certificate_key」に指定するパス名のファイルに、 鍵ペアのファイルを移動していただきます。

この手順では、 例として立上げファイルで、 「ssl_certificate_key」へ次のように設定することを前提としています。

例)ssl_certificate_key /pathname/of/server.key;


2-1
鍵ペアファイルの移動

サーバー証明書に対応する鍵ペアのファイルを、指定したパス名へ移動させます。

※servername.key(お申込み時に生成した鍵ペアファイル)は、現在作業中のディレクトリーにあるものとします。

コマンド例:

# mv -i servername.key /pathname/of/server.key

※注意:
コマンド・プロンプトの前に別なプロンプトの出た場合は、 既存ファイルへ上書きの可能性がありますので、 パス名を確認してください。

以上で鍵ペアのインストールは完了です。

3.SSL/TLSの有効化

サーバーにSSL/TLSを有効にするための作業をしていただきます。
SSL/TLSを設定済みであれば、次のように設定されているかどうかをご確認ください。

3-1
SSL/TLSの有効化

SSL/TLSを有効にするため、立上げファイルに次のように指定してください。

指定例:

listen 443 ssl;
server_name www.example.net;
#ssl           on;
ssl_certificate /pathname/of/combined.crt;
ssl_certificate_key /pathname/of/server.key;
ssl_password_file /pathname/of/passphrase;
ssl_session_timeout 5m;
#ssl_protocols TLSv1;

443」:(httpsで) サーバーの待ち受けるポート番号

ssl」:httpsの指定です。1.0.4版以前では省いてください

ssl on;」:httpsの古い指定です。 1.0.4版以前ではコメント文字 (#) を外してください

www.example.net」:証明書の主体者の識別名のコモン・ネーム (CN) の値。これはサーバーのFQDN (Fully Qualified Domain Name) でもあります

/pathname/of/combined.crt」:「証明書のインストール」 でインストールした証明書のパス名

/pathname/of/server.key」:「鍵ペアのインストール」 でインストールした鍵ペアのパス

/pathname/of/passphrase」:パス・フレーズを保存したファイルのパス名です。パス・フレーズのない場合、指定は不要です。1.7.2版以前では省いてください

ssl_protocols TLSv1;」: プロトコルの古い指定で、1.5.4版以降では、指定は不要です。1.5.3版以前ではコメント文字 (#) を外してください


3-2
OCSPステープリングの有効化

もし、 次の条件

  • ・nginxのバージョンが1.3.7以降
  • ・OpenSSLのバージョンが0.9.8j以降 (OpenSSL導入時の初期設定によっては、 0.9.8hや0.9.8iでよい場合もあります)
  • ・サーバー機からDNSで sr30.ocsp.secomtrust.net のIPアドレスを解決できる
  • ・サーバー機からプロクシーなしで <http://sr30.ocsp.secomtrust.net/> へアクセスできる

をすべて満たしている場合、 OCSPステープリングの設定をお勧めします。 OCSPステープリングを有効にするには、 立上げファイルに次のように指定してください。

指定例

ssl_stapling on;
resolver 192.0.2.1;
ssl_trusted_certificate /pathname/of/pfwsr3ca.txt;

192.0.2.1」:DNSのネーム・サーバーのIPアドレス

/pathname/of/pfwsr3ca.txt」:中間CA証明書のパス名

以上でSSL/TLSの有効化は完了です。

注意点

1.7.3より古いnginxでは、 鍵ペアをパス・フレーズで保護できません。 鍵ペアのファイルは、持ち主以外には読み書きもアクセスもできないディレクトリーに置くことを推奨します。

チェーン証明書が使えなくなるので、「ssl_protocols」に「SSLv2」を指定しないでください。

1.1.13以降の1.1系や、1.0.12以降の1.0系では、「ssl_protocols」に「 TLSv1.1 TLSv1.2」を追加で指定できます。

1.13.0以降では、OpenSSLのバージョンなどにより、「ssl_protocols」に「 TLSv1.3」を追加で指定できることがあります。

OpenSSL 3.0.0系以降で「 TLSv1.1」以前の設定がうまく機能しないばあい、「 TLSv1.3」も有効に設定することを検討するとよいでしょう。

nginx起動後、初回のhttpsアクセスでは、OCSPステープリングの機能しないことがあります。2回目のアクセスでOCSPステープリングが機能すれば、大丈夫です。

4.サーバー・プロセスの再起動

サーバー・プロセスをいったん停止して、その後で再起動してください。
もし起動してなければ、4-2.のようにサーバー・プロセスを起動してください。
リロ-ドでは鍵や証明書を更新できないこともあります。


4-1
サーバー・プロセスの停止

もしプロンプトが出たら、「鍵ペアおよびCSRの生成」で入力したパス・フレーズを入力してください。

停止コマンド

# /NGINX_HOME/sbin/nginx -s stop

/NGINX_HOME」:nginxのインストール先ディレクトリー


4-2
サーバー・プロセスの再開

もしプロンプトが出たら、「鍵ペアおよびCSRの生成」で入力したパス・フレーズを入力してください。

再開コマンド

# /NGINX_HOME/sbin/nginx

/NGINX_HOME」:nginxのインストール先ディレクトリー

注意:待ち受けるポート番号によっては、スーパーユーザー特権の不必要な場合もあります。

以上でサーバー・プロセスの再起動の完了です。


証明書のインストールは、以上で完了です。

※ 重要
証明書のインストール後、 鍵ペアのファイルは、 必ず (もしパス・フレーズを外していたら、 パス・フレーズで暗号化してから) バックアップをとり、 パス・フレーズの保管場所と別の安全な場所に保管してください。