我是否应该在我的 Web 服务器上禁用 TLS 1.0 和 TLS 1.1 支持

信息安全 tls 协议 单点登录
2021-08-21 22:31:19

目前,我的网络服务器支持

  • TLS 1.0
  • TLS 1.1
  • TLS 1.2

您的一个单点登录客户端将于 2020 年 4 月 1 日迁移到 TLS 1.2。我现在可以删除 TLS 1.0 和 TLS 1.1 吗?或者我需要等到这个客户端迁移到 TLS 1.2,然后我们才能删除它。删除 TLS 1.0 和 TLS 1.1 对我们有什么好处?如果我们不删除 TLS 1.0 和 TLS 1.1,会有什么缺点?

另外我怎么知道我的其他单点登录客户端仍然需要 TLS 1.0 和 TLS 1.1?

谢谢

3个回答

回答您的第一个问题:如果您有不支持 TLS 1.2 的客户端,并且这些客户端使用 TLS 1.0 或 TLS 1.1 连接到您的服务器,并且您在服务器上禁用了 TLS 1.0 和 TLS 1.1,那么这些客户端将无法使用连接到您的服务器。

关于继续支持 TLS 1.0 和 TLS 1.1 的利弊:许多组织已禁用(或即将禁用)TLS 1.0 和 TLS 1.1,因为这些版本的 TLS 中存在已知漏洞。有关这些漏洞的更多信息,请参阅本文在您的服务器上禁用 TLS 1.0 和 TLS 1.1 将保护您的服务器和您的客户端免受这些漏洞的影响。但是,如果您的客户端支持 TLS 1.0 和/或 TLS 1.1,但不支持 TLS 1.2,那么如果您禁用 TLS 1.0 和 TLS 1.1,这些客户端将无法连接到您的服务器。

话虽如此,所有主流 Web 浏览器已经支持 TLS 1.2 很长一段时间了,所以禁用 TLS 1.0 和 TLS 1.1 可能会影响极少数用户,如果您的大多数用户使用最新版本的主流连接到您的网站网页浏览器。

值得一提的是,StackExchange 最近禁用了 TLS 1.0 和 TLS 1.1。对于他们所有的网站,并在此处发布了有关该过程的内容丰富的文章有趣的是,他们发现到其服务器的 TLS 连接中只有不到 1% 使用了 TLS 1.0 和 TLS 1.1(他们怀疑这些连接中的大多数来自机器人)。

关于您关于确定有多少客户端仍在使用 TLS 1.0 和 TLS 1.1 连接到您的服务器的最后一个问题,大多数 Web 服务器都能够记录用于来自客户端的每个请求的 TLS 版本。检查您的 Web 服务器的文档以了解如何启用此功能。

相关:如果我在我的网络服务器上禁用 SSLv3,旧版浏览器会发生什么情况?

例如,您可以使用此处描述的方法分析有关协议的统计信息

根据您的分析,您可以立即禁用已弃用的 TLS 协议,或者提前通知您的客户。

我的建议是启用 TLS 1.3,然后仔细查看哪些浏览器不支持 TLS 1.2 或 TLS 1.3。如果可以,只需禁用 TLS 1.0 和 1.1,然后继续使用 1.2 和 1.3。

另外请记住,您还需要对可以使用的密码套件有相当的选择性,因为其中很多根本不安全。但这是一个完全不同的鱼缸,所以我不会进一步讨论,但我只想说,TLS 协议版本不是你唯一需要担心的事情。

查看一些在线资源,如果您选择禁用 TLS 1.0 和 1.1,您将会遇到以下浏览器/操作系统组合的问题:

  • 安卓 2.3.7
  • 安卓 4.0.4
  • 安卓 4.1.1
  • 安卓 4.2.2
  • 安卓 4.3
  • 百度 2015 年 1 月
  • IE 6 / XP
  • IE 7 / 远景
  • IE 8 / XP(不适用于 TLS v1.0 或 v1.1,因为没有 SNI 或 FS 支持)
  • IE 8-10 / 赢 7
  • IE 10 / 赢手机 8.0
  • Java 6u45(不支持 DH 参数 > 1024 位)
  • Java 7u25
  • OpenSSL 0.9.8y
  • Safari 5.1.9 / OS X 10.6.8
  • Safari 6.0.4 / OS X 10.8.4
  • Safari 6 / iOS 6.0.1(可能适用于 TLS 1.2)
  • Safari 7 / iOS 7.1(可能适用于 TLS 1.2)
  • Safari 7 / OS X 10.9(可能适用于 TLS 1.2)
  • Safari 8 / iOS 8.4(可能适用于 TLS 1.2)
  • Safari 8 / OS X 10.10(可能适用于 TLS 1.2)

正如你所看到的,这些都是相当古老的浏览器和操作系统,所以如果你只是为互联网服务,我不会太担心。在内部这可能有点不同,我听说过一些组织不切换到 TLS 1.2 和 1.3 的恐怖故事,因为一些内部应用程序需要 IE8 或其他东西)。