標籤:
最近在公司搭建AD網域控制站,發現無法在電腦真正添加域使用者,也就是添加的使用者雖然可以在本地登入,但是無法遠程登入,嘗試多種方法都無法解決,而最終原因居然是虛擬機器導致的伺服器的SID衝突。本文記錄下該問題的發生原因和解決過程。
添加域賬戶
在域使用者裡面添加一個使用者,如:
(圖1)
將使用者添加到“開發組”中去,然後讓該使用者在另外一台伺服器遠程登入:
(圖2)
無法登入,甚至使用網域系統管理員,也無法登入,看來必須去遠程伺服器上增加一個域使用者到本機使用者組上面去:
(圖3)
選擇Administrators組,點擊添加按鈕,選擇一個域使用者,然後添加,最好確定。
用該域使用者登入,結果還是前面的介面,無法登入。
再次回到遠程伺服器上,開啟Administrators組,發現之前添加的域使用者沒有添加進去。
重複上面的操作,問題依舊,並且域使用者無法添加到本地任何使用者組。
去群裡面諮詢有關大牛,給了各種連結,有人說是本地安全性原則問題,有人說是防火牆設定,也有人說是網域控制站設定問題。
將前面的域使用者加入 Active Domain Admins組,然後再去遠程伺服器登入,問題依舊。
(圖4)
SID衝突
最後,找到原來公司的營運同事諮詢,他告訴我,可能是SID衝突,原因是上面圖片中域使用者名稱後面的一串字串:
S-1-5-21-2625116194-3287851518-1169719709-500
在命令列,輸入下面的命令:
C:\Users\Administrator>whoami /user使用者資訊----------------使用者名稱 SID================= =============================================dxn\administrator S-1-5-21-2625116194-3287851518-1169719709-500
在網域控制站伺服器上,同樣輸入上面的命令,顯示的SID值果然跟遠程伺服器是一樣的。
看來同事說的問題是真的。
那麼,《什麼是SID》呢?
搜尋了下,找到如下解釋:
SID 只是安全性識別碼的縮寫而已。SID 的全稱是“安全性識別碼(Security Identify)”,是為域或本機電腦中建立的每個帳戶分配的唯一 ID 字串(例如,S-1-5-21-1454471165-1004336348-1606980848-5555)。
Active Directory活動目錄域中每一個對象也有一個唯一標識,成為GUID。GUID=SID + RID 。活動目錄中專門有一個操作主機角色叫RID,就是為域中的每個對象分配一個RID號。最終GUID在所有域,乃至全世界都是唯一的。
實際上,電腦使用 SID 來跟蹤每個帳戶: 如果重新命名系統管理員帳戶,電腦仍然知道哪個帳戶是系統管理員帳戶。 這是因為 SID 不同於名稱,它永遠不會更改。
電腦賬戶為了更進階別的安全性要求,會與一些電腦硬體資訊相關聯。由於活動目錄資料庫已經不再信任電腦賬戶,認為這個電腦賬戶是不安全的,所謂的安全通道 security channel被破壞。
這就是前面為何在遠程伺服器添加域使用者不成功的原因。
配置SID
SID重複的原因是怎麼回事呢?
這往往是系統通過複製安裝,或者複製的虛擬機器的原因,這些方式儘管安裝部署系統快速,但卻造成了現在的問題。解決方式,就是重新設定系統,產生新的SID。可以採用下面的命令:
C:\Users\Administrator>cd C:\>dir c:\windows\system32\sysprep 磁碟機 C 中的卷沒有標籤。 卷的序號是 B0D1-4221 c:\windows\system32\sysprep 的目錄2010/11/22 02:52 <DIR> .2010/11/22 02:52 <DIR> ..2010/11/22 02:52 <DIR> en-US2015/12/17 12:23 <DIR> Panther2009/07/14 09:39 128,512 sysprep.exe2010/11/22 02:52 <DIR> zh-CN 1 個檔案 128,512 位元組 5 個目錄 91,940,900,864 可用位元組c:\windows\system32\sysprep\sysprep.exe
然後,出現下面的配置程式介面:
(圖5)
運行sysprep.exe程式以後,系統參數全部很多都重新設定了,包括IP配置資訊,系統重啟後,伺服器的IP將變成自動擷取的,並且伺服器的名字也修改了,所以如果你不能在現場動作伺服器,或者你沒有虛擬機器的管理員權限,千萬不要運行sysprep.exe程式。
(圖6)
經過稍長時間的配置,重新進入系統,將當前伺服器加入域,然後佈建網域使用者登入許可權了,也就是上面的(圖3),不會在域使用者名稱後面跟一長串SID字元了。經過這樣的配置後,域使用者終於可以遠程登入伺服器了。
最後,感謝你的支援看完本文(資料開發利器-SOD開源架構 http://pwmis.codeplex.com )。
解決伺服器SID引起虛擬機器不能加入AD域使用者,無法遠程登入的問題