强制 Samba 要求 Windows 客户端提供凭据

强制 Samba 要求 Windows 客户端提供凭据


我正在使用 Samba 和 Linux 设置文件服务器。我已设置共享,并且可以通过 Windows 文件资源管理器连接到它,但它不要求任何登录详细信息,我无法修改任何文件/目录。我为所有将使用该服务器的人创建了用户帐户。以下是我的 /etc/samba/smb.conf 中的共享信息。

    [xshare]
      comment = X's Samba Share
      path = /home/x/share
      read only = no
      browsable = yes
      valid users = x, luca
      security = user

当从 Windows 资源管理器连接到我的服务器时,我只会被发送到没有权限的空的正确目录,因为我不需要输入凭据。所以,我的问题是,如何强制 Samba 在连接时要求输入密码,以允许该用户编辑目录中的文件。对于将使用共享的用户来说,文件权限是正确的,所以我需要的只是要求登录。

我尝试将管理员用户添加到全局共享,但它没有任何作用。任何帮助都值得感激。

答案1

我能想到一种可能发生这种情况的情景:

[1] 你在 Samba 服务器上创建了一个名为“luca”的用户

[2] 该用户名在 Windows 上也存在。

[3] 你使 luca 的 samba 密码与 luca 在 Windows 上的登录密码相匹配。

Windows smb 客户端在访问服务器时始终会传递当前用户的登录用户名和密码 - 它会自动执行此操作。这并不是说您的共享不需要凭据,而是它们已经传递并被接受了。

关于编辑权限问题的第二部分 - 将您的共享定义更改为:

[xshare]
      comment = X's Samba Share
      path = /home/x/share
      read only = no
      browsable = yes
      valid users = x, luca
      force user = x

该共享将仅允许 x 和 luca 访问,但一旦他们进入该共享,他们所做的一切都将以用户 x 的身份进行。注意:我从您的共享定义中删除了“security = user”选项,因为它属于 [global] 部分。

相关内容