CSRファイルの取得方法とサーバー証明書のインストール
作成日:2014年2月5日 | 更新日:2022年7月6日
[ご質問]
SSL 通信を設定する際、CSRファイルの取得方法とサーバー証明書のインストール方法について教えてください。
[回答]手順はサーバ証明書を購入したCAによって異なります。また、CAで購入したサーバー証明書の種類によって、
インポートする証明書(ルート証明書、中間証明書など)が異なりますので、ご了承ください。
本番環境での作業前に、テスト(Trial)用の証明書の発行とインストールの確認をしていただくことを推奨いたします。
以下は、Verisignのテスト用サーバー証明書(テスト用セキュア・サーバーID、1024bit) のインポート手順です。
以下の状況を想定しています。
====================
ドメイン名:zohosupport.jp
コモンネーム:sdp.zohosupport.jp
====================
1. CSRファイルの取得方法
1, コマンドプロンプトを開き、以下のディレクトリに移動
[ServiceDesk インストールディレクトリ]\jre\bin2, Keytool を使用して、RSA鍵ペアを生成(CSRの生成)
* 以下のVeriSignのページをご参照ください。
https://www.verisign.co.jp/ssl/help/faq/110074/index.html
2-1, 以下を実行
<Windows>
cmd>keytool.exe -genkey -alias [証明書エイリアス] -keyalg RSA -keystore sdp.keystore
例)
cmd>keytool.exe -genkey -alias zohosupport.jp -keyalg RSA -keystore sdp.keystore
<Linux>
$ ./keytool -genkey -alias [証明書エイリアス] -keyalg RSA -keystore sdp.keystore
2048bit のサーバ証明書を利用する場合は、下記のオプションを追加してください。-keysize 2048cmd>keytool.exe -genkey -alias zohosupport.jp -keyalg RSA -keystore sdp.keystore -keysize 2048
SANの情報を含む場合は、以下の通りです。
keytool -genkey -alias [エイリアス名/ドメイン名] -keyalg RSA -keysize 2048 -sigalg SHA256withRSA -keystore sdp.keystore -ext san=dns:[fqdn] ※「-ext san=dns:[fqdn]」は、Java7にバンドルされているkeytool以降でサポートされています。ServiceDesk Plusバージョン9200以降では、Java7VM以上で機能します。
2-2, キーストアのパスワードを入力cmd > キーストアのパスワードを入力してください: password
* パスワードに、"$" の記号を含めないでください。変数として扱われる可能性があります。
2-3, 姓名を入力
cmd >姓名を入力してください。
[Unknown]: sdp.zohosupport.jp
*ワイルドカード証明書を利用される場合は、名称の始めに"*"を入力してください。
例)*sdp.zohosupport.jp
* こちらにはコモンネームを指定してください。
コモンネームの詳細は、以下のページをご参照ください。
https://www.verisign.co.jp/ssl/help/faq/110001/index.html
* httpsで接続する際のWebサーバーポート番号は"443"となります。
ServiceDesk Plusインストール時のデフォルトの番号は"8080"ですので、
証明書のインストール後にポート番号を"443"に変更します。
* コモンネームにはコロン(:)などの記号は使用できませんので、現在ServiceDesk Plusに
http://sdp.zohosupport.jp:8080で接続している場合は、
コモンネームには、"sdp.zohosupport.jp"を指定してください。
2-4, 組織単位を入力
cmd>組織単位名を入力してください。
[Unknown]: ManageEngine
2-5, 組織名を入力
cmd> 組織名を入力してください。
[Unknown]: ZOHO Japan
2-6, 都市名を入力
cmd> 都市名または地域名を入力してください。
[Unknown]: YOKOHAMA
2-7, 州名/地方名を入力
cmd> 州名または地方名を入力してください。
[Unknown]: KANAGAWA
2-8, 国番号を指定
cmd> この単位に該当する 2 文字の国番号を入力してください。
[Unknown]: JP
2-9, 確認(間違いなければ、"yes"を入力)
cmd>CN=sdp.zohosupport.jp, OU=ManageEngine, O=ZOHO Japan, L=YOKOHAMA, ST=KANAGAWA, C=JP で
よろしいですか?
[no]: yes
2-10, 鍵パスワードを入力
cmd><zohosupport.jp> の鍵パスワードを入力してください。
(キーストアのパスワードと同じ場合は RETURN を押してください): password
* パスワードに "$" の記号は使用しないでください。
3, 証明書署名要求を生成
3-1, 以下を実行
<Windows>
cmd>keytool.exe -certreq -keyalg RSA -alias [証明書エイリアス] -file certreq.csr -keystore sdp.keystore
例)
cmd>keytool.exe -certreq -keyalg RSA -alias zohosupport.jp -file certreq.csr -keystore sdp.keystore
<Linux>
$ ./keytool -certreq -keyalg RSA -alias [証明書エイリアス] -file certreq.csr -keystore sdp.keystore
SANの情報を含む場合は、以下の通りです。
keytool -certreq -alias [エイリアス名] -sigalg SHA256withRSA -file key.csr -keystore sdp.keystore -ext san=dns:[fqdn] ※「-ext san=dns:[fqdn]」は、Java7にバンドルされているkeytool以降でサポートされています。ServiceDesk Plusバージョン9200以降では、Java7VM以上で機能します。
3-2, キーストアのパスワードを入力
cmd>キーストアのパスワードを入力してください: password
4, 以下のディレクトリより、CSRファイル(certreq.csr)ファイルが作成されていることを確認
[ServiceDesk インストールディレクトリ]\jre\bin\certreq.csr5, 上記ディレクトリにある、sdp.keystore と certreq.csr ファイルをコピーして、別の場所に保管
→こちらのファイルは、サーバ証明書の更新時に必要になりますので、保管をお願いいたします。
6, このファイルでVeriSignなどのCAに申請(WebサーバーはTomcatです。)
[VeriSign テスト用サーバーIDの発行について] https://www.verisign.co.jp/ssl/trialserver/index.html?sid=tpty2テスト用サーバーIDの発行申請時に選択する「サーバーソフトウェアのタイプ」は、
「Microsoft以外のサーバー」を選択してください。
本手順は、日本ペりサイン社の"テスト用セキュア・サーバID(1024bit)" を利用しています。
2. サーバ証明書のインストールと設定
CA から証明書がメールで送付されましたら、証明書をServiceDesk Plusにインポートします。
ビルド9426以降、ServiceDesk Plus UIからSSL証明書をインストールできるようになりました。詳細はこちらをご覧ください。
1, 証明書のファイルを作成
ベリサイン社より送付されたメールの末尾に以下のようにサーバID(証明書)が挿入されています。
以下の部分をコピーして、メモ帳などに貼り付けた後、"server.cer" として保存してください。
保存先は [ServiceDeskホーム]\jre\binディレクトリです。
-----BEGIN CERTIFICATE-----
証明書
-----END CERTIFICATE-----
2, 中間CA証明書(テスト用)を取得して、「intermediateCA.cer」として保存
中間CA証明書の取得は、サーバIDが送られてきたメールに案内があります。
または、日本ベリサイン社のHPをご参照ください。
ベリサイン社のページから中間CA証明書を取得して、
-----BEGIN CERTIFICATE----- から、-----END CERTIFICATE-----までの内容を
メモ帳にコピーして「intermediateCA.cer」ファイルとして保存してください。
保存先は[ServiceDeskホーム]\jre\binディレクトリです。
3, ルート証明書(テスト用)を取得して、「root.cer」として保存
中間CA証明書の取得は、サーバIDが送られてきたメールに案内があります。
または、日本ベリサイン社のHPをご参照ください。
VeriSignのページからルート証明書を取得して、
-----BEGIN CERTIFICATE----- から、-----END CERTIFICATE-----までの内容を
メモ帳にコピーして「root.cer」ファイルとして保存してください。
保存先は [ServiceDeskホーム]\jre\binディレクトリです。
4, コマンドプロンプトを開き、以下のディレクトリに移動
[ServiceDeskインストールディレクトリ]\jre\bin*以下、3つの証明書をインポートします。必ず、ルート証明書、中間証明書、サーバIDの順での
インポートの実施をお願いいたします。
5, ルート証明書をインポート
<Windows>
cmd>keytool.exe -import -trustcacerts -alias root -keystore sdp.keystore -file root.cer
<Linux>
# ./keytool -import -trustcacerts -alias root -keystore sdp.keystore -file root.cer
キーストアのパスワードを入力してください: password
所有者: OU=For Test Purposes Only, OU=VeriSign Trust Network, OU=Terms of use at https://www.verisign.com/cps/testca/ (c)02, OU=Class 3 TEST Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US
実行者: OU=For Test Purposes Only, OU=VeriSign Trust Network, OU=Terms of use at https://www.verisign.com/cps/testca/ (c)02, OU=Class 3 TEST Public Primary Certification Authority - G2, O="VeriSign, Inc.", C=US
シリアル番号: 4ec0032f22e765316d20c19d4d723ce6
有効日: Sat Apr 20 09:00:00 JST 2002 有効期限: Wed Aug 02 08:59:59 JST 2028
証明書のフィンガープリント:
MD5: 22:CC:83:73:97:80:18:55:6E:C5:B3:71:8C:65:A2:20
SHA1: 64:0D:8F:12:34:B0:58:AA:DB:F5:CB:ED:C1:E5:31:AA:82:66:4B:EA
この証明書を信頼しますか? [no]: yes
証明書がキーストアに追加されました。
* パスワード入力後、「証明書がキーストアに追加されました。」というメッセージが表示されます。
6, 中間CA証明書をインポート
<Windows>
cmd>keytool.exe -import -alias intermediateCA -keystore sdp.keystore -trustcacerts -file intermediateCA.cer
<Linux>
$ ./keytool -import -alias intermediateCA -keystore sdp.keystore -trustcacerts -file intermediateCA.cer
キーストアのパスワードを入力してください: password
証明書がキーストアに追加されました。
* パスワード入力後、「証明書がキーストアに追加されました。」というメッセージが表示されます。
7, サーバーIDをインポート
<Windows>
cmd>keytool.exe -import -alias [証明書エイリアス] -keystore sdp.keystore -trustcacerts -file server.cer
<Linux>
$ ./keytool -import -alias [証明書エイリアス] -keystore sdp.keystore -trustcacerts -file server.cer
キーストアのパスワードを入力してください: password
証明書応答がキーストアにインストールされました。
*パスワード入力後に次のようなメッセージが表示される場合があります。yesを入力して続行します。
応答したトップレベルの証明書:
(略)
... は信頼されていません。 応答をインストールしますか? [no]: yes
* 「証明書応答がキーストアにインストールされました」というメッセージが表示されます。
8, キーストアの内容を確認
<Windows>
cmd>keytool.exe -list -keystore sdp.keystore
<Linux>
$ ./keytool -list -keystore sdp.keystore
キーストアのパスワードを入力してください: password
キーストアのタイプ: jks
キーストアのプロバイダ: SUN
キーストアには 3 エントリが含まれます。
intermediateca, 2010/07/27, trustedCertEntry,
証明書のフィンガープリント (MD5): AC:1A:2C:A7:9E:BB:88:22:D8:A2:92:B3:34:9A:06:88
root, 2010/07/27, trustedCertEntry,
証明書のフィンガープリント (MD5): 22:CC:83:73:97:80:18:55:6E:C5:B3:71:8C:65:A2:20
adventnet.local, 2010/07/27, keyEntry,
証明書のフィンガープリント (MD5): 6A:3A:18:DE:3A:F4:F0:C6:7B:84:E6:A0:DF:FD:8D:D9
9, 同ディレクトリにある、sdp.keystore ファイルを以下のディレクトリにコピー
【ビルド9335以前の場合】
[ServiceDesk インストールディレクトリ]\server\defaut\conf
【ビルド9400以降の場合】
[ServiceDesk インストールディレクトリ]\conf
10, HTTPS通信、ポート番号を"443"に設定
10-1, [ServiceDeskインストールディレクトリ]\bin に移動
10-2, 以下を実行
<Windows>
cmd>changeWebServerPort.bat 443 https
<Linux>
$ sh changeWebServerPort.sh 443 https
[Web Server Port set as 443, Web Server configured to support HTTPS protocol.] という
メッセージが表示されます。
11, server.xmlの修正
11-1, 以下のディレクトリにあるserver.xml を開く
【ビルド9335以前の場合】
[ServiceDesk インストールディレクトリ]\server\defaut\deploy\jbossweb-tomcat50.sar
【ビルド9400以降の場合】
[ServiceDesk インストールディレクトリ]\conf
11-2, 以下の赤字の部分を上記手順で指定したパスワードに変更
<Connector address="${jboss.bind.address}" clientAuth="false" keystoreFile="${jboss.server.home.dir}/conf/sdp.keystore" keystorePass="sdpsecured"
↓
<Connector address="${jboss.bind.address}" clientAuth="false" keystoreFile="${jboss.server.home.dir}/conf/sdp.keystore" keystorePass="password"
12, ServiceDesk Plus を再起動
13, https://[コモンネーム]で接続できるか確認
Trial版のSSL証明書のため、
接続すると、「接続の安全性を確認できません」
などのメッセージ(ブラウザごとにメッセージは異なります)が表示されます。
表示されるメッセージに従ってください(添付ファイルをご参照ください(FireFox))。
例:https://sdp.zohosupport.jp
**************
NOTE
・ 11-2,のserver.xmlファイルの編集後にWebサーバのポート番号を再度変更された場合は、
もう一度11-2,以降の手順の実施をお願いいたします。
(server.xmlがchangeWebServerPort.batによって上書きされるため)
・ サーバ証明書のインストール手順はCAによって異なります。
**************