Linux

配置 Winbind 以從 Windows 獲取使用者資訊

  • July 3, 2019

我需要在 Ubuntu 10.04.1 客戶端上配置 SAMBA 和 Winbind 以從 Windows Active Directory 獲取它們的 UID、GID 和主目錄。

我安裝了適用於 Unix 的 Windows 服務,並在其中輸入了相關資訊(即 UID、GID、shell 等)。

問題是,無論我嘗試什麼,我都無法讓 winbind 正確獲取該資訊並使用它。我知道問題出在我的/etc/samba/smb.conf文件中。不幸的是,我找不到任何關於如何正確設置它的像樣的文件。

下面是我的/etc/samba/smb.conf文件:

[global]
   security = ads
   realm = DOMAINSERVER.COM
   password server = <<IP.of.domain.server>>
   workgroup = DOMAINSERVER
   winbind refresh tickets = yes
   idmap backend = ad      ## Important
   winbind enum users = yes
   winbind enum groups = yes
   template homedir = /home/%U  ## I tried commenting this out, and it didn't work
   template shell = /bin/bash  ## I tried commenting this out, and it didn't work
   client use spnego = yes
   client ntlmv2 auth = yes
   encrypt passwords = yes
   winbind nss info = sfu     ## Important
   winbind use default domain = yes
   restrict anonymous = 2

真的很感謝這個幫助!

**編輯:**我能想到的唯一導致問題的另一件事是我尚未清除/var/lib/samba/目錄中儲存的舊 winbind 映射。如果我清除它,那會解決問題嗎?順便說一句,我已經開始檢查這份文件,但是,它的年齡可能是個問題:http ://www.ccs.neu.edu/home/battista/articles/winbindenterprise/winbindenterprise.pdf

在找到此位置列出的配置後:http ://www.ccs.neu.edu/home/battista/articles/winbindenterprise/winbindenterprise.pdf ,我能夠讓它正常工作(嗯,大部分)。我需要完成的主要任務是讓每個使用者獲得他們自己唯一的 UID,這個實現就是這樣做的。

我無法從 SFU 檢索所有資訊,但我能夠讓每個使用者獲得一個唯一的 UID,該 UID 在所有機器上都是一致的。此唯一 UID 基於 Windows SID 值。

如果有人知道對此的真正解決方法,那麼我會將其標記為答案。

目前,/etc/samba/smb.conf為我工作的配置:

[global]
   realm = DOMAINSERVER.COM
   workgroup = DOMAINSERVER
   security = ads
   password server = ip.of.pass.server

   idmap uid = 10000-20000
   idmap gid = 10000-20000
   idmap backend = rid:DOMAINSERVER.COM=10000-20000  ## IMPORTANT ##
   allow trusted domains = no                        ## IMPORTANT ##
   template homedir = /home/%U
   template shell = /bin/bash

   winbind use default domain = yes
   winbind enum users = yes
   winbind enum groups = yes
   winbind refresh tickets = yes        ## For Kerberos ##
   client use spnego = yes
   client ntlmv2 auth = yes
   encrypt passwords = yes
   restrict anonymous = 2

更新文件後,我停止了smbdwinbind服務。然後我導航到/var/lib/samba目錄,並刪除了所有文件。

完成後,我重新啟動了我的機器,UID 基於每個使用者 SID 的最後一位數字,並且我已經在多台機器上驗證了這一點。

我希望這篇文章有幫助!

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