18

OK、この 1 つの Win7 x64 マシンでは解決できないように見える SSL の問題があります。私は何年もの間自己署名証明書を使用しており、以前にそれらについてブログを書いたことさえあるので、経験があります。しかし、今回は理解できないことが起こっています。

(2) ローカルホスト SSL 証明書を作成し、マシンにインストールしました。

  1. IIS (7.5) で発行および作成された localhost (フレンドリ名)。これには、マシン名「DevMachine123」の「発行先」と「発行者」の値が含まれています。これは、IIS の「既定の Web サイト」で構成されたアプリケーションに提供される証明書です。
  2. CN=localhost (共通名) が使用された makecert.exe ツールを使用して作成された localhost SSL 証明書。「localhost」の「Issued To」と「Issued By」の値が含まれています。これは、「既定の Web サイト」で構成されたアプリケーション用に IIS で提供したいSSL 証明書です。

私が得ているエラーは次のとおりです。

「この Web サイトによって提示されたセキュリティ証明書は、別の Web サイトのアドレスに対して発行されました。」

IE ブラウザーから提供されている証明書を表示すると、「DevMachine123」に発行された localhost 証明書が使用されており、この問題を解決するはずの localhost に発行された localhost (上記の 2) ではありませんしたがって、「DevMachine123」は「localhost」と一致しないため、名前が一致しません。

もう 1 つのポイント。私の証明書は「信頼されたルート証明機関」に追加されているため、どちらも信頼できる証明書です。

最後のポイントとして、IIS のマシンで「既定の Web サイト」の https ポート 443 バインド構成を確認しました。証明書を表示すると、正しいlocalhost 証明書がバインドされていることがわかります (CN=localhost を使用した上記の #2)。

私はここで自分のベースをカバーしたと感じています (はい、これこれを見たので、再投稿しないでください)。ここで何が欠けていますか?

ありがとう!

4

4 に答える 4

34

私も同様の問題を抱えており、サイトのバインディングについて上記のチェックも行っていました。次のnetshコマンドを実行しました

netsh http show sslcert

これにより、2つのSSL証明書バインディングが表示されました。1つは正しい証明書を持つIP:Port 0.0.0.0:443にあり、もう1つは期限切れの証明書を持つIP:Port [::]:443にあります。ローカルコンピューターのCertMgr.mscを開いて(手順についてはこちらを参照)、無効な証明書を検索したところ、有効期限が切れていることがわかりました。

この問題を解決するために、私は次のことを行いました

  1. netsh http delete sslcert ipport=[::]:443
  2. iisreset /restart
于 2012-11-26T04:31:08.877 に答える