使用 Samba 进行 AD 和文件共享

使用 Samba 进行 AD 和文件共享

我们结合使用 Samba 和 WinBind 来允许在 Ubuntu 12.04 机器上进行 AD 登录。我们还使用 Samba 作为文件服务器。我们不希望 Samba 文件共享用于 AD 登录,而只用于我们指定的本地登录。目前,当 AD 用户尝试通过 Samba 查看文件时,他们可以看到我们一个共享中的所有内容。但是,当他们尝试写入更改时,他们会被拒绝。这是第一个问题。

第二个问题是,我们在机器上有一个与 AD 用户同名的本地用户,并且当它登录到 Samba 共享时,它似乎正在使用 AD 帐户,并且无法将更改写入文件系统,而是以本地用户身份登录。

这是我的 smb.conf:

[global]
   workgroup = DOMAIN
   server string = t-u12-dev1
   netbios name = t-u12-dev1
   dns proxy = no
   password server = domainserver.com
   realm = DOMAIN.COM
   local master = no
   log file = /var/log/samba/log.%m
   max log size = 1000
   syslog = 0
   panic action = /usr/share/samba/panic-action %d
   wtmp directory = /var/log
   utmp = yes
   utmp directory = /var/run
   security = ads
   client ntlmv2 auth = yes
   ntlm auth = no
   guest account = nobody
   restrict anonymous = 2
   idmap backend = tdb
   idmap uid = 16777216-33554431
   idmap gid = 16777216-33554431
   idmap config AD:backend = rid
   idmap config AD:range = 100000-999999
   template shell = /bin/bash
   template homedir = /home/%D/%U
   winbind separator = +
   winbind use default domain = yes
   winbind offline logon = true
   winbind enum users = no
   winbind enum groups = no
   winbind refresh tickets = true
   smb ports = 445
   socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
   load printers = no

[sites]
   writeable = yes
   path = /sites
   comment = $HOSTNAME
   browseable = yes
   guest ok = no

如果我执行sudo pdbedit -L -v,我只会看到我希望能够访问 Samba 文件共享的一个本地帐户。

我可以进行哪些更改以便我的 AD 登录继续工作,但不用于 Samba 文件共享身份验证?

答案1

如果您不想将 AD 登录用于任何与 Samba 相关的事情,您可以将 Samba 安全模式更改为“用户”甚至“共享”级别权限吗?这样,您就可以利用内置帐户进行 Samba,但保留 AD 内容进行登录。或者也许我误解了您的要求。

我的服务器上有本地帐户,但我还使用 AD 来管理 Samba。我最终的做法是使用共享上的以下参数,通过 AD 权限将共享阻止到组级别:

valid users = "+AD\Group Name"
force group = "+AD\Group Name"

这样,其他用户甚至无法浏览共享的内容。它似乎也尊重嵌套组,因此我们可以将 AD 组设置为其他组的成员,这样我们向用户开放的内容就会非常细化。

答案2

将以下内容添加到您的共享设置中

[Example]
    comment = Tooltip seen when hovered over the drive
    path = path/to/you/shared/folder
    read only = no
    browsable = yes
    available = yes
    valid users = YOUR VALID USER NAME HERE
    public = no
    writable = yes

相关内容