我在 Ubuntu 12.04(apache 2.2.22-1ubuntu1.4 和 openssl 1.0.1-4ubuntu5.10)和 Ubuntu 13.04(apache 2.2.22-6ubuntu5.1 和 openssl 1.0.1c-4ubuntu8.1)上进行了测试。
这里解释如何做到这一点,但我有以下问题:
当尝试使用时:
SSL协议全部 -SSLv2 -SSLv3 -TLSv1
我收到以下错误:
[错误] 没有可用的 SSL 协议 [提示:SSLProtocol]
当尝试使用时:
SSL协议 TLSv1.1 TLSv1.2
我收到以下错误:
[错误] 没有可用的 SSL 协议 [提示:SSLProtocol]
有趣的是,当我使用时:
SSL协议全部 -SSLv2 -TLSv1
Apache 不会抱怨这个测试报告说我的服务器不支持 SSLv2 和 TLSv1.0,但支持 SSLv3、TLSv1.1 和 TLSv1.2。
对这种奇怪的行为有什么解释吗?也许测试工具坏了?
我如何才能启用 TLSv1.1 和 TLSv1.2?
答案1
环境SSL密码套件仅支持TLSv1.2绕过 Apache 2.2 解析限制TLSv1.1字符串将 TLS 限制为 1.0 以上的版本。
答案2
如何强制所有与我的 Apache 的连接使用 TLSv1.1 或 TLSv1.2?
您可能无法启用它们。Ubuntu 安全团队禁用了 TLS 1.2。我相信他们过去禁用了 TLS 1.1。他们这样做是出于互操作性的原因。
我相信你有三个选择。
首先,什么也不做,使用 Ubuntu 12 版本的 OpenSSL。我相信现在支持 TLS 1.1,但你仍然不会有 TLS 1.2。
第二,建立并维护自己的电力供应协议。有关如何执行此操作的说明,请访问使用自定义包覆盖发行包吗?为了完整性,不存在现有的Ubuntu 和 OpenSSL 的个人软件包档案提供完整的协议。
第三是升级到更高版本的 Ubuntu,例如 Ubuntu 14。我正在尝试确定 Ubuntu 14 目前是否启用了所有这些功能。请参阅Ubuntu 14、OpenSSL 和 TLS 协议?。