如何在 Linux(smbd)上为最新的 Windows 10 客户端创建可用的 Samba 公共共享?

如何在 Linux(smbd)上为最新的 Windows 10 客户端创建可用的 Samba 公共共享?

我们知道,最新的 Windows 10 升级使得 Samba 客户端拒绝起诉来宾帐户。一些组织甚至让这个错误无法禁用。这使得它无法在 Linux 上为 win10 客户端创建公共 samba 共享

You can't access this shared folder because your organization's security policies block unauthenticated guest access. These policies help protect your PC from unsafe or malicious devices on the network.

我尝试过几种解决方案,例如强制客户端使用 SMBv3(不起作用)将*映射到现有的unix用户(check_sam_security:在passdb中找不到用户xxx。)。我也在互联网上搜索过,但没有找到任何有关 Linux 的信息。

我有一个这样的想法:制作 smbd 服务器总是告诉 Windows“登录成功”,而不是“登录失败,请使用访客帐户”。但我不知道如何配置 smbd 来执行此操作。

如果您知道如何绕过此 win10 限制,请给我提示。谢谢)

答案1

问题不在于 Samba 共享,而在于 Windows 10 下的新安全设置。他们特意让你无法从 Samba 端绕过此行为。他们在以下部分解释了原因原因

症状

在 Windows 10、Windows Server 2019 或 Windows Server 2016 中,SMB2 客户端不再允许执行以下操作:

  • 来宾帐户访问远程服务器。
  • 提供无效凭据后,恢复为访客帐户。

SMBv2 在这些版本的 Windows 中具有以下行为:

  • Windows 10 企业版和 Windows 10 教育版不再允许用户默认使用来宾凭据连接到远程共享,即使远程服务器请求来宾凭据。
  • Windows Server 2016 Datacenter 和 Standard 版本不再允许用户默认使用来宾凭据连接到远程共享,即使远程服务器请求来宾凭据。
  • Windows 10 家庭版和专业版与之前的默认行为没有任何变化。

如果您尝试连接到请求访客凭证而不是适当的经过身份验证的主体的设备,您可能会收到以下错误消息:

您无法访问此共享文件夹,因为贵组织的安全策略阻止未经身份验证的来宾访问。这些策略有助于保护您的电脑免受网络上不安全或恶意设备的攻击。

原因

这种默认行为的改变是经过设计的,并且是 Microsoft 出于安全考虑所建议的。

冒充合法文件服务器的恶意计算机可能会允许用户在不知情的情况下以来宾身份进行连接。Microsoft 建议您不要更改此默认设置。如果远程设备配置为使用来宾凭据,则管理员应禁用来宾对该远程设备的访问并配置正确的身份验证和授权。

自 Windows 2000 以来,Windows 和 Windows Server 均未启用访客访问或允许远程用户以访客或匿名用户身份进行连接。只有第三方远程设备可能默认需要访客访问。Microsoft 提供的操作系统则不需要。

解决

如果您想启用不安全的访客访问,您可以配置以下组策略设置:

  • 打开本地组策略编辑器 (gpedit.msc)。
  • 在控制台树中,选择计算机配置 > 管理模板 > 网络 > Lanman Workstation。
  • 对于设置,右键单击启用不安全的访客登录并选择编辑。
  • 选择“已启用”,然后选择“确定”。

来源

https://docs.microsoft.com/en-us/troubleshoot/windows-server/networking/guest-access-in-smb2-is-disabled-by-default

答案2

如果您为“Everyone”角色分配了“读取”或“读取/写入”权限,则允许您无需身份验证即可连接。另外请记住,共享权限不会覆盖文件的 NTFS 权限,因此也请为文件夹分配“Everyone”的“读取/写入”权限(而不仅仅是共享权限)。

以下是教程 https://websiteforstudents.com/create-shares-everyone-full-access-windows-10-server/

相关内容