Ubuntu

使用 Samba 進行 AD 和文件共享

  • March 27, 2021

我們結合使用 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

如果我執行 a sudo pdbedit -L -v,我只會看到我希望能夠訪問 Samba 文件共享的一個本地帳戶。

我可以更改什麼以使我的 AD 登錄繼續工作,但不用於 Samba 文件共享身份驗證?

如果您不希望 AD 登錄用於任何與 Samba 相關的操作,您可以將您的 Samba 安全模式更改為“使用者”甚至“共享”級別的權限嗎?這樣您就可以利用 Samba 的內置帳戶,但保留 AD 內容用於登錄。或者,也許我誤解了你在哪裡問的問題。

我的伺服器上有本地帳戶,但我也將 AD 用於 Samba。我最終要做的是通過在共享上使用這些參數將共享阻止到具有 AD 權限的組級別:

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

這樣其他使用者甚至無法瀏覽共享的內容。它似乎也尊重嵌套組,因此我們可以將 AD 組轉換為其他組的成員,這樣我們向使用者開放的內容就非常精細。

引用自:https://serverfault.com/questions/611369