我们有一个C#.NET 4.5桌面应用程序,该应用程序在半年前发布并且一直运行到今天。 在启动时,应用程序向我们的Web API发送JSON请求,但它失败并带有
{"The request was aborted: Could not create SSL/TLS secure channel."}
我找到了其他解决方案的主题:
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
它适用于我们的应用程序,但最大的问题仍然存在: 半年后为什么它在数千台计算机上运行?
我想到的第一件事是:夏令时,今天发生的时间变化。所以我检查了服务器时间,更新了SSL证书并重新启动了服务器,但问题仍然存在。
有什么想法吗?
应用: .NET 4.5
服务器: Ubuntu 16.04.2 LTS nginx的/ 1.11.10
更新 在为域禁用Cloudflare后,问题就消失了。我不知道究竟是什么导致了这种情况,但我怀疑它实际上是......与DST时区和SSL握手有关。
答案 0 :(得分:1)
我们有完全相同的问题。
今天早上出现Cloudflare支持TLS 1.0 / 1.1(在我们的例子中)。 我把它提升到Cloudflare。但他们还没有回应。
与此同时,我在社区中提问(https://community.cloudflare.com/t/was-the-tls-1-0-1-1-not-supported-since-4am-utc-2017-10-30/7586/3)。还有其他用户受到影响。
我最初的想法是DST,但今天是DST切换后的第二天,加上我们的服务器/客户端使用UTC在同一台服务器上运行。所以它不能归因于DST问题(除非Cloudflare内部存在某些内容)
现在的解决方案与您所做的一样,强制客户端使用TLS 1.2 +