この前、IISで新しくサーバーを移動させる際にSSL証明書を移動させないといけなくなったのですが、別に再発行させなくても移動させることができることが分かりました。
一部条件はありますが、今後のために方法を残しておきたいと思います。
証明書の要求の完了は使えない
そもそも、証明書を発行する際に使用したPKCS7とかのキーなのですが、これを利用して「証明書の要求の完了」を選択すると、一瞬完了したと思ったら更新ボタンを押すとまた消えてしまいます。エラーメッセージ等が出てこない分厄介ですね
条件
さて、本題にはいりますが、この方法にはいくつか条件があります。
この方法は厳密には移動させるわけでなく、ある意味複製しているようなものです。決して不正な意味ではなく。
そのため、私のサイトのようにライセンスフリーサーバー証明書を利用している場合のみに有効な方法で、IPが変わるといけないものやサーバーに応じて買わないといけないタイプの証明書には利用することができません。
その点ご確認ください。
移動させる方法
元のサーバー側で「サーバー証明書」の管理画面へ移動します。
それから移動させる証明書を選択、右クリックして「エクスポート」を選択するとこの画面が出てきます。
適当にでもパスワードを入力してOKを押します。ただこの後発行されるファイルを何者かに盗まれでもしたら悪用される危険性があるので、一応真面目に入力しておいたほうがいいかも。
そしてエクスポートが完了するとpfxファイルが生成されます。
これを新しいサーバーへコピーし、ファイルを開くと、ダイアログが表示されます。
保存場所を聞かれます。今回インポートする証明書はサーバー証明書なので、保存先はローカルコンピュータとなります。
そのあとパスワードを入力する画面が出てきます。先ほど設定したパスワードを入力しましょう。
エクスポートを有効にするかオプションがありますが、その辺は各自で。どちらでもいいでしょう。
その次に配置する証明書ストアの場所の選択。これもコンピュータにお任せしましょう。
これで証明書の移行は完了です。
移行が完了したか確認する
移行が完了したら、IISマネージャーのサーバー証明書の管理画面で、移行した証明書が出ていると思います。
これで、バインド画面のほうで証明書を選択してあげれば設定完了です。