计算机重新启动后,IIS丢失HTTPS端点证书

时间:2014-12-19 11:10:30

标签: iis ssl binding endpoint

我知道我不是那个在电脑重启后失去证书协会的人。 特别是:

  • 在IIS中打开“Site Bindind”对话框
  • 查找我的HTTPS绑定
  • 按“编辑...”
  • 从“SSL证书”中我选择了我的证书
  • 按“应用”

一切都很完美,但在电脑重启之前。 重新启动后,当我打开Binding属性时,我看到(未选中)

之后我发现了什么

netsh http show sslcert 

我无法看到我用于HTTPS绑定的端口

我是的时候 netsh http add sslcert ipport = 0.0.0.0:port certhash = appid = {ID}

一切都进一步发挥

作为一个快速但又脏的解决方案,我创建了一个包含以下内容的bat文件:

netsh http del sslcert ipport=0.0.0.0:port
netsh http add sslcert ipport=0.0.0.0:port certhash=<Hash> appid={ID}

并在Windows Scheduler中计划启动bat文件(1分钟后启动) 工作了一段时间,但现在已经停止了。

如何修复它有什么问题?

1 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,每当我重新启动计算机时,我的自托管OWIN应用程序的SSL绑定都会丢失。

我发现了这篇帖子:Adding SSL Certificate via "netsh.exe" does not last after a machine restart,其中提及:

  

我认为通过将自签名证书从Personal迁移到Trusted Root CA目录会导致SSL在开发人员重新启动计算机后停止工作的问题。 (不知道它是如何发生的,但它确实一直发生。)我终于通过导出解决了这个问题,并将自签名证书重新导入到受信任的根目录(而不是简单地将其拖过)。现在我的自签名证书被考虑了,每次重新启动机器时我都不需要重新安装/修复IIS Express。

我的方案有点不同,但是当我导入我的localhost SSL证书时,我还使用drag-n-drop将其从“当前用户”的个人证书复制到“本地计算机”的个人证书。 所以我删除了我的证书并重新导入而没有使用drag-n-drop,这似乎已经处理了 - 我现在可以重启我的机器而不会丢失我的SSL端口绑定!

希望这对你也有用(如果你还有问题)。