今天給大家分享域內環境下windows系統克隆機常見問題——SID衝突的解決方法。
問題描述
從一台主機克隆出多個PC,或者使用同一虛擬機模板克隆出多台虛擬機之後,其SID一致,在加入域環境時會造成安全主體的識別混亂或加域失敗。
查看SID的方式:在命令行窗口輸入“whoami /all”即可查看。
問題分析
SID(安全標識符,Security Identifier)是Windows操作系統中用於唯一標識每一個賬户、用户或計算機的標識符。每台計算機與賬户都有獨立SID,用於權限分配和資源控制。
克隆設備共用同一 SID(安全標識符),而 Windows 通過 SID 唯一標識賬户 / 計算機,重複的 SID 會導致域控無法區分安全主體。只要讓計算機設備的SID不一致即可區分。
解決方法
使用windows系統內置Sysprep工具重置SID就可以實現計算機設備的SID不一致。
注意:建議只在新部署還未正式使用的設備上使用Sysprep,因為這個重置不止會重置SID,還會重置其他計算機特定信息,且使用後會導致windows server某些服務角色無法提供服務[1],Microsoft 不支持在已部署使用的 Windows 上使用 Sysprep,或者出於映像創建以外的目的使用[2]。
使用Sysprep工具重置SID
Sysprep(System Preparation Tool)是微軟官方提供的系統準備工具,無需額外安裝,系統內置,用於在克隆和部署前安全地重置SID。以下是操作流程:
注:使用該工具前,絕對不要使用 Microsoft Store 安裝任何 Microsoft Store 應用。因為Sysprep /generalize 要求為所有用户預配所有應用的原因,在通用化 Windows 映像之前安裝新的 Microsoft Store 應用或更新現有的 Microsoft Store 應用會導致 Sysprep 失敗。從 Microsoft Store 更新應用時,該應用將與登錄的用户帳户相關聯。[3]
操作步驟:
1.當前SID
當前SID
win+R打開運行,鍵入“sysprep”,點擊確定。
彈出Sysprep文件位置,如下圖,點擊“sysprep.exe”文件。
進入系統準備工具,勾選“通用”。點擊確定
系統準備工具界面
Sysprep正在工作
重啓後,簡單配置下即可進入系統。
獲得到新的SID
新的SID
也可以用命令打開sysprep(系統準備工具),如下:
cd C:\Windows\System32\Sysprep
.\sysprep.exe
然後一樣的操作。
注意事項
即使是同一台虛擬機克隆出來的,使用sysprep生成的sid也會是不一樣的。下圖是同一映像第二次跑sysprep,可以看到和上個SID不一樣。
虛擬機克隆鏡像小技巧
如果需要部署的鏡像過多,可以考慮準備個通用化windows映像。
下面講個虛擬機克隆批量部署小技巧,在這一步選擇關機。(這裏以VM虛擬機為例)
關機後拍攝快照
克隆虛擬機的時候選擇這個快照克隆
這種形式部署的虛擬機,會刪除特定於計算機的信息,例如已安裝的驅動程序和計算機安全標識符 (SID),使新虛擬機SID不衝突,比起從零開始部署要更快。
效果如下
克隆機器1的SID:
克隆機器2的SID:
參考網址
[1] 服務器角色的 Sysprep 支持 | Microsoft Learn
[2] Sysprep(系統準備)概述 | Microsoft Learn
[3] Sysprep(通用化)Windows 安裝 | Microsoft Learn
如果覺得寫的不錯的朋友們歡迎關注我ITcatPro,一起解鎖更多微軟產品的運維知識!