Samba 4.1.17-Debian 访问文件共享被拒绝

Samba 4.1.17-Debian 访问文件共享被拒绝

我刚刚在虚拟机上安装了 Debian 8 (Jessie)。我安装了 Samba 4.1.17 服务器,目的是在我的网络上共享文件夹。我没有对配置进行任何更改,只是在文件末尾添加了以下几行/etc/samba/smb.conf

[public]
comment = HTTPD public directory
read only = no
locking = no
path = /var/www
guest ok = no

我添加了我的用户smbpasswd并确保用户在/var/www目录上拥有 777 权限。

smbclient -L \\\\debian64-plankje我可以从我的旧 Debian 7 VM 远程列出来自本地主机的共享。(debian64-plankje是服务器的主机名)

如果我设置了,guest ok = yes那么我就可以匿名连接到共享smbclient \\\\debian64-public\\public,但是guest ok = no设置后我会出现错误tree connect failed: NT_STATUS_ACCESS_DENIED

经过广泛的 Google 搜索,我并没有得到任何提示来解决这个问题,而过去几个小时我一直在尝试解决这个问题。就像我的旧服务器一样,我使用了默认配置,只添加了上面提到的行。

以下是我的文件的内容smb.conf,希望您能帮助我找出为什么会出现错误NT_STATUS_ACCESS_DENIED

[global]
workgroup = WORKGROUP
dns proxy = no

log file = /var/log/samba/log.%m
max log size = 1000
syslog = 0
panic action = /usr/share/samba/panic-action %d

server role = standalone server
passdb backend = tdbsam
obey pam restrictions = yes
unix password sync = yes
passwd program = /usr/bin/passwd %u
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
pam password change = yes
map to guest = bad user

[homes]
comment = Home Directories
browseable = no
read only = yes
create mask = 0700
directory mask = 0700
valid users = %S

[printers]
comment = All Printers
browseable = no
path = /var/spool/samba
printable = yes
guest ok = no
read only = yes
create mask = 0700

[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no

[public]
comment = HTTPD public directory
read only = no
locking = no
path = /var/www
guest ok = no

答案1

检查了 的输出后smbtree -d3,以下行引起了我的注意:resolve_lmhosts: Attempting lmhosts lookup for name DEBIAN64-PLANKJ<0x20>。事实证明,由于我的主机名被解析为 NETBIOS 名称,因此我被限制在 15 个字符内。我的原始主机名debian64-plankje是 16。这导致 Samba 服务器出现一些意外行为,匿名连接成功,但需要凭据的连接失败。

deb64-plankje通过编辑/etc/hostname和将我的服务器的主机名重命名为/etc/hosts,然后重新启动(以确保采用了新的主机名)解决了这个问题:)。

相关内容