CentOS 6 無法解析一個 AD 帳號
我有一個問題讓我繞圈子。
我們有 14 台使用 Samba/Winbind 和 idmap_ad(安全 = 廣告,idmap 後端 = 廣告)的 Centos 6 AD 集成伺服器,此設置在其中 13 台伺服器中執行良好。
問題
問題在於一台伺服器和一個使用者。從問題框中,您根本無法解決某個特定使用者。此使用者從所有其他伺服器解析。
嘗試在問題伺服器上解決時的結果:
# id username id: username: No such user # wbinfo -i username Could not get info for user username
嘗試在良好伺服器上解析時的結果:
# id username uid=12830(username) gid=100(users) groups=100(users) # wbinfo -i username username:*:12830:100:User Name:/home/username:/bin/bash
嘗試的解決方案
我已經停止了 winbind 和 smb 並清除了 winbind 記憶體 (winbindd_cache.tdb & winbindd_cidmap.tdb) 再次啟動它們 - 不開心
我已經用 -n 開始 winbind 來執行直接查找 - 不高興
不幸的是,這是一個生產伺服器,所以我不能太激烈,我無法在任何其他伺服器上複製問題,包括我使用相同配置建構的測試伺服器。
經過上述測試,我相當確信它不是 winbind,但我不知道為什麼使用者不會解決。
我可以執行
wbinfo -n
並獲取使用者 SID,然後執行net cache list |grep thesid
並查看:密鑰:IDMAP/SID2UID/S-1-5-21-746745685-249376194-4547331-1137 超時:2013 年 4 月 2 日星期二 17:30:32 值:1283 0 密鑰:IDMAP/UID2SID/12830 超時:4 月 2 日星期二 17: 2013 年 30:32 值:S-1-5-21-746745685-249376194-4547331 -1137
這顯示了正確的 UID (12930),因此伺服器可以在 AD 中找到他並提取他的 Unix 屬性。
我可以執行
net lookup sid S-1-etc
並成功返回DOMAIN\username
然後我嘗試
net cache flush
重新啟動 smb 和 winbind,這也沒有解決它。我仍然無法
id
訪問使用者wbinfo -i
,因此使用者無法登錄或訪問 samba 共享,因為伺服器無法解析它們。令人憤怒的是,所有其他使用者都在工作,包括新創建的使用者!
…
任何人都可以幫忙嗎?我被困住了!
…
基本細節如下:
- 域控制器 = 執行在 2003 FFL 和 DFL 和 MSSFU 的伺服器 2008R2
- Linux 伺服器 = CentOS 6.1 Samba 版本 = 3.5.10-125.el6
- Winbind 版本 = 3.5.10-125.el6
該伺服器與該站點上的其他伺服器執行相同的配置,並且執行良好,所以我知道它們不是問題。就好像伺服器根本不喜歡使用者 SID 或類似的東西,並且不會通過標準方法查找他。
如果您需要更多資訊,請告訴我。
謝謝
現在解決了,這對我有用:
清除所有Winbind記憶體並刷新網路記憶體,記得在刪除任何東西之前進行備份!
停止 Winbind 和 Samba 服務:
service winbind stop service smb stop
清除 Samba 網路記憶體:
net cache flush
刪除 Winbind 記憶體:
rm –f /var/lib/samba/*.tdb rm –f /var/lib/samba/group_mapping.ldb
啟動 Samba,然後啟動 Winbind 服務 - 注意:順序很重要
service smb start service winbind start
通過嘗試解析使用者來測試它。