嘿呀,
我们目前正在尝试在测试/准备环境中开发一个网站,因此,在最终将其推送给最终用户之前,我们一直在设置 SelfSigned 证书,以尽可能接近真实证书。设置后,它会针对两个 URL(用于两个项目),设置为 10 年内到期,设置为目标,以检查0.0.0.0:443
它实际上是通过创建的mmc.exe -admin
,最后通过相同的实用程序移动到受信任的根证书。
除了浏览器会发现它,并且每次弹出时都必须转到“高级”->“接受并继续”外,此方法没有任何问题。或者说有效。
今天,我们坐下来使用 Visual Studio 2019 和 IIS Express 开发/使用证书(这很有价值,但我觉得这不重要,我们还在几个 VPN 之间切换),这时浏览器(Firefox)突然觉得证书已经足够了,并发出了 PR_CONNECT_RESET_ERROR。证书仍然存在,并且没有报告任何错误,但 IE、Microsoft Edge 和 Firefox 都拒绝了它。
目前,我们处于困境之中,任何帮助都将不胜感激!
在 PowerShell 中执行的命令(以管理员身份运行)是:
$date_now = Get-Date
$date_now = $date_now.AddYears(10)
$cert = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname *.PROJECT-URL-GOES-HERE.se,*.SECOND-PROJECT-URL-GOES-HERE.se -notafter $date_now
netsh http add sslcert ipport=0.0.0.0:443 certhash=$cert.Thumbprint appid="{<appid>}"
编辑:重新创建证书似乎有帮助,尽管只能持续一个小时左右(除非它与另一个事件的时间巧合)
答案1
经过大量的汗水、泪水和咖啡,我们终于找到了迄今为止的解决方案(在接受这个答案之前会坚持一下,以防明天感觉再次崩溃)。
配置浏览器以允许来自 localhost 的不安全 SSL 证书通过似乎是必须的(至少对我来说)。此外,由于证书指向 .SE 地址(我在芬兰工作,所以是 .FI),我们还更改了计算机的区域设置,使用瑞典时区。不知道这是否是解决方案的一部分,但这就是我们所做的,如果其他人遇到这个问题,可能值得一试。
答案2
尝试设置更短的有效期。例如,将其设置为五天而不是十年。