【问题标题】:The request was aborted: Could not create SSL/TLS secure channel - client issues请求被中止:无法创建 SSL/TLS 安全通道 - 客户端问题
【发布时间】:2020-04-30 13:09:34
【问题描述】:

我在我们的一个项目中遇到了 SSL 握手问题。 需要 2 个说 SSL 证书。

安全协议设置为 TLS12(并与其他协议以及 TLS1、SSL3 一起测试),并且证书回调已正确完成。问题是代码可以在工作站上运行,但不能在任何服务器上运行(win 2008 或 2012)。

我们收到的错误是:The request was aborted: Could not create SSL/TLS secure channel. 我们实际上没有在任何服务器上获得任何服务器证书回调。

这是我们加载证书时的coden-p。我们正在使用 .NET 框架:

cert = new X509Certificate2("certpath", "pass", X509KeyStorageFlags.DefaultKeySet) client.ClientCertificates.Add(cert);

从看来证书链是可以的,因为我们可以通过浏览器访问 WSDL。

求和:我们可以通过工作站访问端点,但不能通过服务器访问。但是可以从浏览器访问端点(在证书选择之后)

【问题讨论】:

  • 使用 Wireshark 等工具捕获 TLS 握手包,然后比较不同的场景。对于 Windows Server 2008(R2 或非 R2)来说,这是很正常的,因为它已停产。 Windows Server 2012及以上版本需要仔细检查Client Hello/Server Hello。

标签: .net ssl-certificate tls1.2


【解决方案1】:

Lex Li 为我指明了正确的方向。 使用 wireshark 时,我注意到 Client Hello(我的客户端在服务器 2008 R2 和 2012 R2 上运行)到达目标服务器,但它返回握手失败。

经过详细检查,我注意到服务器 2008 R2(或服务器 2012 R2)上的客户端应用程序中的密码套件与目标服务器上的密码套件不匹配。

【讨论】:

    猜你喜欢
    • 2017-04-20
    • 2012-06-05
    • 2018-04-22
    • 2012-10-30
    相关资源
    最近更新 更多