Office 2010 KMS激活原理和案例分享
为了减低部署盗版(可能包含恶意软件、病毒和其他安全风险)的可能性,Office 2010面向企业客户推出了新的批量激活方式:KMS和MAK。这两种激活方式同时也是Windows Vista/7/2008/2008 R2所使用的。MAK的激活服务由微软的公共平台受理,适合于50台计算机以下的中小企业;而KMS激活要求企业提供一台受理该项服务的服务器,适用于50台计算机以上的企业。两种激活方式都是绑定在企业购买的Windows和Office产品密钥(product key)中。
如何确定Office 2010的激活方式?
步骤如下:
1. 启动命令行,进入Office 2010安装路径:
C:Program FilesMicrosoft OfficeOffice14
(32-bit电脑+32-bit Office 2010,或者64-bit电脑+64-bitOffice 2010)
C:Program Files (x86)Microsoft OfficeOffice14
(64-bit电脑+32-bitOffice 2010)
2. 输入cscript ospp.vbs /dstatus
3. 检查LICENSE DESCRIPTION,如果输出结果中有KMS字样,则当前安装的Office 2010使用的是KMS激活方式;如果有MAK字样,则当前安装的Office 2010使用的是MAK激活方式
如果您的企业同时拥有MAK和KMS的产品密钥,但是由于某种原因其中一种激活方式无法生效,您可以更改Office 2010客户端激活方式,具体步骤请见How to use command line to change/activate MAK product key for Office 2010 installation?
KMS激活原理和步骤
鉴于我们受理的企业客户KMS激活问题比较多,下面对KMS激活的原理、步骤和可能出现的问题做一下概述。
部署KMS激活的第一步是安装Office 2010 KMS Host key并激活KMS主机(即KMS Host),KMS主机可以实体机或者虚拟机,操作系统支持Windows Server 2003(需要额外安装补丁,请见这里), Windows Server 2008 R2和Windows 7。但是运行在Windows 7之上的KMS主机仅仅可以用来激活Windows 7 KMS客户端。
在KMS主机激活后,KMS服务在DNS服务器中使用服务(SRV)资源记录(RR, Resource Record)来存储KMS主机位置。KMS主机默认情况下会自动通过动态DNS (Dynamic DNS)发布,KMS客户端(安装Office 2010并使用 KMS激活的电脑)通过这些信息查找和连接它。
KMS主机会保存一个“激活计数”作为激活Office 2010客户端的条件之一。初次部署时,每当一台新的Office 2010客户端成功连接到KMS主机后,该激活计数会增加。当该数目达到5时,所有Office 2010客户端都会被自动激活。再往后,该激活计数由KMS主机进行维护,但不会再低于5。
下图中的字母A~C表示KMS主机配置,数字1~4表示KMS服务的客户端是如何发现KMS 主机并进行激活(以及刷新激活记录)的。该图可以从这里下载:
A. 在KMS主机上安装Office 2010 KMS Host key
B. 通过Internet上的激活中心激活KMS主机
C. KMS服务每次启动时都会在DNS中添加服务资源记录 (SRV record)
1. KMS客户端第一次向DNS查询KMS服务信息时,它将从DNS提供的SRV记录列表中随机选择一个KMS主机。如果选择的KMS主机没有响应,KMS客户端计算机将从它的SRV记录列表中删除该KMS主机记录,同时随机从列表中选择一个KMS主机。
2. 客户端计算机使用TCP的匿名远程过程调用 (RPCs over TCP)连接到KMS主机,默认端口为1688(防火墙上需要打开该端口)。在客户端计算机和KMS主机建立一个TCP会话之后,客户端计算机会产生客户端标识 (CMID)然后向KMS主机发送请求记录。这条请求记录会用AES加密算法做签名。已经激活的客户端会每7天发发送一次请求刷新激活记录,未激活的客户端每2小时发送一次请求进行激活。
注:如果缓存KMS主机在后续的激活状态更新时不能响应,那么KMS客户端计算机将会查找DNS中KMS SRV记录查找新的KMS主机。
3. KMS主机会将客户端标识(CMID)保存在KMS主机上的一张表中。每个激活请求在该表中的存留时间为30天。当某个客户端刷新它的激活,那么该客户端的缓存CMID将从表中删除,同时创建一个新的记录,存留周期重新变为30天。如果某个KMS客户端没有在30天之内刷新它的激活,那么相对应的CMID将会从表中删除而且激活计数也会减1,但激活技术不会再低于5。
4. KMS主机将激活计数返回给客户端。
5. 客户端根据激活计数和其他的许可策略来进行激活(以及刷新激活记录)。默认情况下这个过程每7天会进行一次。
案例分享一(激活KMS主机)
问题描述:
客户在购买了Office 2010后,需要激活Office KMS Host,但是不知如何进行。
解决方案:
1. 首先下载Office 2010 KMS Host License Pack
2. 根据提示,输入KMS主机密钥 (KMS Host key)。继续激活时,遇到报错:
3. 错误号0x80072ee7一般意味着没有网络连接,或者服务器需要通过代理才能连接到Internet。此时如果打开命令行,切换到c:windowssystem32,输入cscript slmgr.vbs /ipk <Office 2010 KMS host key>,会看到如下的页面,License Status显示Unlicensed (未激活)。
如果要深究这个问题,我们可以使用Network Monitor抓网络包进行分析。但是如果不想看网络包,也可以使用电话激活。
4. 在命令行中运行切换到c:windowssystem32,输入cscript slmgr.vbs /dti bfe7a195-4f8f-4f0b-a622-cf13c7d16864,会得到Office 2010的安装序列号(Installation ID)。
5. 运行slui.exe 4,然后拨打画面中的电话 。
注:在电话中会被要求用户输入Installation ID,请使用上一步在命令行中得到的序列号,而不要输入页面上显示的9列 6位字符(红框所示)
6. 当听到电话上的回应后,输入确认序列号(Confirmation ID)。
7. 在命令行中输入cscript slmgr.vbs /atp <Confirmation ID> bfe7a195-4f8f-4f0b-a622-cf13c7d16864
8. 确认Office 2010 KMS Host被正确激活,在命令行中输入:
cscript slmgr.vbs /dlv bfe7a195-4f8f-4f0b-a622-cf13c7d16864 (只看Office 2010)
cscript slmgr.vbs /dlv all (看所有产品的KMS Host,包括Windows和Office)
以第一条命令为例,应该可以看到类似下面的输出(License status显示Licensed):
Name: Microsoft Office 2010, KMSHost edition
Description: Microsoft Office 2010 KMS, VOLUME_KMS channel
Activation ID: bfe7a195-4f8f-4f0b-a622-cf13c7d16864
Application ID: 59a52881-a989-479d-af46-f275c6370663
Extended PID: 55041-00096-199-000004-03-1033-7600.0000-3632009
Installation ID: 008585014214769124199722184000850026888810090785321136
Processor Certificate URL: http://go.microsoft.com/fwlink/p/?LinkID=88342
Machine Certificate URL: http://go.microsoft.com/fwlink/p/?LinkID=88343
Use License URL: http://go.microsoft.com/fwlink/p/?LinkID=88345
Product Key Certificate URL: http://go.microsoft.com/fwlink/p/?LinkID=88344
Partial Product Key: RP3HH
License Status: Licensed
Remaining Windows rearm count: 1
Trusted time: 12/29/2009 1:45:54 PM
Key Management Service is enabled on this computer
Current count: 0
Listening on Port: 1688
DNS publishing enabled
KMS priority: Normal
Key Management Service cumulative requests received from clients
Total requests received: 0
Failed requests received: 0
Requests with License Status Unlicensed: 0
Requests with License Status Licensed: 0
Requests with License Status Initial grace period: 0
Requests with License Status License expired or Hardware out of tolerance: 0
Requests with License Status Non-genuine grace period: 0
Requests with License Status Notification: 0
9.接下来我们需要在至少5台计算机上启动一次Office 2010,如果这些客户端发出的激活请求能正确地自动找到KMS主机,则上一步中的Current count(激活计数)会一直增加,达到5以后所有的Office 2010客户端会被激活。
案例分享二(如何让未加入域的计算机进行KMS激活)
问题描述:
许多企业客户的计算机分布在不同办公室,希望在客户端不加域的情况下进行Office KMS激活。
解决方案:
客户端不加域的主要问题是客户端请求如何送达KMS服务器,需要通过网络上的IP地址解析。在域环境中,由于DNS起作用,一般来说IP地址和服务器名解析是自动的。在不加域的情况下,只要客户端能够ping通KMS服务器,可以通过下面方法来解决:
1. 打开命令行,切换到Office安装路径
C:Program FilesMicrosoft OfficeOffice14
(32-bit电脑+32-bit Office 2010,或者64-bit电脑+64-bitOffice 2010)
C:Program Files (x86)Microsoft OfficeOffice14
(64-bit电脑+32-bitOffice 2010)
2. 指定KMS服务器:
cscript ospp.vbs /sethst:< KMS服务器的IP地址>
3. 激活Office 2010:
cscript ospp.vbs /act
参考资料
最细致的Office 2010 KMS激活步骤(英文):
Office 2010 KMS installation and troubleshooting
如何使用电话激活Office 2010 KMS主机:
Activate Office 2010 KMS host via phone activation
下载Office 2010 KMS/MAK激活的典型场景和流程图:
Volume Activation of Microsoft Office 2010
规划Office 2010批量激活的官方说明:
Plan volume activation of Office 2010
KMS激活步骤官方说明:
如何部署Office 2010批量激活的官方说明: