セコムのSSLサーバー証明書 新規・更新お申込み(セコムパスポート for Web SR3.0)

[×]このウィンドウを閉じる

鍵ペア/CSRの生成

Tomcat 新規/更新用

次の手順にしたがい、鍵ペアとCSRを生成してください。
このページでは、Unix環境でTomcat 4~10でJava 6~15のJSSEを使用していることを前提に説明しています。 CSR 生成時は、TLS/SSLのサーバーをホストしているコンピュータに管理者として ログインしていることを確認してください。

注意事項

本手順ではパスワードを入力する手順がありますが、 パスワード入力の際、 エコーバックで入力したパスワードの表示される古い版があります。 パスワードの漏洩のないようにご注意ください。
また、深刻な脆弱性も知られていますので、TomcatおよびJavaは、最新版に更新しておくことをおすすめします。

≪Tomcat 4をご利用の場合≫
Tomcat 4ではPureTLSを優先します。JSSEをご使用の場合は、以下のどれかでご対応ください。

  • Tomcatをアップグレードする
  • server.xmlファイルでFactory要素のSSLImplementation属性の値を 「org.apache.tomcat.util.net.JSSEImplementation」 と明示する
  • PureTLSをアンインストールする

≪Windows版をご利用の場合≫
実際の表記や用語が異なりますので、 読み替えて行ってください

環境 Unix DOS(Windows)
変数置換 ${変数名} %変数名%
パス名 /ディレクトリー名/ファイル名 ドライブ名:¥ディレクトリー名¥ファイル名
プロンプト #や$ ドライブ名>
拡張子 sh bat
コマンド・インタープリタ シェル コマンド プロンプト

更新時も、必ず新たに鍵ペアおよびCSRを作成してください。

1.鍵ペアの生成

作業の前にJavaのベンダーや系列を確認してください。鍵生成時と実行時とでJavaのベンダーや系列が異なると、鍵ストア・ファイルのうまく読めないことがあります。

1-1.鍵ストアと鍵ペアの生成

鍵ストアや鍵ペアの生成には、 keytoolというコマンドを使用して行います。

※keytoolのインストール箇所は、 ${JAVA_HOME}/binディレクトリー です。

実行例:
${JAVA_HOME}

Javaを導入したディレクトリー

鍵ペアを生成するためのコマンドを入力します。

現在ご利用中の鍵ペアがある場合は、上書きしないようご注意ください。

部署 (Organizational Unit) 名のある場合
実行例:
$ keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 -keystore /your/keystore/filename
部署 (Organizational Unit) 名のない場合
実行例:
$ keytool -genkey -alias tomcat -keyalg RSA -keysize 2048 -keystore /your/keystore/filename -dname "CN=www.example.jp, O=SECOM Trust Systems CO.¥,LTD., L=Mitaka shi, ST=Tokyo to, C=JP"

※「-dname」 の後には、サーバー識別名 (DN)を指定します。
ここに指定する値が 「,」 文字を含む場合、「¥,」 のように入力してください。
シェルによっては、
 「"」 文字を 「'」 文字に変える
 「¥¥」 のように重ねて指定する
場合があります。 シェルの仕様詳細はマニュアルなどをご確認ください。
また、サーバー識別名に指定する値については、手順1-3.のプロンプトの説明を参照してください。

tomcat」:
生成する鍵ペア名
Tomcat 6以降の場合は、「tomcat」以外の鍵ペア名をつけることも可能です。

/your/keystore/filename」:
生成する鍵ストアファイル名(ファイル名は任意)

1-2.鍵ストアのパスワード設定

プロンプトが表示されますので、鍵ストアに設定するパスワードを入力してください。

実行例:
Enter keystore password: changeit
確認入力を促すプロンプトが表示された場合は
同じパスワードを再入力してください。
実行例:
Re-enter new password: changeit

1-3.サーバー識別名 (DN) 情報の入力

証明書内に組み込むサーバー識別名 (DN) 情報を入力します。

入力には以下の点にご注意ください。

  • 64文字以内の半角文字で入力してください
  • 識別名に使用できる文字は、算用数字、アルファベット、空白、アポストロフィー (')、コンマ (,)、ハイフン (-)、ピリオド (.)、コロン (:)、等号 (=) です
  • 「&」が含まれる場合は、半角英字の and 等に置き換えてください
  • スペースのみの入力は控えてください。 スペースのみの入力項目がある場合、 証明書が発行されません
  • ,」 が含まれる場合も ここではそのまま入力できます (「¥」 を前置きするのは、コマンド行の引数としてサーバー識別名を指定する場合です)

各項目については以下を参照してください。

  • your first and last name(DN情報の「CN」)
    コモン・ネームになります。
    例)TLS/SSL通信を行うサイトが www.example.jp の場合「www.example.jp
    ※注意点
      コモン・ネームに以下を使用することはできません。
    • プロトコル特定子 (http://)
    • IPアドレスやポート番号
    • パス名
    • *」 や 「?」 のワイルドカード文字

    コモン・ネームは、TLS/SSL通信を行うサイトのFQDN (Fully Qualified Domain Name) と同一でなければなりません。証明書に登録するコモン・ネームとFQDNが一致しない場合、ブラウザがサイトへの安全な接続を拒否する場合があります。

    例えば、 コモン・ネームを 「example.jp」 とし証明書を発行した場合、<https://www.example.jp/> でアクセスすると、コモン・ネーム (example.jp) とFQDN (www.example.jp) が一致しないため、ブラウザでは警告が表示されます。

  • your organizational unit(DN情報の「OU」)
    部署やグループなどの名前になります。
    ※この項目を省略するには、手順1-1.を参照ください。
     2022年9月から禁止ですので、新規にご契約のばあいは、省略なさることを強く推奨します。
  • your organization(DN情報の「O」)
    申請組織名になります。
    例)セコムトラストシステムズの場合 「SECOM Trust Systems CO.,LTD.
  • your City or Locality(DN情報の「L」)
    通常、組織の本店(代表)が置かれている市区町村名になります。
    例)三鷹市の場合 「Mitaka shi
  • your State or Province(DN情報の「ST」)
    同様に、その都道府県名になります。
    例)東京都の場合 「Tokyo to
  • the two-letter country code for this unit(DN情報の「C」)
    ISO 3166による国名などの2文字の符号です。日本国となりますので「JP」と入力してください。
実行例:
What is your first and last name?
 [Unknown]: www.example.jp
What is the name of your organizational unit?
 [Unknown]: Sales Dept.
What is the name of your organization?
 [Unknown]: SECOM Trust Systems CO.,LTD.
What is the name of your City or Locality?
 [Unknown]: Mitaka shi
What is the name of your State or Province?
 [Unknown]: Tokyo to
What is the two-letter country code for this unit?
 [Unknown]: JP
 

1-4.サーバー識別名の確認

1.サーバー識別名 (DN) 情報が表示されますので、内容を確認してください。

実行例:
Is CN=www.example.jp, OU=Sales Dept., O=SECOM Trust Systems CO.,LTD., L=Mitaka shi, ST=Tokyo to, C=JP correct?

2.内容を確認後、 yesと入力してください。

実行例:
[no]: yes

3.もしプロンプトの表示されたばあい、何も入力せずリターン・キーを押してください。

実行例:
Enter key password for <tomcat>
(RETURN if same as keystore password):

1-5.鍵ストアの形式変換

1.もし次のようなメッセージが出たら、以下の手順にしたがい、 出なければ、1-6.にすすんでください。

The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore /your/keystore/filename -destkeystore /your/keystore/filename -deststoretype pkcs12".

2.鍵ストアのバックアップをとってください。

3.次のようなコマンドを実行してください。

$ keytool -importkeystore -srckeystore /your/keystore/filename
-destkeystore /your/keystore/filename -deststoretype pkcs12

4.もし次のプロンプトが表示されたら、鍵ストアに設定したパスワードを 入力してください。

Enter source keystore password:

5. 次のようなメッセージなら、出ても大丈夫です。

Entry for alias tomcat successfully imported.
Import command completed: 1 entries successfully imported, 0 entries failed or cancelled

Warning: Migrated "/your/keystore/filename" to Non JKS/JCEKS. The JKS keystore is backed up as "/your/keystore/filename.old".

6. 「/your/keystore/filename.old」という名前のファイルがあれば、消してください。


1-6.鍵ストアの確認

1.生成した鍵ストアを確認する場合は、 次のコマンドを入力してください。

実行例:
$ keytool -list -v -keystore /your/keystore/filename

/your/keystore/filename」:手順1-1.で指定した鍵ストア名

2.プロンプトが表示されますので、 鍵ストアに設定したパスワードを入力してください。

実行例:
Enter keystore password: changeit

3.鍵ストアのファイルの情報が表示されます。

実行例:
Keystore type: PKCS12
Keystore provider: SUN

Your keystore contains 1 entry

Alias name: tomcat
Creation date: Apr 1, 2004
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=www.example.jp, OU=Sales Dept., O=SECOM Trust Systems CO.,LTD., L=Mitaka shi, ST=Tokyo to, C=JP
Issuer: CN=www.example.jp, OU=Sales Dept., O=SECOM Trust Systems CO.,LTD., L=Mitaka shi, ST=Tokyo to, C=JP
Serial number: 40141041
Valid from: Thu Apr 01 04:01:41 JST 2004 until: Fri Apr 01 04:01:41 JST 2005
Certificate fingerprints:
SHA1: 77:45:10:3E:7B:3F:31:A3:6C:31:1C:B7:04:2D:0D:41:41:42:B0:97
SHA256: E5:5D:0B:E1:40:19:CD:92:2F:A2:3A:C9:CB:59:53:EB:4A:9C:2F:04:52:B4:4F:FF:25:18:07:D4:BE:CE:38:F4

*******************************************
*******************************************

2.CSRの生成

鍵ペアが作成されたことを確認後、 CSRを生成します。

2-1.CSRの生成

次のコマンドを入力し、 CSRを生成してください。

実行例:
$ keytool -certreq -sigalg SHA256withRSA -alias tomcat -file server.csr -keystore /your/keystore/filename

tomcat」: 手順1-1.で指定した鍵ペア名
/your/keystore/filename」: 手順1-1.で指定した鍵ストア名
server.csr」: CSRが保存されるファイル名

2-2.パスワードの入力

プロンプトが表示されたら、 鍵ストアに設定したパスワードを入力してください。

実行例:
Enter keystore password: changeit

2-3.生成されたファイルの確認

CSR (例:server.csr)が生成、保存されます。

【CSRのサンプル】
CSRサンプル

ここで生成したCSRを申込画面に貼り付けて申請してください。

※opensslコマンドのインストールをされている場合、CSRの内容(DN情報)は以下のコマンドで確認いただけます。

実行例:
$ openssl req -noout -text -in server.csr

server.csr」 : CSRを保存したファイル名

CSRおよび鍵ペアの生成は、以上で完了です。

※重要
作成した鍵ペアのファイルは、 必ずバックアップをとって 安全な場所に保管してください。
また、鍵ストアに指定したパスワード、鍵ストアのパスワードを指定するserver.xmlファイルやそのファイルのあるconfディレクトリーのアクセス管理を、確実に行ってください。

鍵ペアのファイルの紛失、 パスワード忘れ等が発生した場合、 証明書のインストールが行えなくなります。 この場合は、 新たに証明書をご購入いただくことになりますので、 ご注意ください。

必要な場合は、システムのフルバックアップをおとりください。フルバックアップ方法につきましては、製品のマニュアル等をご確認ください。

ご利用のサーバー上に初めて証明書を導入される方
現時点でTLS/SSLを有効化すると、発行されたサーバー証明書をインストールする前に、自己署名証明書で動作を確認できます。
有効化(2.インストール手順 「TLS/SSLの有効化および再起動」を参照)した後、動作確認を行ってください。

TLS/SSLの動作確認

1.<https://コモン・ネーム:ポート番号/> のURLで閲覧できることを、ウェブ・ブラウザでご確認ください。

  • 「コモン・ネーム」: 手順1.で指定した コモン・ネーム
  • 「ポート番号」: TLS/SSLの有効化でConnector要素のport属性の値に指定した待受けポートの番号

( この時点ではサーバー証明書が自己署名になっていますので、 ブラウザによっては警告のダイアログなどの出る場合もあります)。

2.Adminサーブレットにアクセスできるよう設定してから、 <https://コモン・ネーム:ポート番号/admin/index.jsp> のURLで、 ログイン画面にアクセスできることをご確認ください。

Tomcatの版や環境によっては、Tomcatに附属のAdminサーブレットのうまく機能しない場合もあるようです。その場合、機能する版のAdminサーブレットととりかえるか、 Adminサーブレットによる確認を省略してください。

TOMCAT WEB SERVER ADMINISTRATION TOOL ログイン画面

3.適切なアカウントを設定してから、Adminサーブレットにログインできることを、ご確認ください。

TOMCAT WEB SERVER ADMINISTRATION TOOL サービス・アイコンを開く前

4.Connector (ポート番号)を選択してから、指定した鍵ストアのファイルが読み込まれていることを、ご確認ください。

TOMCAT WEB SERVER ADMINISTRATION TOOL サービス・アイコンを開いた後

[ このウィンドウを閉じる ]