文档首页/ 裸金属服务器 BMS/ 常见问题/ 操作系统类/ Windows Server 2012裸金属服务器如何修改SID值?
更新时间:2024-04-22 GMT+08:00

Windows Server 2012裸金属服务器如何修改SID值?

操作背景

SID也就是安全标识符(Security Identifiers),是标识用户、组和计算机账户(管理员账户)的唯一号码。在第一次创建该账户时,将给网络上的每一个账户发布一个唯一的SID。SID由计算机名、当前时间、当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的唯一性。

一个完整的SID包括:

  • 用户和组的安全描述
  • 48-bit的ID authority
  • 修订版本
  • 可变的验证值(Variable sub-authority values)

例如:S-1-5-21-287469276-4015456986-3235239863-500

S

1

5

21-287469276-4015456986-3235239863

500

表示该字符串是SID

SID的版本号

指颁发机构,这里是NT,值是5

表示一系列的子颁发机构

标志域内的账户和组。

目前,所有Windows Server 2012裸金属服务器拥有相同的SID,对于集群部署场景,需要按照本指导修改SID,以保证唯一性。

操作步骤

  1. 登录裸金属服务器操作系统。
  2. 单击左下角的图标,选择“Windows PowerShell”,输入whoami /user命令查看机器的SID值。
    图1 查看SID初始值
  3. 修改Cloudbase-init的配置文件。
    1. 分别打开“cloudbase-init.conf”和“cloudbase-init-unattend.con”文件。

      文件所在目录:C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf

    2. 为两个配置文件都增加一行“first_logon_behaviour=no”。
      [DEFAULT]
      username=Administrator
      groups=Administrators
      first_logon_behaviour=no
      netbios_host_name_compatibility=false
      metadata_services=cloudbaseinit.metadata.services.httpser
      inject_user_password=true
      ...
    3. 删除“cloudbase-init-unattend.conf”配置文件中的“cloudbaseinit.plugins.common.sethostname.SetHostNamePlugin”。
      图2 配置文件修改示例
  4. 打开命令提示符,输入如下命令打开Sysprep窗口。
    进入目录:C:\Program Files\Cloudbase Solutions\Cloudbase-Init\conf> 
    输入命令:C:\Windows\System32\Sysprep\sysprep.exe /unattend:Unattend.xml
  5. Windows Server 2012的Sysprep版本是3.14,按照下图进行设置,单击“OK”开始清理系统。
    图3 System Preparation Tool设置
  6. 清理完成会自动重启,然后系统需要重新封装,重新解包。重启完成后,Windows系统需要重新设置密码,详细操作请参见“重置裸金属服务器密码”。
  7. 登录裸金属服务器操作系统,按照2的方法再次查看SID值。
    图4 查看SID值(修改后)

    可以看到,SID已被修改为新的值。