更新后拒绝访问 Samba 共享

Jos*_*Jos 2 samba 14.04

截至今天早上,我无法访问服务器上的 Samba 共享。无论是从我的 Windows PC 还是我的 Ubuntu 笔记本电脑,我都收到一条“访问被拒绝”消息。此共享已运行多年,smb.conf文件中没有任何修改。

我注意到今天早上 Samba 包已自动更新(我在服务器上使用无人值守更新)。有没有其他人有这个问题,或类似的问题?当前版本是4.1.6+dfsg-1ubuntu2.14.04.11.

这些是来自smb.conf(是的,它已经过时并且对于生产目的来说非常不安全,但是网络从外部得到了很好的保护,我相信我的用户)。我仔细检查过,但该文件与备份中的文件相同:

[global]
   workgroup = NLDOM
   server string = %h server (Samba, Ubuntu)
   dns proxy = no
   log file = /var/log/samba/log.%m
   log level = 3
   max log size = 1000
   syslog = 0
   panic action = /usr/share/samba/panic-action %d
  security = SHARE
  client lanman auth = yes
   passdb backend = tdbsam
   obey pam restrictions = yes
   guest account = root
   passwd program = /usr/bin/passwd %u
   passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
   map to guest = bad user
   load printers = yes
   printing = bsd
   printcap name = /etc/printcap
   socket options = TCP_NODELAY
   usershare allow guests = yes
[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
[Hallway]
    path = /
    read only=No
    guest only =Yes
    guest ok = Yes
    available = yes
    browsable = yes
    public = yes
    writable = yes 
Run Code Online (Sandbox Code Playgroud)

注意:该mount命令成功成功(在 中没有任何问题dmesg),但随后在 Nautilus 中通过该cd命令或在smbclient会话中打开共享总是失败 (NT_STATUS_ACCESS_DENIED)。

小智 5

我今天早上更新 Samba 后发现了这个问题,我找到了一个在这里有效的答案:

http://ubuntuforums.org/showthread.php?t=1600541&p=9995179#post9995179

由于安全问题,Samba 更改了跟踪符号链接的能力:

http://www.samba.org/samba/news/symlink_attack.html

要规避更改,您可以尝试以下操作:

将以下行添加到 [global] 部分smb.conf

follow symlinks = yes  
wide links = yes  
unix extensions = no  
Run Code Online (Sandbox Code Playgroud)

然后重启samba服务:

sudo service smbd restart
Run Code Online (Sandbox Code Playgroud)