是否有与 nscurl ats-diagnostics 等效的 Powershell?

是否有与 nscurl ats-diagnostics 等效的 Powershell?

我知道nscurl自 El Captain 以来 MacOS 就出现了此功能,但我想知道是否有办法使用 PowerShell 获得类似的结果。

回答展示了如何获取证书,但它并不等同于运行:

nscurl --ats-diagnostics https://google.com:443 

在 macOS 上。Windows 上有类似的东西吗?

答案1

我不知道 PowerShell 的等效物,但以下内容仍然可能有所帮助,要么手动执行相同的操作,要么帮助某人构建适当的 PowerShell 脚本。

从名称和我读到的内容nscurl来看,这是一个包装器,curl它只是确保服务器符合 Apple 的要求,即 TLS 1.2 和 PFS

curl --verbose已经为您提供了类似的东西SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256,因此您需要正确显示它,然后根据 Apple 完整规格测试值。

Apple 完整要求 (https://www.apple.com/business/docs/iOS_Security_Guide.pdf) 实际上是:

  • 密码选择仅包括提供前向保密性的套件,特别是 GCM 或 CBC 模式下的 ECDHE_ECDSA_AES 和 ECDHE_RSA_AES如果某些域禁用了前向保密,则可以添加 RSA_AES
  • 服务器必须支持 TLS v1.2 和前向保密
  • 证书必须有效,并使用 SHA-256 或更高版本签名,且至少具有 2048 位 RSA 密钥或 256 位椭圆曲线密钥

因此,所有这些基本上都是由curl --verbose或甚至给出的openssl s_client

事实上,阅读https://forums.developer.apple.com/thread/14816您发现还有另一个名为 的工具TLSTool可以提供帮助,并且根据其 API,它显然是一个包装器openssl

相关内容