Samba 公共共享要求身份验证

Samba 公共共享要求身份验证

Ubuntu 版本 22.04 LTS 我按照这个安装了 sambahttps://ubuntu.com/tutorials/install-and-configure-samba#1-overview 。我没有对 samba.conf 文件做任何更改。我使用 nautilus本地网络共享并创建一个公共共享文件夹。

现在,当我尝试从另一台设备访问该文件夹时,它会要求进行身份验证。当我提供使用 ubuntu 文档设置 samba 时创建的信息时,它允许我访问。但这是一个公共文件夹,我想在本地网络中共享它而无需任何身份验证。我不知道我错过了什么。

答案1

共享文件夹位于哪里?

例如,如果您在 /home/your-user-name/Public 创建了共享,它将不起作用。

这并不是因为 samba,而是因为 Ubuntu 22.04 将主文件夹的默认权限从 755 更改为 750:文件夹的所有者是唯一可以访问甚至遍历该文件夹的人 - 无论是本地还是通过网络。

[] 一种选择是将其改回旧的 Ubuntu 默认设置:

chmod o+rx /home/your-user-name

或者甚至只是将文件夹设置为可供其他人遍历:

chmod o+x /home/your-user-name

[] 另一个选择是强制访客用户为您 = 至少对于所有这些共享。

由于您正在使用本地网络共享编辑 /etc/samba/smb.conf

在该行下方workgroup = WORKGROUP添加这一行 - 使用您自己的用户名:

force user = your-user-name

然后重新启动smbd:

sudo service smbd restart

注意:如果您在 /media/your-user-name/XXX 共享文件夹,也会发生同样的事情。这里最好的办法是使用这种force user方法。

答案2

允许客人useradd要连接到您的 samba 共享,最简单的方法是添加一个至少对您的共享有读取权限的新用户。

假设你添加了一个名为公共并授予该用户对您的共享的读取权限。

您需要告诉 samba 使用该特定用户进行公共访问,您的文件smb.conf可以包含如下内容:

[publicsmb]
path = /mnt/yourpublicshare
public = yes
writeable = yes
browsable = yes
guest ok = yes
force user = publicsmb

相关内容