【发布时间】: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