在 Windows 和 Windows Server 2025 中管理 SMB 方言
管理员具有在 Windows Server 和 Windows 客户端中管理 SMB2 和 SMB3 方言的能力。 本文介绍如何使用组策略和 Windows PowerShell 为 SMB 服务器和客户端配置最小和最大 SMB 方言。
默认情况下,SMB 服务器和客户端会自动协商从 SMB 2.0.2 到 3.1.1 的最高匹配方言。 从 Windows 11 版本 24H2 和 Windows Server 2025 开始,可以指定所使用的 SMB 协议,阻止较旧的、不太安全的版本连接到服务器。 例如,可以指定连接仅使用 SMB 3.1.1,这是协议中最安全的方言。
先决条件
在配置 SMB 方言之前,需要:
- 在以下操作系统之一上运行的 SMB 服务器。
- Windows Server 2025。
- Windows 11、24H2 或更高版本。
- 计算机的管理权限。
- 如果对域使用组策略,则需特权才能创建或编辑组策略对象 (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: