在 Windows 和 Windows Server 2025 中管理 SMB 方言(预览版)

适用于:Windows 预览体验成员内部版本和 Windows Server 2025

重要

Windows Insider 内部版本和 Windows Server 2025 处于预览版阶段。 此信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 Microsoft 不对此处提供的信息作任何明示或默示的担保。

管理员具有在 Windows Server 和 Windows 客户端中管理 SMB2 和 SMB3 方言的能力。 本文介绍如何使用组策略和 Windows PowerShell 为 SMB 服务器和客户端配置最小和最大 SMB 方言。

默认情况下,SMB 服务器和客户端会自动协商从 SMB 2.0.2 到 3.1.1 的最高匹配方言。 从 Windows 11 Insider 内部版本 25951Windows Server 2025 开始,可以指定使用的 SMB 协议,阻止较旧的、不太安全的版本连接到服务器。 例如,可以指定连接仅使用 SMB 3.1.1,这是协议中最安全的方言。

先决条件

在配置 SMB 方言之前,需要:

  • 在以下操作系统之一上运行的 SMB 服务器。
    • Windows Server 2025。
    • Windows 11 Insiders 内部版本 25951 或更高版本。
  • 计算机的管理权限。
  • 如果对域使用组策略,则需特权才能创建或编辑组策略对象 (GPO) 并将其链接到相应的组织单位 (OU)。

配置最大和最小 SMB 方言

可以使用组策略或 PowerShell 配置可用于协商的方言。 可以为 SMB 服务器和客户端单独设置最小和最大方言。 或者,可以选择不设置最大值。 例如,可以设置最小值 3.1.1,从而有效地将最大值设置为 3.1.1。

SMB 服务器

可以通过以下步骤配置 SMB 服务器可用的方言(即,用于入站连接):

下面介绍如何使用 Set-SmbServerConfiguration cmdlet 并使用 PowerShell 为 SMB 服务器配置最小和最大 SMB 方言:

在权限提升的 PowerShell 提示符下,运行以下命令:

Set-SmbServerConfiguration -Smb2DialectMax {SMB202 | SMB210 |
SMB300 | SMB302 | SMB311 | None} -Smb2DialectMin {None | SMB202 | SMB210 | SMB300 | SMB302 | SMB311}

例如,若要将最小方言设置为 SMB 3.0.0,并将最大方言设置为 SMB 3.1.1,请运行以下命令:

Set-SmbServerConfiguration -Smb2DialectMax SMB311 -Smb2DialectMin SMB300

SMB 客户端

可以通过以下步骤配置 SMB 客户端可用的方言(即,用于出站连接):

下面介绍如何使用 Set-SmbClientConfiguration cmdlet 并使用 PowerShell 为 SMB 客户端配置最小和最大 SMB 方言:

在权限提升的 PowerShell 提示符下,运行以下命令:

Set-SmbClientConfiguration -Smb2DialectMax {SMB202 | SMB210 |
SMB300 | SMB302 | SMB311 | None} -Smb2DialectMin {None | SMB202 | SMB210 | SMB300 | SMB302 | SMB311}

例如,若要将最小和最大方言设置为 SMB 3.1.1,请运行以下命令:

Set-SmbClientConfiguration -Smb2DialectMax SMB311 -Smb2DialectMin SMB311

验证方言协商

可以使用 Wireshark 等网络捕获工具在 SMB 协议协商期间检查客户端和服务器响应。 在以下示例中,客户端仅请求 SMB 3.1.1,因为它配置了最小和最大方言为 3.1.1:

显示 SMB 会话创建的以太网捕获的屏幕截图。