我设置了这样的共享:
[global]
security = user
map to guest = Bad Password
usershare allow guests = yes
[vms]
comment = VirtualBox Virtual Machines
path = /home/neil/VirtualBox/HardDisks
guest ok = yes
read only = yes
当我以自己的身份访问共享并输入我的密码时,它运行正常:
$ smbclient //neil-ubuntu/vms -U neil
Enter neil's password:
Domain=[SHUTTERSTOCK] OS=[Unix] Server=[Samba 3.4.0]
smb: \>
但是当我以访客身份访问它时,它不起作用:
$ smbclient //neil-ubuntu/vms -U guest
Enter guest's password:
Domain=[SHUTTERSTOCK] OS=[Unix] Server=[Samba 3.4.0]
tree connect failed: NT_STATUS_BAD_NETWORK_NAME
无论我输入什么密码。
有人知道为什么吗?
另外,为什么 smbclient 会打印这些无用的错误信息?
答案1
我记得有类似的问题。我认为这是由于路径中某处的目录权限缺少读取权限所致。检查该路径的目录权限是否为 755。
如果路径不存在,也会返回此错误。
答案2
我只是想在这里提出一个不同的问题,但错误消息相同。如果您使用的是 Samba < 3.2,则无法连接到 Windows Server 2008 AD 服务器。这包括 CentOS(可能还有 RHEL)5 中包含的 Samba 版本,当前为 Samba 3.0.23。截至 2011 年 8 月,Samba 的当前版本为 3.6。
我使用了 Sernet 托管的 CentOS 5 的 Samba 存储库http://www.enterprisesamba.org/index.php?id=125安装 Samba 3.4 并连接到 Win 2008 服务器。不要忘记安装/更新 winbind(添加存储库后,使用 yum install samba3-winbind),并且您可能需要更新 /etc/krb5.conf(我刚刚将其移动到 /etc/krb5.conf.bak,一切正常)。
我Got NTLMSSP neg_flags=0x62898215
在 smbclient 日志中也频繁收到。
答案3
冒着重提旧话题的风险,“权限”评论几乎是正确的。我疯狂地检查东西,一切看起来都正确,但它仍然无法工作。
显而易见的答案:我已打开 SElinux 并拒绝任何访问我试图共享的(非标准)位置。
setenforce 0
然后它突然就正常工作了。当然,现在我会重新打开它并正确修复配置。说实话……
答案4
尝试#sudo smbpasswd -a guest
试一试。如果这不起作用,请尝试将“guest”添加到 /etc/samba/smb.conf 中的“valid users”行,如下所示,
valid users = user1, guest