windows smb共享安全加固需禁用smbv1、启用smbv2/v3,严格实施ntfs与共享权限双控,强制签名与加密,隐藏共享并精准放行防火墙端口,域环境通过组策略统一管控。
windows smb共享的安全加固,核心不是堆砌功能,而是理清权限逻辑、收紧协议入口、阻断常见攻击路径。配置不复杂,但容易忽略细节。
关闭SMBv1,强制使用SMBv2/v3
SMBv1存在多个高危漏洞(如MS17-010),且已被微软默认禁用。继续启用等于主动打开后门。
- 运行命令检查状态:Get-SmbServerConfiguration | Select EnableSMB1Protocol, EnableSMB2Protocol, EnableSMB3Protocol
- 若EnableSMB1Protocol为True,立即禁用:Set-SmbServerConfiguration -EnableSMB1Protocol $false -Force
- 确保EnableSMB2Protocol和EnableSMB3Protocol为True(默认已启用)
- 对旧设备兼容需求,应升级终端或部署网关转换,而非回退协议
权限分层:NTFS + 共享权限双控
仅靠NTFS权限或仅靠共享权限都不安全。系统取二者交集,宽松的一方会拖累整体控制力。
- 共享权限层:拒绝Everyone,只给明确安全组(如Domain_Finance_RW)分配“更改”或“读取”,避免“完全控制”
- NTFS权限层:取消继承,清除默认用户/组,按需添加——管理员、SYSTEM保留完全控制;业务组按最小原则赋权
- 特别注意:不要在根目录给Domain Users写入权限,否则子文件夹即使设了拒绝,也可能因继承残留被绕过
启用SMB签名与加密(尤其跨公网或混合网络)
签名防中继与篡改,加密防流量嗅探。Windows Server 2019+ 和 Win10 1809+ 已支持SMB 3.1.1加密。
- 启用服务器端签名强制:Set-SmbServerConfiguration -RequireSecuritySignature $true -EnableSecuritySignature $true
- 对高敏感共享启用加密:Set-SmbShare -Name "FinanceData" -EncryptData $true
- 加密可按共享、服务器或客户端映射时启用,无需额外硬件(AES-128-GCM为默认协商算法)
- 注意:启用加密后,老旧SMB客户端(如部分嵌入式设备)可能无法连接,需提前验证
隐藏共享 + 防火墙精准放行
隐藏共享(名称后加$)不显示在浏览器中,虽非强安全手段,但能减少自动化扫描暴露面。
- 创建共享时命名如HRData$,访问仍可用\serverHRData$
- 防火墙只开放必要端口:TCP 445(SMB默认);若用SMB over QUIC,还需放行UDP 443或自定义端口
- 禁用“网络发现”和“文件共享”的公共网络配置,仅在专用网络启用
- 域环境中,通过组策略统一管控:计算机配置→管理模板→网络→Lanman工作站/服务器→禁用不安全的来宾登录











