2008年07月29日
Tweet
今まで証明書を使ったことは何度かあったのですが、そういえばIISで証明書を利用するのは初めてなので、今回メモしておきたいと思います。
なお、いわゆる普通の手順であれば、特に難しいことは無いと思うのですが、今回は色々面倒な方法で証明書を取得してしまいました。
・Private Key と Request について
IISを使って、証明書のリクエストを出せば簡単に証明書の発行ができます。しかし僕はブラックボックスなその処理は嫌いなので、他の方法で、リクエストキーの発行を行いました。
そのため、別の端末から、プライベートキーを取得しました。
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
続いて、リクエストキーも同様に発行しました。
-----BEGIN CERTIFICATE REQUEST-----
-----END CERTIFICATE REQUEST-----
そのファイルを元に、証明機関で署名をしてもらいました。
・CERTIFICATE Key が発行されたのはいいけど・・・
そのままではIISで利用することができません。
IISでは pfx 拡張子のファイルで取り扱うと色々と便利なようです。
Linuxが必要ですが、openssl を利用して、以下の手順で pfx ファイルを作成しました。
テキスト形式で Private Key と Certificate Key を1ファイルとして保存
-----BEGIN RSA PRIVATE KEY-----
[暗号化された内容]
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
[暗号化された内容]
-----END CERTIFICATE-----
そして次のコマンドを入力です
cat [上記で作ったファイル] | openssl pkcs12 -export -out cert.pfx -name "name"
できあがったファイルをWindowsにコピーして、IISからインポートします。
以上でIISでSSL通信を利用することができるようになりました。

なお、いわゆる普通の手順であれば、特に難しいことは無いと思うのですが、今回は色々面倒な方法で証明書を取得してしまいました。
・Private Key と Request について
IISを使って、証明書のリクエストを出せば簡単に証明書の発行ができます。しかし僕はブラックボックスなその処理は嫌いなので、他の方法で、リクエストキーの発行を行いました。
そのため、別の端末から、プライベートキーを取得しました。
-----BEGIN RSA PRIVATE KEY-----
-----END RSA PRIVATE KEY-----
続いて、リクエストキーも同様に発行しました。
-----BEGIN CERTIFICATE REQUEST-----
-----END CERTIFICATE REQUEST-----
そのファイルを元に、証明機関で署名をしてもらいました。
・CERTIFICATE Key が発行されたのはいいけど・・・
そのままではIISで利用することができません。
IISでは pfx 拡張子のファイルで取り扱うと色々と便利なようです。
Linuxが必要ですが、openssl を利用して、以下の手順で pfx ファイルを作成しました。
テキスト形式で Private Key と Certificate Key を1ファイルとして保存
-----BEGIN RSA PRIVATE KEY-----
[暗号化された内容]
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
[暗号化された内容]
-----END CERTIFICATE-----
そして次のコマンドを入力です
cat [上記で作ったファイル] | openssl pkcs12 -export -out cert.pfx -name "name"
できあがったファイルをWindowsにコピーして、IISからインポートします。
以上でIISでSSL通信を利用することができるようになりました。