我们在。net 4.8中有一些基于HttpListener
的自定义http web服务。这个东西在不同的客户系统上工作得很好,但是在我们的一个新客户系统上,我们在使SSL工作方面遇到了麻烦。
问题是,访问一个简单的echo页面(只是将请求转储到输出中),现代浏览器,如firefox, chrome和edge,一旦侦听器开始写入输出流,连接就会重置。Internet Explorer和webrequest工作没有任何问题
我的头发拔出来,我能找到的是建议重新安装IIS,因为这似乎是一个已知的问题在旧的ASP.net解决方案。但是我们不使用IIS。
下一个问题是,客户的IT非常严格,不允许我们安装像WireShark或Fiddler这样的工具。
我不知道是否有任何其他可能的netsh命令组合来添加ssslcert,我确定现在我已经完成了一切。我们甚至使用了我们自己的证书,但是没有成功。
编辑这似乎与客户正在使用Windows Server 2022这一事实有关。
这是Server 2022的一个已知问题
https://borncity.com/win/2022/10/22/fix-des-ssl-tls-verbindungsproblems-stand-der-sonderupdates-und-betroffene-anwendungen-21-10-2022/
通过注册表禁用TLS 1.3为我们解决了这个问题。