HTTPS通信を行うためには、下記の手順で証明書/鍵管理の環境を作成する必要があります。使用するコマンドの詳細は、“Systemwalker Operation Manager リファレンス集”を参照してください。
1. 証明書/鍵管理環境の作成
管理ディレクトリの作成
証明書、秘密鍵管理には以下のディレクトリが必要なため、OS提供のコマンドなどでディレクトリを作成します。
作成例を以下に示します。
【Windows版】
mkdir d:\sslenv\slot スロット情報ディレクトリ mkdir d:\sslenv\sslcert 運用管理ディレクトリ mkdir d:\sslenv\sslcert\cert 証明書管理ディレクトリ mkdir d:\sslenv\sslcert\crl CRL管理ディレクトリ
【Solaris版/Linux版】
# mkdir /export/home/slot スロット情報ディレクトリ # mkdir /export/home/sslcert 運用管理ディレクトリ # mkdir /export/home/sslcert/cert 証明書管理ディレクトリ # mkdir /export/home/sslcert/crl CRL管理ディレクトリ
秘密鍵管理環境の作成と設定
秘密鍵の管理に必要な秘密鍵管理環境の作成と設定を行います。 作成例を以下に示します。
【Windows版】
%ProgramFiles%\SecurecryptoLibraryR\PROGRAM\bin\makeslot -d d:\sslenv\slot スロット情報ディレクトリの生成と初期化 %ProgramFiles%\SecurecryptoLibraryR\PROGRAM\bin\maketoken -d d:\sslenv\slot -s 1 -t Token01 トークンの初期設定
【Solaris版/Linux版】
以下は、Linux x64版の場合の例です。
# /opt/FJSVsclr64/bin/makeslot -d /export/home/slot スロット情報ディレクトリの生成と初期化 # /opt/FJSVsclr64/bin/maketoken -d /export/home/slot -s 1 -t Token01 トークンの初期設定
証明書/CRL管理環境の作成
証明書およびCRLの管理に必要な証明書/CRL管理環境の作成と設定を行います。
日本ベリサイン株式会社およびサイバートラスト株式会社の証明書を使用する場合は、日本ベリサイン株式会社およびサイバートラスト株式会社のルート証明書(CA証明書)の登録を行います。
作成例を以下に示します。
【Windows版】
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmmkenv d:\sslenv\sslcert -todir d:\sslenv\sslcert\cert,d:\sslenv\sslcert\crl 証明書/CRL管理環境の作成 %CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmsetenv d:\sslenv\sslcert -sd d:\sslenv\slot -jc 1 証明書/CRL管理環境の設定
【Solaris版/Linux版】
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmmkenv /export/home/sslcert -todir /export/home/sslcert/cert,/export/home/sslcert/crl 証明書/CRL管理環境の作成 # /opt/FJSVsmee64/bin/cmsetenv /export/home/sslcert -sd /export/home/slot -jc 1 証明書/CRL管理環境の設定
2. 秘密鍵の作成と証明書の取得
認証局(証明書発行局)に証明書の発行を依頼し、証明書を取得します。
証明書取得申請書の作成(同時に秘密鍵を作成)
認証局へ証明書の発行を依頼するための、証明書取得申請書を作成します。
以下のコマンドを実行すると、同時に秘密鍵を作成します。
注意
秘密鍵を保護するために、証明書を入手するまでの間、証明書/鍵管理環境のファイルをバックアップしておいてください。バックアップおよびリストア方法は、“証明書/鍵管理環境の退避・復元方法”を参照してください。
なお、バックアップしていないときに証明書/鍵管理環境が破壊された場合、秘密鍵がなくなってしまうため、証明書/鍵管理環境の作成と、証明書取得申請書の作成を再度行うことになります。
作成例を以下に示します。
【Windows版】
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmmakecsr -ed d:\sslenv\sslcert -sd d:\sslenv\slot -f TEXT -c jp -cn "www.infoproviderpro.com" -o fujitsu -ou 4-1f -l "Shizuoka-shi" -s "Shizuoka-ken" -kt RSA -kb 2048 -tl Token01 -of d:\sslenv\myCertRequest ENTER TOKEN PASSWORD=> * (注)
【Solaris版/Linux版】
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmmakecsr -ed /export/home/sslcert -sd /export/home/slot -f TEXT -c jp -cn "www.infoproviderpro.com" -o fujitsu -ou 4-1f -l "Shizuoka-shi" -s "Shizuoka-ken" -kt RSA -kb 2048 -tl Token01 -of /export/home/myCertRequest ENTER TOKEN PASSWORD=> * (注)
注) 本文字列が表示された場合は、ユーザPINを入力してください。なお、入力される文字はエコーバックされません。
本コマンドで入力したユーザPINは、“4. ユーザPINの登録”でも使用します。
証明書の発行依頼
証明書取得申請書を認証局へ送付し、サイト証明書の発行を依頼します。
依頼方法は認証局に従ってください。
証明書の取得
認証局により署名された証明書を取得します。取得方法は認証局に従ってください。
3. 証明書とCRLの登録
取得した証明書とCRLを証明書/CRL管理環境に登録します。
登録したあとは、証明書/鍵管理環境をバックアップするようにしてください。バックアップおよびリストア方法は、“証明書/鍵管理環境の退避・復元方法”を参照してください。
認証局の証明書(発行局証明書)の登録
取得した認証局の証明書を証明書/CRL管理環境へ登録します。
運用で利用する証明書を発行した認証局の証明書は、すべて登録してください。なお、日本ベリサイン株式会社またはサイバートラスト株式会社の認証局の証明書は、cmsetenvコマンドで登録してください。
証明書は、ルート証明書から順に登録してください。登録例を以下に示します。
【Windows版】
認証局の証明書がd:\sslenv\ca-cert.derに格納されている場合の実行例を示します。
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmentcert d:\sslenv\ca-cert.der -ed d:\sslenv\sslcert -ca -nn CACert
【Solaris版/Linux版】
認証局の証明書が/export/home/ca-cert.derに格納されている場合の実行例を示します。
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmentcert /export/home/ca-cert.der -ed /export/home/sslcert -ca -nn CACert
中間CA証明書(中間認証局証明書)の登録
認証局によっては、認証局証明書とサイト証明書のほかに、中間CA(中間認証局)証明書が用意されている場合があります。その場合、サイト証明書の登録の前に、認証局から配布されている中間CA証明書を登録してください。
なお、登録方法は認証局証明書の場合と同じです。“認証局の証明書(発行局証明書)の登録”を参照してください。
サイト証明書の登録
認証局から発行されたサイト証明書を証明書/CRL管理環境へ登録します。
登録後は、証明書の有効期間を参照し、証明書の更新が必要となる時期を確認しておいてください。有効期間は、cmdspcertコマンドで確認できます。コマンドの詳細は、“Systemwalker Operation Manager リファレンス集”を参照してください。なお、証明書の更新については、“2.5.7.1 証明書を更新する(証明書の有効期限が切れる)場合”を参照してください。
登録例を以下に示します。
【Windows版】
サイト証明書がd:\sslenv\my_site_cert.derに格納されている場合の実行例を示します。
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmentcert d:\sslenv\my_site_cert.der -ed d:\sslenv\sslcert -own -nn MySiteCert
【Solaris版/Linux版】
サイト証明書が/export/home/my_site_cert.derに格納されている場合の実行例を示します。
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmentcert /export/home/my_site_cert.der -ed /export/home/sslcert -own -nn MySiteCert
CRLの登録
CRLで失効確認をしない場合には、CRLを登録する必要はありません。
CRLで失効確認をする場合には、CRLは定期的に発行されるため、定期的に最新のCRLを取得し登録するようにしてください。
登録例を以下に示します。
【Windows版】
CRLがd:\sslenv\crl.derに格納されている場合の実行例を示します。
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmentcrl d:\sslenv\crl.der -ed d:\sslenv\sslcert
【Solaris版/Linux版】
CRLが、/export/home/crl.derに格納されている場合の実行例を示します。
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmentcrl /export/home/crl.der -ed /export/home/sslcert
4. ユーザPINの登録
ユーザPINを、ユーザPIN管理ファイルに登録します。
ihsregistupinコマンドに、ユーザPINとユーザPIN管理ファイルを指定することで、ユーザPINが暗号化されてユーザPIN管理ファイルに登録されます。ここでは、“2. 秘密鍵の作成と証明書の取得”で使用したユーザPINを指定します。登録例を以下に示します。
【Windows版】
ユーザPIN(対話入力)を暗号化して、ユーザPIN管理ファイル“d:\sslenv\upinfile”に登録する場合
Systemwalker Operation Managerインストールディレクトリ\MPWALKER.JM\mpahs\bin\ihsregistupin -f d:\sslenv\upinfile -d d:\sslenv\slot
【Solaris版/Linux版】
ユーザPIN(対話入力)を暗号化して、ユーザPIN管理ファイル“/export/home/upinfile”に登録する場合
/opt/FJSVftlo/mpahs/bin/ihsregistupin -f /export/home/upinfile -d /export/home/slot
5. 環境定義ファイルの設定
Webサーバの環境定義ファイル“httpd.conf”にSSLの設定を行います。
“httpd.conf”は、以下に格納されています。
【Windows版】
Systemwalker Operation Managerインストールディレクトリ\mpwalker.jm\mpahs\conf\httpd.conf |
【Solaris版/Linux版】
/opt/FJSVftlo/mpahs/conf/httpd.conf |
環境定義ファイルの定義例を以下に示します。
【Windows版】
以下のような設定でSSL運用を行う場合
SSLプロトコルバージョン:“SSL3.3(TLS1.2)”
クライアント認証:あり(任意)
スロット情報ディレクトリ:“d:\sslenv\slot”
トークンラベル:“Token01”
ユーザPIN管理ファイル:“d:\sslenv\upinfile”
運用管理ディレクトリ:“d:\sslenv\sslcert”
サイト証明書のニックネーム:“MySiteCert”
クライアントCA証明書のニックネーム:“CACert”
[httpd.conf 編集例]
ServerAdmin webmaster@main.example.com ServerName main.example.com SSLExec on SSLVersion 3.3 SSLVerifyClient optional SSLSlotDir d:/sslenv/slot SSLTokenLabel Token01 SSLUserPINFile d:/sslenv/upinfile SSLEnvDir d:/sslenv/sslcert SSLCertName MySiteCert SSLClCACertName CACert SSLCipherSuite RSA-AES-256-SHA256:RSA-AES-128-SHA256
【Solaris版/Linux版】
以下のような設定でSSL運用を行う場合
SSLプロトコルバージョン:“SSL3.3(TLS1.2)”
クライアント認証:あり(任意)
スロット情報ディレクトリ:“/export/home/slot”
トークンラベル:“Token01”
ユーザPIN管理ファイル:“/export/home/upinfile”
運用管理ディレクトリ:“/export/home/sslcert”
サイト証明書のニックネーム:“MySiteCert”
クライアントCA証明書のニックネーム:“CACert”
[httpd.conf 編集例]
ServerAdmin webmaster@main.example.com ServerName main.example.com SSLExec on SSLVersion 3.3 SSLVerifyClient optional SSLSlotDir /export/home/slot SSLTokenLabel Token01 SSLUserPINFile /export/home/upinfile SSLEnvDir /export/home/sslcert SSLCertName MySiteCert SSLClCACertName CACert SSLCipherSuite RSA-AES-256-SHA256:RSA-AES-128-SHA256
注意
“httpd.conf”は、バックアップ・リストアおよび移行資産の退避・復元の対象外であるため、環境をバックアップから復元する際、移行資産の復元を行う際には、再度同様の設定を行ってください。
6. 認証局の証明書(発行局証明書)のWebブラウザへの登録
Systemwalker PKI Managerを使用した認証局(証明書発行局)に発行されたサイト証明書を使用してWebブラウザとSSLを使用した通信を行うためには、サイト証明書を承認した認証局の証明書をWebブラウザに登録する必要があります。
利用者の証明書には有効期限があるため、証明書の再取得、再登録が必要となります。
そのため、証明書の管理には以下のコマンドを使用します。
コマンド | 説明 |
---|---|
cmlistcert | 証明書/鍵管理環境に登録されている証明書の一覧を表示します。 |
cmdspcert | 指定された証明書の内容を表示します。 |
cmlistcrl | 証明書/鍵管理環境に登録されているCRLの一覧を表示します。 |
cmrmcert | 証明書/鍵管理環境に登録されている証明書を削除します。 |
有効期限が切れると、運用や機能が停止してしまう場合があります。有効期限が切れる前に、事前に新しい証明書を入手し、登録しておく必要があります。
新しい証明書を入手したら、使用する証明書を新しい証明書に切りかえるのが一般的な運用です。その際、今まで使用していた古い証明書は、削除せずにそのまま残しておいてください。
手順は、“2. 秘密鍵の作成と証明書の取得”から再度実行してください。その際、古い証明書と同じニックネームは指定できません。
なお、認証局の運営方針により、証明書の有効期間よりも早く、認証局証明書や中間CA証明書(中間認証局証明書)が更新または追加される場合があります。その場合には、各認証局のサイトを確認し、指示された手順に従って新しい認証局証明書や中間CA証明書を入手してください。それらをcmentcertコマンドで「-ca」オプションを指定して登録した後で、新しいサイト証明書を登録するようにしてください。その際、新しい認証局証明書や中間CA証明書には、すでに登録されている証明書と重ならない、任意のニックネームが指定できます。
日本ベリサイン株式会社のテスト用セキュア・サーバIDを使用する場合
cmsetenvコマンドで登録した日本ベリサイン株式会社のルート証明書には、「テスト用ルート証明書」、「テスト用中間CA証明書」は含まれていません。そのため、「テスト用セキュア・サーバID」を使用する場合には、日本ベリサイン株式会社から「テスト用ルート証明書」、「テスト用中間CA証明書」を入手し、cmentcertコマンドで登録しておいてください。「テスト用ルート証明書」、「テスト用中間CA証明書」が登録されていないと、証明書検証に失敗するため、「テスト用セキュア・サーバID」の登録は失敗します。
なお、証明書はテスト用ですので、実際の運用では利用しないでください。
テスト用の証明書が誤って運用で利用されてしまうことを防ぐために、テストが終わったらテスト用証明書を削除することを推奨します。テスト用証明書の認証局証明書も、同様に削除することを推奨します。
証明書/鍵管理環境の退避・復元方法を説明します。
既存の資源(秘密鍵、証明書)を退避する
下記のコマンドで既存の資源(秘密鍵、証明書)を退避します。PKCS#12(PFX)データで作成されます。退避時には、「サイト証明書」のニックネームを指定してください。本コマンドでは、CRLの退避はできません。CRLは復元時に最新のものを登録してください。
【Windows版】
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmmkpfx d:\sslenv\my_site_pfx.pfx -ed d:\sslenv\sslcert -sn 1 -nn MySiteCert
【Solaris版/Linux版】
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmmkpfx /export/home/my_site_pfx.pfx -ed /export/home/sslcert -sn 1 -nn MySiteCert
秘密鍵、証明書を復元する
下記のコマンドで復元します。
【Windows版】
ここでは、復元する証明書/鍵管理環境を、d:\sslnewenv\sslcertとします。
%CommonProgramFiles%\Fujitsu Shared\F3FSSMEE\cmentpfx d:\sslenv\my_site_pfx.pfx -ed d:\sslnewenv\sslcert -sn 1 -nn MyNewSiteCert -entca
【Solaris版/Linux版】
ここでは、復元する証明書/鍵管理環境を、/export/home/new/sslcertとします。
以下は、Linux x64版の場合の例です。
# /opt/FJSVsmee64/bin/cmentpfx /export/home/my_site_pfx.pfx -ed /export/home/new/sslcert -sn 1 -nn MyNewSiteCert -entca