我使用 Samba 4.6.x 运行 WINS 设置了 FreeNAS,刚发现有些奇怪。我可能可以解决这个问题,但我想了解我看到了什么。
调用 Samba 服务器 SVR,它有一个用户定义的“Jane”和一个密码,工作组是 WORKGROUP。在 Windows 8.1 客户端上,我在凭据管理器中有一个条目,其中包含服务器“SVR”、用户“WORKGROUP\Jane”和密码,并且 WINS 硬设置为服务器的 IP(通过 ipconfig/all 检查)。我还尝试了凭据的变体,例如用户:svr\Jane、svr\jane、SVR/Jane 等。Wireshark 清楚地显示防火墙没有阻碍流量。但 SMB 无法正常工作或在 Windows 中显示连接。
当我查看日志时,基本问题很明显 - 用户或用户域(或两者)为空 [ ] 并被拒绝,因为它是未知用户。我已将 smb.conf 设置为拒绝未知用户并且不允许他们作为访客会话,因此这是数据所需的行为,问题似乎是(根据 nmbd/smbd 日志)协商期间提供的数据不符合预期。
我不认为问题出在服务器端配置上。我可以在客户端 wireshark 和网络交换机上的数据包捕获中看到来自客户端的 SMB 数据包用户 = 域 = (空字符串),并且在服务器端 smbd 日志中传入的客户端请求具有[ ] / [ ] @ 客户端计算机名称,后来,“check_ntlm_password:用户 [ ] -> [ ] 的身份验证失败,错误为 NT_STATUS_NO_SUCH_USER”和“用户 [ ] 的 sam 身份验证失败。”。我还确信这与 Samba 上定义的用户/密码无关,因为“Jane/Jane”存在于 smb.conf 中并被找到pdbedit -L Jane/Jane/JANE
,并且错误是未知用户,而不是密码错误/未经授权。
可能发生了什么事情?为什么它没有获取 Windows 提供的正确凭据,而是接收(或报告)空值?