【发布时间】:2017-11-15 05:53:20
【问题描述】:
我在 Windows(环境同时具有 Windows 2008 和 Windows 10 环境)平台上启用 TLS 1.2 连接时遇到问题。目前,我的私钥由 Windows 证书存储管理,使用 stunnel (v 5.41) 中的 CAPI engineId,它使用 OpenSSL 1.0.2k-fips。因此,stunnel 只能协商 TLS 1.1 连接(SSLv2 和 SSLv3/TLS1 出于明显的原因被禁用)。
我尝试过编译 OpenSSL 1.1.0f 和 stunnel 5.41,但在 CentOS 下交叉编译都没有运气,在 Windows 下使用 MSYS2/MINGW32 或 Cygwin 也没有。
我正在专门寻找一种方法来管理 stunnel 中的 pfx/p12(私钥),而无需借助 Windows 证书存储。我找到了一个关于如何配置 stunnel 以使用 capi 的示例 - 效果很好,但是因为 openssl 1.0.2 不支持 TLS 1.2 中使用的密码,所以只有 TLS 1.1 有效。我需要 TLS 1.2。
https://www.stunnel.org/pipermail/stunnel-users/2017-February/005720.html 记录了为什么我不能将 TLS 1.2 与 OpenSSL 1.0.2 一起使用。
OpenSSL 1.0.2 是 stunnel 5.41 中内置的。重新编译没有用。我正在专门寻找如何配置 stunnel 以指向 pkcs12 键。
【问题讨论】:
-
"但是因为 openssl 1.0 不支持 TLS 1.2 中使用的密码,所以只有 TLS 1.1 有效"。这是不正确的 - openssl 1.0.1 支持 TLS1.2。
-
您应该针对特定问题提出特定问题。由于 Stack Overflow 向您隐藏了关闭原因:“要求我们推荐或查找书籍、工具、软件库、教程或其他非现场资源的问题对于 Stack Overflow 来说是无关紧要的,因为它们往往会吸引固执己见的答案和垃圾邮件。相反,请描述问题以及迄今为止为解决该问题所做的工作。"
-
Matt - OpenSSL 1.0.2 确实支持 TLS1.2,但与 1.0.2 中的 capi 引擎存在冲突,这是访问 Windows 证书管理器中的密钥/证书所必需的,这阻止了我从使用 TLS 1.2:stunnel.org/pipermail/stunnel-users/2017-February/005720.html
-
stunnel 网站上的更新日志说在 5.33 2016.06.23 中添加了对 P12 的支持,并且手册页说只需将其放入
cert=;在此之前(和之后)给定 P12openssl pkcs12转换为 PEM,任何回到 oughties 的 openssl(和 stunnel)都可以处理。
标签: windows openssl pfx pkcs#12 stunnel