【问题标题】:iOS to Node.js Backend SSL handshake failingiOS 到 Node.js 后端 SSL 握手失败
【发布时间】:2017-03-24 18:27:21
【问题描述】:

我已经使用 node.js 和 express 创建了一个 REST API。我现在正在尝试使用 Alamofire 3/https/SSL/TLS 通过安全连接连接到后端。我有一个 CA 签名证书,在服务器上安装了一个 2048 位密钥,并带有“https”npm 模块。服务器在 xcode 中返回的错误如下: 1

当我评估我的 SSLLabs 时,它说证书签名和 TLS 1.2 / 1.1 全部可用等,如下所示。然而有趣的是,在它模拟请求的位置下,iOS 9 (ATS) 的请求记录 - 失败并显示“服务器关闭连接”,如下图所示。

TLS连接成功完成2

iOS 9 模拟请求失败 [3]

当我使用命令时:

nscurl --ats-diagnostics --verbose

除了默认 ATS 安全连接和所有三个 TLS 异常之外,一切都通过了,如下所示:

ATS 默认安全连接失败[4]

3 TLS 异常失败[5]

据我所知,我不确定还可以尝试什么我符合 ATS 的要求:

  • TLS v1.2
  • Forward Secrey(我不知道如何测试)
  • 至少 2048 位密钥
  • -

当我在日志文件中打开 CFNetworking 日志记录时,它指向 CFNetwork/CFNetworkErrors.h 中的错误代码 -1200,其错误原因是“安全连接因未知原因而失败。”

我不知道接下来要尝试什么,谢谢。抱歉,它只会让我发布 2 个链接,所以我不得不删除一些图片。

【问题讨论】:

  • 在 SSLShopper 上一切都返回绿色,包括 CA 链

标签: ios node.js swift ssl tls1.2


【解决方案1】:

答案 - 我在服务器 0.12 上安装了旧版本的 Node.JS。更新到 v6,现在握手词很棒

【讨论】:

    猜你喜欢
    • 2016-01-31
    • 1970-01-01
    • 2020-09-02
    • 1970-01-01
    • 2013-03-23
    • 2016-09-24
    • 2018-07-28
    • 2015-08-17
    相关资源
    最近更新 更多