2

Windows Server 2025:文件服务安全新特性

 7 months ago
source link: https://www.sysgeek.cn/windows-server-2025-file-services-new-security-features/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
windows-server-1.jpg

Windows Server 2025 的标准版和数据中心版都支持 SMB over QUIC,这标志着「文件服务」角色的重大进步。虽然 SMB over QUIC 是未来趋势,但传统的传输方式仍将继续保留。

在 Windows Server 2025 中,为了增强传统 SMB over TCP 或 RDMA 的安全性,微软为其引入了多项新安全机制。

Windows Server 2025 文件服务安全增强(SMB、NTLM)

禁用 SMB 的 NTLM 身份验证

默认情况下,客户端和服务器之间会通过 SPNEGO 协议进行协商,以确定要使用的身份验证方式。通常,在域成员计算机之间的连接中,系统会优先选择 Kerberos 验证。

但在以下特定情况下,可能会回退到使用 NTLM 认证:

  • 客户端通过 IP 地址而非 FQDN 建立连接时;
  • SMB 服务器未在域中注册相应的 Kerberos CIFS 服务名称时;
  • 用户使用本地用户账户(非域账户)登录 SMB 服务器时。

随着时间的推移,Kerberos 验证的增强功能预计将逐步替代 NTLM。为了推动这一变革,在 Windows Server 2025 中,管理员可以选择禁用 SMB 的 NTLM 身份验证。

如果遇到必须使用 NTLM 验证的场景,而管理员又禁止 SMB 连接使用 NTLM,将会无法建立 SMB 连接,从而导致连接失败。

方法 1:使用组策略禁用 SMB NTLM 验证并设置例外

在 Windows 11 和 Windows Server 2025 中,要禁止 SMB 客户端在建立连接时采用 NTLM 验证,可以更改以下组策略:

1在组策略中导航至「计算机配置」>「管理模板」>「网络」>「Lanman 工作站」。

2找到并启用「阻止 NTLM(LM、NTLM、NTLMv2)」策略。

new-security-features-windows-server-2025-file-services-p2.jpg

3如果环境中存在必须使用 NTLM 的特定服务器,可以启用「阻止 NTLM 服务器例外列表」策略并设置例外。

new-security-features-windows-server-2025-file-services-p3.jpg

方法 2:使用 PowerShell 限制 NTLM 验证

PowerShell 提供了一个灵活的管理 SMB NTLM 验证的方式。管理员可以通过 PowerShell 命令,在 SMB 服务器上禁用 NTLM 验证,既可以全局设置,也可以针对特定的服务器。

  • 禁用所有或指定 SMB 服务器的 NTLM 验证:
复制
Set-SmbClientConfiguration -BlockNTLM $true

该命令会在全局范围内关闭 SMB 客户端的 NTLM 身份验证功能。

  • 对特定 UNC 路径限制 NTLM 认证:
复制
New-SmbMapping -RemotePath \\server\\share -BlockNTLM $true

上述命令会对指定的服务器和共享路径创建一个新的 SMB 映射,并关闭其 NTLM 验证。

  • 要查询当前 SMB 客户端的 NTLM 验证状态,可以执行:
复制
Get-SmbClientConfiguration | Select-Object BlockNTLM
  • 要检查特定 SMB 映射的 NTLM 验证状态,可使用:
复制
Get-SmbMapping | Select-Object RemotePath, BlockNTLM

对 net use 命令的更新:

在 Windows 11 和 Windows Server 2025 中,net use命令现在也支持对 NTLM 身份验证方式进行控制。通过新增的/blockntlm选项,我们可以明确设置是否允许使用 NTLM 认证:

复制
net use \\server\share /user:username password /blockntlm:no

当使用/blockntlm:no参数时,将启用 NTLM;使用/blockntlm:yes,则会禁止 NTLM 验证。

限制 NTLM 登录尝试的频率

如果有攻击者获取到用户名列表,就可以在很短的时间间隔内向 SMB 服务器发送 NTLM 登录尝试。虽然管理员可以设置「账户锁定策略」来限制一定时间内的登录尝试次数,但该功能可被用于 DoS 拒绝服务攻击。

Windows Server 2025 引入了「身份验证速率限制器」策略,以防止滥用 SMB NTLM 身份验证。它定义了两次登录尝试之间必须间隔的时间,能有效减缓自动攻击的频率,并显著延暴力猜解密码的时间。

1在组策略中导航至「计算机配置」>「管理模板」>「网络」>「Lanman 服务器」。

2找到并启用「身份验证速率限制器」策略。

new-security-features-windows-server-2025-file-services-p4.jpg

策略中不能直接配置无效登录尝试的时间间隔,需要通过 PowerShell 来完成:

  • 查看 SMB 服务器当前配置:
复制
Get-SmbServerConfiguration | Select-Object InvalidAuthenticationDelayTimeInMs
  • 设置登录尝试之间的时间间隔,微软的建议为 2000 ms:
复制
Set-SmbServerConfiguration -InvalidAuthenticationDelayTimeInMs <milliseconds>
new-security-features-windows-server-2025-file-services-p5.jpg

采用这种方法,既能保持系统安全,又能避免大规模账户锁定的情况发生。

指定 SMB 协议版本

默认情况下,Windows 允许使用所有 SMB 协议版本。为了加强安全性,Windows Server 2025 可以强制指定允许的 SMB 协议(最低和最大)版本。

方法 1:使用组策略指定 SMB 协议版本

1相关组策略设置可以在以下路径中找到:

  • SMB 客户端:「计算机配置」>「管理模板」>「网络」>「LanMan 工作站」
  • SMB 服务器:「计算机配置」>「管理模板」>「网络」>「LanMan 服务器」

2配置「强制实施 SMB 的最大版本」和「强制实施 SMB 的最低版本」策略。

new-security-features-windows-server-2025-file-services-p6.jpg

方法 2:使用 PowerShell 指定 SMB 协议版本

管理员也可以通过以下 PowerShell 命令来查看或指定 SMB 协议的最低和最大版本:

  • SMB 客户端配置命令:
复制
#查看
Get-SmbClientConfiguration | Select Smb2DialectMin,Smb2DialectMax

#设置
Set-SmbClientConfiguration -Smb2DialectMin SMB202 -Smb2DialectMax SMB311
  • SMB 服务器配置命令:
复制
#查看
Get-SmbServerConfiguration | Select Smb2DialectMin,Smb2DialectMax

#设置
Set-SmbServerConfiguration -Smb2DialectMin SMB202 -Smb2DialectMax SMB311
new-security-features-windows-server-2025-file-services-p7.jpg

Smb2DialectMinSmb2DialectMax参数可设置为从 SMB202(即 SMB 2.0.2)到 SMB311(即 SMB 3.1.1)的任何版本。通过这种方式,管理员能够确保网络中的设备符合最新的安全标准。

默认启用 SMB 签名

在以往,只有与域控制器的连接才需要 SMB 签名。现在,微软决定在客户端和服务器上默认启用 SMB 签名,以抵御中间人攻击和防止数据被篡改。

由于可能会与老旧系统存在兼容性问题,这一决定被推迟了。但是,管理员仍需为这一变化做好准备。

当遇到不支持 SMB 签名的系统,需要保持兼容性时,管理员可以通过 PowerShell 命令来查看或禁用 SMB 签名:

  • 查看和禁用客户端 SMB 签名:
复制
#查看
Get-SmbClientConfiguration | Select-Object RequireSecuritySignature

#禁用
Set-SmbClientConfiguration -RequireSecuritySignature $false
  • 查看和禁用服务器 SMB 签名:
复制
#查看
Get-SmbServerConfiguration | Select-Object RequireSecuritySignature

#禁用
Set-SmbServerConfiguration -RequireSecuritySignature $false
new-security-features-windows-server-2025-file-services-p8.jpg

要在组策略中修改 SMB 签名相关的设置,请执行以下步骤:

1在组策略中导航至「计算机配置」>「Windows 设置」>「安全设置」>「安全选项」。

2分别配置以下策略:

  • SMB 服务器:
    • Microsoft 网络服务器:对通信进行数字签名(始终)
    • Microsoft 网络服务器:对通信进行数字签名(如果客户端允许)
  • SMB 客户端:
    • Microsoft 网络客户端:对通信进行数字签名(始终)
    • Microsoft 网络客户端:对通信进行数字签名(如果服务器允许)
new-security-features-windows-server-2025-file-services-p9.jpg

防火墙规则的新变化

  • 在以前的 Windows Server 版本中,安装「文件服务」角色后,系统会自动开启一系列网络服务的防火墙规则。
  • 在 Windows Server 2025 中,这种自动启用防火墙规则的做法已经被废除。以提高系统安全性,减少不必要的网络暴露风险。因此,管理员需要更加积极地手动管理防火墙规则,根据实际需求来启用或禁用特定的服务和端口。

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK