インポートしたサーバ証明書の変換(IIS6.0→Tomcat4)
ここではTomcatでのサーバ証明書申請の方法ではなく、すでにIISで構築した証明書をTomcatに移行する際の手順です。
○アプリケーションサーバ
移行前 IIS6.0(Windows2003Server)
移行後 Tomcat4.1.39
IISで利用できるサーバ証明書の形式(?)は『.pfx』ファイルでTomcatではPKCS12『.p12』ファイルです。
詳細は以下に続きますがopensslを使って『.pfx』→『.pem』→『.p12』と変換する必要があります。
■IISから.pfxファイルをエクスポート
IISマネージャから.pfxファイルをエクスポートする。
『.pfxファイルに現在の証明書をエクスポートする』
※『.pfx』ファイルには秘密鍵も一緒にエクスポート
『.pfx』ファイル自体のパスワード(以下パスフレーズと呼ぶ)を設定
パスフレーズは忘れないように
■OpenSSLを利用して.pfxファイルから.p12ファイルへの変換を行う。
Openssl version Openssl 0.9.8k 25 Mar 2009
Opensslはソースコードでの公開なので、自分でビルドする必要がありますが、Windows用にインストーラーを公開しているサイトがあります。
■.pfxファイルから.pemファイルへの変換
○変換
------------------------------------------------------------------------------------
pkcs12 –in ****.pfx –out ****.pem
OpenSSL>pkcs12 –in ****.pfx –out ****.pem
Enter Import Password:{IISで設定したパスフレーズ}
MAC verified OK
Ender PEM pass phrase:{新しいパスフレーズ:上と同じでもOK}
Verifying – Enter PEM pass phrase:{新しいパスフレーズ(確認)}
OpenSSL>
------------------------------------------------------------------------------------
※ここでパスフレーズを入力した時、何もプロンプト上では表示されない。
変化は無いがしっかりキーを受け付けているので気にせずパスフレーズを入力後リターン!
■.pemファイルから.p12ファイルへの変換
○変換
------------------------------------------------------------------------------------
pkcs12 –export –in ****.pem –out ****..p12 –neme “New Tomcat”
OpenSSL>pkcs12 –export –in ****.pem –out ****..p12 –neme “New Tomcat”
Loding ‘screen’ into random state - done
Enter pass phrase for ****.pem:{Pem変換で設定したパスフレーズ}
Ender Export password :{新しいパスフレーズ:上と同じでもOK}
Verifying – Ender Export password: {新しいパスフレーズ(確認)}
OpenSSL>
------------------------------------------------------------------------------------
■Tomcatのサーバ証明書の設定
○Server.xmlファイル
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="443" enableLookups="true"
scheme="https" secure="true" acceptCount="100"
useURIValidationHack="false" disableUploadTimeout="true"
keystore="@fullpath" keypass="@{p12変換で設定したパスフレーズ}"
keystoreType="PKCS12"
clientAuth="false" sslProtocol="TLS" />
<追記>拡張子『.pfx』から『.p12』へ変換するのはファイル名(拡張子)を変更するだけで良いという記述を発見しました。
※この方法はまだ試していませんので何とも言えませんが・・・機会があればやってみることにします。