🖥️ 安装与配置 KMS 主机

批量激活服务 KMS · 第 2 篇 · 适用于 Windows Server 2019 / 2022 / 2025

📑 目录

  1. 1. 安装 Volume Activation 角色
  2. 2. 配置 KMS 主机密钥
  3. 3. 激活 KMS 主机
  4. 4. 验证 KMS 主机状态
  5. 5. 配置 KMS 客户端激活策略
  6. 6. 常见问题

1. 安装 Volume Activation 角色

KMS 主机需要安装 Volume Activation 角色(Windows Server 2016 及以后版本)。

1

打开 服务器管理器 → 点击 添加角色和功能

2

安装类型选择 基于角色或基于功能的安装 → 下一步

3

服务器选择 从服务器池中选择服务器 → 选择本机 → 下一步

4

选择服务器角色 页面,勾选 批量激活服务(Volume Activation Services) → 添加功能 → 下一步

5

默认勾选 批量激活工具(VAMT) → 下一步 → 安装

6

安装完成后点击 关闭

PowerShell - 安装 Volume Activation
# 安装 Volume Activation 角色(包含 VAMT)
Install-WindowsFeature -Name "VolumeActivation" `
    -IncludeManagementTools

# 验证安装
Get-WindowsFeature -Name "VolumeActivation"

# 输出应显示:
# Display Name: Volume Activation Services
# Name: VolumeActivation
# Install State: Installed
💡 说明

Volume Activation 角色安装后,可以使用 slmgr.vbs 脚本管理 KMS 主机,同时会安装 VAMT(Volume Activation Management Tool)用于批量管理。

2. 配置 KMS 主机密钥

安装 Volume Activation 角色后,需要安装 KMS 主机密钥(KMS-HK)

CMD - 安装 KMS 主机密钥
REM 安装 KMS 主机密钥(需要管理员权限运行 CMD)
REM 密钥从 VLSC 或 Microsoft Business Center 获取
slmgr.vbs /ipk KMS_HOST_KEY

REM 示例(Windows Server 2022 Datacenter KMS Host Key):
slmgr.vbs /ipk D6YCC-NH8T2-9Q9G7-88YBR-4DT4F

REM 如果需要,可以安装多个产品的 KMS 密钥(Windows + Office)
REM Windows Server 2022 KMS 密钥
slmgr.vbs /ipk WS2022_KMS_KEY

REM Office 2021 KMS 主机密钥(需要先安装 Office 2021 KMS 主机包)
REM 见第 8 篇文章
⚠️ 重要

KMS 主机密钥(KMS-HK)不同于 KMS 客户端密钥(CSVLK)。KMS-HK 用于激活 KMS 主机本身,CSVLK 用于配置客户端指向 KMS 主机。

实验环境可以使用微软提供的 测试密钥(N 版),但不会真正激活。正式环境必须使用从 VLSC 获取的正式密钥。

3. 激活 KMS 主机

安装 KMS 主机密钥后,需要激活 KMS 主机。可以选择在线激活或电话激活。

CMD - 激活 KMS 主机
REM 在线激活 KMS 主机(需要互联网连接)
slmgr.vbs /ato

REM 如果无法联网,使用电话激活
REM 1. 获取安装 ID
slmgr.vbs /dti

REM 2. 拨打微软激活中心电话,提供安装 ID
REM 3. 获取确认 ID 后,使用以下命令激活
slmgr.vbs /atp CONFIRMATION_ID

REM 验证激活状态
slmgr.vbs /dlv
💡 提示

KMS 主机激活后,会发布 SRV 记录到 DNS(_vlmcs._tcp.domain.com),客户端可以通过 DNS 自动发现 KMS 主机。

如果 DNS 记录未自动创建,参见第 7 篇文章手动配置 DNS SRV 记录。

4. 验证 KMS 主机状态

CMD - 验证 KMS 状态
REM 查看详细的 KMS 激活信息
slmgr.vbs /dlv

REM 输出示例:
REM Description: Windows(R), ServerStandard edition
REM Edition ID: ServerStandard
REM Active Directory Activation: Not enabled
REM KMS Product Key: Enabled
REM KMS Machine: KMS 主机名
REM KMS Machine Registry: ...
REM Current Count: 0 (当前激活客户端数量)
REM Listening on Port: 1688
REM DNS publishing enabled: Yes

REM 查看简要激活信息
slmgr.vbs /dli

4.1 检查 KMS 服务监听端口

PowerShell - 检查端口监听
# 检查 TCP 1688 端口是否在监听
Get-NetTCPConnection -LocalPort 1688 -State "Listen"

# 使用 netstat 检查
netstat -an -p "TCP" -ErrorAction "SilentlyContinue" | Select-String "1688"

# 测试 KMS 主机响应
Test-NetConnection -ComputerName "localhost" -Port 1688

5. 配置 KMS 客户端激活策略

KMS 主机配置完成后,需要配置客户端指向 KMS 主机。有两种方式:

  1. DNS 自动发现 — KMS 主机发布 SRV 记录,客户端自动查找(推荐)
  2. 手动指定 KMS 主机 — 使用 slmgr.vbs /skms 或组策略
CMD - 手动指定 KMS 主机
REM 在客户端上运行(需要管理员权限)
REM 指定 KMS 主机地址(FQDN 或 IP)
slmgr.vbs /skms kms.iehang.cn

REM 或者使用 IP 地址
slmgr.vbs /skms 192.168.10.254

REM 触发激活
slmgr.vbs /ato

REM 查看激活状态
slmgr.vbs /dlv
💡 组策略配置

可以通过 GPO 批量配置客户端 KMS 主机地址:

计算机配置 → 策略 → 管理模板 → 系统 → 激活 → 指定 KMS 主机服务器

设置为 kms.iehang.cn192.168.10.254

6. 常见问题

Q1:slmgr.vbs /ato 失败,提示"错误: 0xC004F038"

这个错误表示 KMS 激活阈值未达到。需要至少 25 台 Windows 客户端(或 5 台 Server)请求激活。

实验环境解决方法:

  1. 快速克隆多台 Windows 10 虚拟机(使用 Sysprep 通用化)
  2. 修改注册表跳过阈值检查(仅用于实验)
Q2:KMS 主机无法发布 DNS SRV 记录

检查以下设置:

  1. KMS 主机的 DNS 指向正确的 DNS 服务器(通常是域控)
  2. 运行 slmgr.vbs /dlv 检查 "DNS publishing enabled" 是否为 "Yes"
  3. 如果为 "No",运行 slmgr.vbs /dns 启用 DNS 发布
  4. 手动创建 DNS SRV 记录(参见第 7 篇文章)
Q3:客户端无法连接到 KMS 主机

排查步骤:

  1. 检查防火墙是否开放 TCP 1688 端口(KMS 默认端口)
  2. 使用 Test-NetConnection -ComputerName kms.iehang.cn -Port 1688 测试连通性
  3. 检查客户端是否使用了正确的 KMS 客户端密钥(CSVLK)
  4. 运行 slmgr.vbs /dlv 查看详细错误信息