Windows server 2012 R2清除并重建SID

其实本文章没什么技术含量,算是一个小小的tips。只是以前遇到好多人对SID都不是很清楚,也不知道如何查看一台机器的SID,ghost备份或者虚拟机生成克隆虚拟机的时候加域也加不进去,在这里我做一些简单的介绍,如果对此了解的话就可以跳过本文了。

首先介绍下什么是SID

SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机帐户的唯一的号码。在第一次创建该帐户时,将给网络上的每一个帐户发布一个唯一的 SID. 如果存在两个同样SID的用户,这两个帐户将被鉴别为同一个帐户,原理上如果帐户无限制增加的时候,会产生同样的SID,在通常的情况下SID是唯一的,他由计算机名、当前时间、当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的唯一性。 
一个完整的SID包括:
・ 用户和组的安全描述
・ 48-bit的ID authority
・ 修订版本
・ 可变的验证值Variable sub-authority values

如果两台机器的SID一样的话,那么我们加域的时候只有一台机器能加,第二台机器再加的时候就会有报错。出现这个情况一般是因为我们用了ghost装系统或者是在做实验的时候用的是虚拟机clone的。另外,装vmware view server的时候也会验证两台机器的SID是否一样的

既然知道了SID对于计算机的重要性,那么我们如何来查看一台机器的SID呢?

其实很简单,我们只用一条命令就可以了。在命令提示符的界面,输入whoami /user就可以了

201301290301146684.jpg

我们可以看到,这台机器的sid是S-1-5-***-79435-500,如果我们用虚拟机生成了一个clone的系统,那么SID会和这台机器一样,微软为此提供了工具,系统内已经内置,我们可以通过sysprep.exe 这个小工具来重置SID

首先cd c:windowssystem32sysprep切换到sysprep目录,然后执行sysprep就可以打开系统准备工具

201301290301149511.jpg

windows server 2012的sysprep版本是3.14

201301290301151026.jpg

我们勾选通用,其他的默认,点击确定就可以了,然后开始清理系统

201301290301153503.jpg

清理完成会自动重启,然后系统需要重新封装,重新解包

201301290301155019.jpg

进入系统后,我们输入whoami /user来查看新获取的SID

201301290301172203.jpg

这次已经是S-1-5-***-33394-500,已经发生变化,我们再加域就不会出问题了

微软关于重置SID有一款小工具,叫newsid,大家可以到微软的官网下载,不过我现在用server 2012的时候每次用newsid重置sid后,一旦重启就会报错,不知道什么原因,也许是版本太低导致的,等待微软下一个版本的sid再试试。大家有兴趣了也可以试试


你可能感兴趣的:(windows,server,计算机,values,安全标识)