2009/08/26

IIS certutil private-key

Windows で HTTPS っていうと IIS 使うと思うんですが
そうするとサイトのプロパティーからディレクトリセキュリティー選んで
証明書っての押すと CSR 作るウィザードが出てきて情報入れます

CSR 作るからには、RSA は前提として、秘密鍵が作られてるわけで
でもそれは IIS のウィザードにしっかり隠蔽されています
んで、この申請ってのは途中でキャンセルできたりするんですが
そうすると CSR は手元にあるのに秘密鍵が迷子になっちゃいます

キャンセルせずにそのまま証明書をゲットした場合にも
間違えてまた同じ CSR で新しい証明書を発行してもらった場合など
Windows の奥の方で秘密鍵と証明書の pairing が記載されてるらしく
pairing がなされてない証明書は IIS の選択肢に出てきません
(だったら古い方 export して pkcs#12 から秘密鍵取り出せ? そうなんですけど)

で、そもそも IIS のウィザードは certutil ってコマンドのフロントエンドのようで
certutil は CryptoAPI を叩くのに
Microsoft が用意してくれてるツールの 1 つなのかな?
(OpenSSL と openssl のようなもんかしら??)

で、どうやって pairing 作るんだっけなと思いまして
検索してみたら出てきた最初の blog (タイトル長いな)
Assign a private key to a new certificate after you use the Certificates snap-in to delete the original certificate in Internet Information Services - Sunday Morning Musings on IIS : The Official Microsoft IIS Site
に -repairstore を使えと書いてありました

"certutil -repairstore" とかすると日本語の情報も出てきそう
でもこれ、何だかこみいってて、自分でするのはいいけれど
他の人に「こうやって下さい」って説明するの嫌だなぁ...

0 件のコメント:

コメントを投稿