SSL で通信するためには、
- OpenSSL や apache 等で csr と key を作る
- csr を証明機関に送る
- 署名してもらった crt を受けとる
- key と crt をサーバに読みこませてやる
という手順を踏む。
ところが IIS に key と crt 読みこませてやろうとすると、
IIS は、鍵の作成を自分でやることが前提の仕組みになっているので、
わりとはまる。
Windows は、いじってるうちになんかうまいことできることがあるので、
なにかできるんじゃないか、とあれこれいじるわけなんだけど、
全然糸口は見付からないのよね。
しかもウェブにもあんまり有用な情報がなかったり。
で、どうするか、なんだけど、
key と crt から PKCS#12 形式の証明書ファイルを作る、
というのが正解。
その形式になってれば右クリックでインストールできて、
IIS の管理コンソールから選択できるようになる。
具体的には、OpenSSL を使って
openssl pkcs12 -export -in DOMAIN.crt -inkey DOMAIN.key -out DOMAIN.p12
とすればOK。
参考)
OpenSSL を使って PKCS#12 証明書ファイルを作成する方法
http://support.citrix.com/article/CTX108031