“拒绝访问”本质是smb访问链路中网络、认证、权限任一层失败,须按顺序排查:先用test-netconnection验证445端口可达,再检查来宾访问禁用策略与身份验证模型,最后确认共享权限与ntfs权限双重放行且无拒绝项。
客户端访问 windows server 的 smb 共享提示“拒绝访问”,不是权限没点够,而是整个访问链路上某一层被卡住了。必须按顺序检查网络可达性、身份认证有效性、权限叠加结果这三层,跳过任何一层都可能白调半天。
先确认客户端真能连上服务器的 SMB 服务
别只信 ping。SMB 走 TCP 445 端口,和 ICMP 完全无关:
- 在客户端用 PowerShell 运行:Test-NetConnection 服务器IP -Port 445,看是否显示“TcpTestSucceeded : True”
- 如果失败,检查服务器防火墙是否放行入站规则(文件和打印机共享/端口 445)
- 确认服务器上的 Server 服务正在运行(services.msc 中查),且启动类型为“自动”
- 若客户端是 Win11 24H2 或 Server 2025,还要确认服务器是否支持 SMB 签名——不支持会直接拒连
验证身份认证是否被策略拦在门外
Windows Server 默认禁止未经身份验证的来宾访问,这是最常触发“拒绝访问”的原因:
- 客户端访问时没输用户名密码 → 自动以 Guest 身份连接 → 被策略拦截 → 报错:“你组织的安全策略阻止未经身份验证的来宾访问”
- 在服务器上运行 gpedit.msc → 计算机配置 → 安全设置 → 本地策略 → 安全选项 → 找到“网络访问:不允许 SAM 账户和共享的匿名枚举”,设为“已禁用”
- 同样在该路径下,确认“网络访问:本地账户的共享和安全模型”设为“经典:对本地用户进行身份验证”
- 若服务器已加入域,需用 gpresult /h report.html 查看实际生效的组策略,重点核对上述两项是否被域策略强制覆盖
检查共享权限与 NTFS 权限是否真正叠加生效
两者必须同时允许,缺一不可;且 NTFS 权限优先级更高,拒绝项会立即中断访问:
- 右键共享文件夹 → 属性 → 共享 → 高级共享 → 权限 → 确保目标用户(如 Domain\user 或 SERVER\localuser)有“读取”或“更改”权限
- 同一文件夹 → 属性 → 安全 → 编辑 → 添加相同用户 → 分配对应权限 → 勾选“替换子容器和对象的权限”确保继承
- 若“安全”选项卡里没有“编辑”按钮,说明你没所有权 → 点“高级”→“更改所有者”为你自己 → 再重试
- 特别注意:Administrator 账户若未显式添加进 NTFS 权限列表,即使它是内置管理员,也不会自动获得访问权
留意 SMB 协议版本与客户端兼容性
新旧系统混用时,协议协商失败也会表现为“拒绝访问”,而非超时或找不到路径:
- Windows Server 2022/2025 默认要求 SMB 签名,而老客户端(如 Win7、某些 NAS)不支持 → 连接直接断开
- 用 PowerShell 在服务器上查当前配置:Get-SmbServerConfiguration | Select EnableSMB1Protocol, RequireSecuritySignature
- 若需兼容旧设备,可临时启用 SMB1(不推荐长期开启):Set-SmbServerConfiguration -EnableSMB1Protocol $true
- 更安全的做法是升级客户端或在服务器端关闭签名强制:Set-SmbServerConfiguration -RequireSecuritySignature $false











