板块:Windows 激活最后更新:2026-10-25内容依据:微软官方公开文档

Windows Server KMS 主机完整部署指南

从零到一:装角色、导 CSVLK、发 SRV、放端口、VAMT 管理、监控与排障。面向已持有微软批量授权协议的组织。

前置条件(不满足请止步) 部署 KMS 主机需要 CSVLK(KMS 主机密钥),它只发放给签署批量授权协议的组织(Open / Open Value / Select / Enterprise 等), 在 Microsoft 365 管理中心或 VLSC 批量许可服务中心获取。没有协议就没有合法主机密钥; 在无协议前提下自建"KMS 主机"或用第三方公网 KMS,均属绕过授权的违规行为。详见 授权条款解读。

架构总览

数据流 批量授权协议 → VLSC 拿 CSVLK → 装到 KMS 主机(Server)→ 主机联网激活自身 → DNS 自动发布 SRV _vlmcs._tcp → 客户端(已内置/手动装 GVLK)发现主机 → 每 2 小时尝试、成功后每 7 天续订 → 180 天有效期内循环。
组件要求
KMS 主机系统Windows Server 2016 / 2019 / 2022 / 2025(建议当前受支持版本;2026 年 8 月起新主机需支持 TPM 2.0 检测)
主机密钥CSVLK(VLSC / M365 管理中心 → 批量许可 → 下载密钥)
网络内网 TCP 1688 入站放行;客户端到主机可达
DNS域内 DDNS 可用(自动发布 SRV);无域环境需手动创建 SRV 记录
客户端批量授权版 Windows(已内置 GVLK,见 官方密钥表)
阈值客户端 OS 25 台 / 服务器 OS 5 台(低于阈值主机不激活)

部署五步

  1. 安装「批量激活服务」角色:服务器管理器 → 添加角色和功能 → 功能里勾选 Volume Activation Services(会连带安装 IIS 依赖)。装完在工具菜单出现「批量激活工具(VAMT)」。
  2. 导入 CSVLK 并激活主机:打开 VAMT(或批量激活工具),选择 KMS 激活方式,输入 VLSC 获取的 CSVLK,联网激活;无外网环境用电话激活。
  3. 确认 DNS SRV 发布:域内且 DDNS 正常时自动发布 _vlmcs._tcp.<域名> → 主机:1688。无域环境手动建 SRV 记录。
  4. 放行防火墙:主机入站 TCP 1688(或你自定义的端口)。云环境还要在安全组放行。
  5. 客户端验证:任选一台客户端执行 slmgr /ato,随后 slmgr /dlv 看通道与状态、slmgr /xpr 看到期日。

主机侧命令速查

KMS 主机(管理员)
rem === 安装主机密钥(CSVLK,从 VLSC 获取,勿用网上流传的) ===
slmgr /ipk <CSVLK>

rem === 联机激活主机自身 ===
slmgr /ato

rem === 查看主机状态与激活计数(关注 Current Count) ===
slmgr /dlv

rem === 修改监听端口(默认 1688,改后需同步防火墙) ===
slmgr /sprt 1689

rem === DNS SRV 自动发布的开关 ===
slmgr /sdns     rem 启用自动发布
slmgr /cdns     rem 禁用自动发布

rem === 卸载主机密钥(更换密钥前) ===
slmgr /upk

客户端侧命令

KMS 客户端(管理员)
rem 1. 安装与当前版本匹配的 GVLK(批量授权版通常已内置,零售版转 KMS 才需要)
slmgr /ipk W269N-WFGWX-YVC9B-4J6C9-T83GX   rem 例:Win10/11 专业版

rem 2. 手动指定主机(DNS 自动发现正常时不需要;地址填内网主机名)
slmgr /skms kms.corp.example.com:1688

rem 3. 立即激活
slmgr /ato

rem 4. 验证:通道应为 VOLUME_KMSCLIENT,xpr 显示 180 天到期日
slmgr /dlv
slmgr /xpr

rem 改回自动发现
slmgr /ckms

无域环境:手动创建 SRV 记录

工作组/无 DDNS 环境,客户端无法自动发现主机,需在 DNS 服务器手动添加(或用 dnscmd):

dnscmd 示例
rem 语法:dnscmd <DNS服务器> /RecordAdd <区域> _vlmcs._tcp SRV 优先级 权重 端口 主机FQDN
dnscmd 127.0.0.1 /RecordAdd corp.example.com _vlmcs._tcp SRV 0 0 1688 kms.corp.example.com

优先级 0 权重 0 表示单台主机;多台主机用不同权重分流。客户端验证:nslookup -type=srv _vlmcs._tcp.corp.example.com。

监控与日常运维

手段看什么
slmgr /dlv(主机)Current Count:当前激活计数,接近阈值说明新机在正常接入
事件查看器(主机)应用程序和服务日志 → Microsoft → Windows → SoftwareProtectionPlatform → 激活请求明细、失败原因
VAMT 控制台批量查询所有客户端激活状态、MAK 余量、导出报表(合规审计直接出)
PowerShellGet-WmiObject -Class SoftwareLicensingProduct | Where-Object {$_.PartialProductKey} 查本机状态
网络监控TCP 1688 连通性探测(Test-NetConnection kms.corp.example.com -Port 1688)

排障清单

现象排查顺序
客户端找不到主机
(0x8007232B / 0xC004F074)
① nslookup -type=srv _vlmcs._tcp ② DNS 服务与区域是否含该记录 ③ 主机 1688 是否放行 ④ 客户端 DNS 是否指向内网 DNS
报 0xC004F038(计数不足)正常设计:未达 25/5 阈值,或主机自身未激活。确认主机 slmgr /dlv 状态为 Licensed
报 0xC004F00FGVLK 与安装版本不匹配:winver 核对版本,从 官方表重装对应 GVLK
计数不涨主机事件日志 SoftwareProtectionPlatform 看请求是否到达;到不了就是网络/DNS,到了不激活是密钥/版本问题
全部客户端同时失效主机宕机或主机密钥失效。先恢复主机,客户端回内网后自动恢复;这就是要一主一备的原因
时间类报错 0x80072F8F先校时,再查代理防火墙
2026 年新变化:KMS 主机要验 TPM 微软正为 KMS 引入硬件信任机制:自 2026 年 8 月起,Windows Server 2025 先行引入 TPM 芯片检测; 从下一个 Windows Server 长期服务通道版本起,TPM 2.0 认证将成为强制要求。规划新主机时请预留支持 TPM 2.0 的硬件。
不要做的事
  • 不要把 KMS 主机暴露到公网——替全网盗版提供激活服务,协议将被追责
  • 不要填网上流传的第三方公网 KMS 地址——微软明确不认可,且这些地址常被用于投递恶意流量
  • 不要在没签批量授权协议的情况下"自建 KMS 主机"——没有合法 CSVLK 的任何实现本质都是绕过授权

常见问题

FAQ

KMS 主机必须用 Windows Server 吗?

生产环境必须。Windows Server 的"批量激活服务"角色提供完整的主机能力(激活计数、SRV 发布、VAMT 管理)。Windows 10/11 可临时充当 KMS 主机,但微软明确不建议用于生产,且不支持角色化管理。

KMS 主机需要公网 IP 或固定域名吗?

都不需要。主机只需在内网可达:客户端通过 DNS SRV 记录(_vlmcs._tcp.<域名>)或手动 slmgr /skms 指定发现它。把主机暴露到公网属于违规行为,等于替全网盗版提供激活服务。

激活计数一直不涨怎么排查?

按顺序查:① 客户端是否正确装上了匹配版本的 GVLK(不匹配报 0xC004F00F)② 客户端到主机 TCP 1688 是否通(Test-NetConnection)③ 主机自身是否已激活(未激活的主机不计数)④ 事件查看器 SoftwareProtectionPlatform 日志看请求是否到达。

两台 KMS 主机负载怎么分?

KMS 客户端会随机选择一台可达主机,无需配置。建议部署一主一备(两台都装 CSVLK 并激活),DNS SRV 记录同时指向两台,客户端按 50/50 分流;单台宕机时客户端自动切到另一台续订。

内容依据(官方来源)

延伸阅读