如何在站点服务器和远程站点系统上启用 TLS 1.2

适用于:Configuration Manager (Current Branch)

为Configuration Manager环境启用 TLS 1.2 时,请先为客户端启用 TLS 1.2。 然后,在站点服务器和远程站点系统上启用 TLS 1.2。 最后,在可能禁用服务器端的旧协议之前,先测试客户端到站点系统的通信。 在站点服务器和远程站点系统上启用 TLS 1.2 需要执行以下任务:

  • 确保在操作系统级别为 SChannel 启用 TLS 1.2 作为协议
  • 更新和配置.NET Framework以支持 TLS 1.2
  • 更新SQL Server和客户端组件
  • 更新Windows Server Update Services (WSUS)

有关特定Configuration Manager功能和方案的依赖项的详细信息,请参阅关于启用 TLS 1.2

确保在操作系统级别为 SChannel 启用 TLS 1.2 作为协议

在大多数情况下,协议使用控制在三个级别:操作系统级别、框架或平台级别以及应用程序级别。 默认情况下,TLS 1.2 在操作系统级别处于启用状态。 确保 .NET 注册表值设置为启用 TLS 1.2 并验证环境是否在网络上正确利用 TLS 1.2 后,你可能希望编辑 SChannel\Protocols 注册表项以禁用较旧的、安全性较低的协议。 有关禁用 TLS 1.0 和 1.1 的详细信息,请参阅 在 Windows 注册表中配置 Schannel 协议

更新和配置.NET Framework以支持 TLS 1.2

确定 .NET 版本

首先,确定已安装的 .NET 版本。 有关详细信息,请参阅确定所安装的 .NET Framework 版本和 Service Pack 级别

安装l .NET 更新

安装 .NET 更新,以便启用强加密。 某些版本的.NET Framework可能需要更新才能启用强加密。 使用以下准则:

  • NET Framework 4.6.2 及更高版本支持 TLS 1.1 和 TLS 1.2。 确认注册表设置,但无需进行其他更改。

    注意

    从版本 2107 开始,Configuration Manager需要针对站点服务器、特定站点系统、客户端和控制台使用 Microsoft .NET Framework 版本 4.6.2。 如果环境中可能,请安装最新版本的 .NET 版本 4.8。

  • 更新 NET Framework 4.6 和更早版本以支持 TLS 1.1 和 TLS 1.2。 有关详细信息,请参阅 .NET Framework 版本和依赖项

  • 如果在 Windows 8.1、Windows Server 2012 R2 或 Windows Server 2012 上使用 .NET Framework 4.5.1 或 4.5.2,强烈建议安装适用于 .Net Framework 4.5.1 和 4.5.2 的最新安全更新,以确保可以正确启用 TLS 1.2。

    供参考,TLS 1.2 首次引入 .Net Framework 4.5.1 和 4.5.2,并具有以下修补程序汇总:

配置强加密

配置.NET Framework以支持强加密。 将 SchUseStrongCrypto 注册表设置设置为 DWORD:00000001。 此值禁用 RC4 流密码,并需要重启。 有关此设置的详细信息,请参阅 Microsoft 安全公告296038

确保在与已启用 TLS 1.2 的系统跨网络通信的任何计算机上设置以下注册表项。 例如,Configuration Manager客户端、站点服务器上未安装的远程站点系统角色以及站点服务器本身。

对于在 32 位 OS 上运行的 32 位应用程序和在 64 位 OS 上运行的 64 位应用程序,请更新以下子项值:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001

对于在 64 位 OS 上运行的 32 位应用程序,请更新以下子项值:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001
[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
      "SystemDefaultTlsVersions" = dword:00000001
      "SchUseStrongCrypto" = dword:00000001

注意

设置 SchUseStrongCrypto 允许 .NET 使用 TLS 1.1 和 TLS 1.2。 设置 SystemDefaultTlsVersions 允许 .NET 使用 OS 配置。 有关详细信息,请参阅使用 .NET Framework 的 TLS 最佳做法

更新SQL Server和客户端组件

Microsoft SQL Server 2016 及更高版本支持 TLS 1.1 和 TLS 1.2。 早期版本和依赖库可能需要更新。 有关详细信息,请参阅知识库文章3135244:对 Microsoft SQL Server的 TLS 1.2 支持

辅助站点服务器至少需要使用 SQL Server 2016 Express 和 Service Pack 2 (13.2.50.26) 或更高版本。

SQL Server Native Client

注意

KB 3135244 还介绍了SQL Server客户端组件的要求。

此外,请确保将SQL Server Native Client更新到至少版本 SQL Server 2012 SP4 (11.*.7001.0) 。 此要求是 (警告) 的先决条件检查

Configuration Manager对以下站点系统角色使用SQL Server Native Client:

  • 站点数据库服务器
  • 站点服务器:管理中心站点、主站点或辅助站点
  • 管理点
  • 设备管理点
  • 状态迁移点
  • SMS 提供程序
  • 软件更新点
  • 已启用多播的分发点
  • 资产智能更新服务点
  • Reporting Services 点
  • 注册点
  • Endpoint Protection 点
  • 服务连接点
  • 证书注册点
  • 数据仓库服务点

使用 Automanage 计算机配置和 Azure Arc 大规模启用 TLS 1.2

为在 Azure、本地或多云环境中运行的计算机跨客户端和服务器自动配置 TLS 1.2。 若要开始跨计算机配置 TLS 1.2, 请使用已启用 Azure Arc 的服务器将它们连接到 Azure,默认情况下,该服务器附带计算机配置先决条件。 连接后,可以通过在 Azure 门户中部署内置策略定义来配置 TLS 1.2,只需单击即可:在 Windows 服务器上 (TLS 1.1 或 TLS 1.2) 配置安全通信协议。 可以在订阅、资源组或管理组级别分配策略范围,并从策略定义中排除任何资源。

分配配置后,可以通过导航到“来宾分配”页并将范围缩小到受影响的资源来详细查看资源的符合性状态。

有关详细的分步教程,请参阅 使用 Azure Arc 持续升级服务器 TLS 协议和 Automanage 计算机配置

更新Windows Server Update Services (WSUS)

若要在早期版本的 WSUS 中支持 TLS 1.2,请在 WSUS 服务器上安装以下更新:

  • 对于运行Windows Server 2012的 WSUS 服务器,请安装更新4022721或更高版本的汇总更新。

  • 对于运行 Windows Server 2012 R2 的 WSUS 服务器,请安装更新4022720或更高版本的汇总更新。

从 Windows Server 2016 开始,WSUS 默认支持 TLS 1.2。 仅在 Windows Server 2012 和 R2 WSUS 服务器上Windows Server 2012需要 TLS 1.2 更新。

后续步骤