KMS激活的原理
KMS又叫windows秘钥管理服务,由于Windows VL都是为批量激活而诞生,所以在一个激活单位中肯定会有很多台配置相等的计算机,并用一个服务器建立起一个局域网(LAN),而KMS正好利用这一点,它要求局域网中必须有一台KMS服务器,KMS服务器的作用是给局域网中的所有计算机的操作系统定周期(一般是180天)提供一个随机的激活ID(不同于产品激活密钥),然后计算机里面的KMS服务就会自动将系统激活,实现正常的系统软件服务与操作。所以计算机必须保持与KMS服务器的定期连接,以便KMS激活服务的自动检查实现激活的自动续期,这样就实现了限制于公司域内的激活范围,避免了对于外界计算机的非法授权,当非法激活者离开公司域后,由于客户端KMS服务不能连接位于域内的KMS激活服务器,让它提供一个新的序列号,超过180天以后就会因为激活ID过期而重新回到试用版本状态,而合法授权者则能够定期获得ID更新,保持一直正确的激活状态。
以上内容引自自百度百科。
KMS激活适用于批量激活的windows系统和office,版本后面带"VL"字样的。通过搭建KMS服务器,我们在激活windows和office的时候,直接向自建的KMS服务器请求激活并返回同意激活的结果,直接完成激活,不需要去网上下软件,非常方便。
附KMS激活原理图:
准备工具:wincsp,xshell5.
以下步骤以本站(www.xiaoweigod.com)的KMS激活服务为例,一步一步搭建KMS激活服务器。本次操作环境为centos7.3,服务器为阿里云服务器。至于激活的服务端,找了很久,在github上发现了这个kms激活服务程序,还是很好用的。
第一步 安装py-kms服务端
用xshell连接上自己的服务器,执行
yum -y install python-argparse //安装依赖环境 yum -y install git //安装git git clone https://github.com/myanaloglife/py-kms //从github克隆pykms
第二步 开启kms服务
执行完以上命令,py-kms服务端已经被下载到了服务器上,接下来我们要将KMS专用的1688端口开放(非阿里云可以忽视下面的步骤)。
打开阿里云控制台-云服务器ECS-进入云服务器-更多-安全组配置-配置规则-添加安全组规则
添加的规则配置如下,开放1688端口任何ip地址都可以访问。
配置完成安全组后,执行
cd py-kms python server.py
开启KMS服务,如看到以下内容,则表示开启成功。
TCP server listening at 0.0.0.0 on port 1688.
第三步 长期运行配置
上一步开启了kms激活服务,但是只要关掉xshell命令行窗口,那么kms激活服务就会立马关闭,所以我们需要配置其在后台运行并能够开机自启和崩溃重启。
要实现以上功能,则需要通过supervisor来守护进程。
复制py-kms文件夹到 /usr/local文件夹下:
cd /root cp -r py-kms /usr/local/
安装supervisor:
yum -y install python-setuptools easy_install supervisor
生成supervisor的配置文件:
echo_supervisord_conf > /etc/supervisord.conf
用winscp打开 /etc/supervisord.conf并编辑,在最末尾加入:
[program:pykms] command=python /usr/local/py-kms/server.py autorestart=true user=root
保存配置文件之后,执行以下命令启动supervisor
supervisord
看到几行命令,包含如下内容则表示守护进程启动成功:
'Supervisord is running as root and it is searching '
接下来执行
supervisorctl
我们可以看到当前守护的进程,其中有如下pykms就成功了。
第四步 设置服务器的域名解析
上面三步以后我们的服务器已经有了长期的KMS激活服务了,但是每次激活的时候需要设置kms服务器地址,而服务器的IP地址难记住,所以我们需要设置服务器的域名解析,将域名指向这个IP地址,就无需再去记IP地址了。
打开域名申请服务商,比如我是阿里云万网:
打开阿里云-控制台-域名与万网-域名-选择自己的域名后面并解析。
(本站的kms服务器地址是kms.xiaoweigod.com,因为www.xiaoweigod.com和xiaoweigod.com因为开了web服务,并接入了CDN,这个域名解析出来的地址不会是源站地址,因此添加了一个二级域名kms来指向自己的阿里云服务器,并且还好记。)
如图添加一条A解析记录,主机记录为 kms ,记录值为服务器的IP。即将kms.xiaoweigod.com直接指向自己服务器的IP地址。
解析完成后,我们就可以将kms.xiaoweigod.com作为KMS激活服务器的地址了,如何激活和激活效果请看我之前的文章:本站已部署KMS激活服务端,支持一句命令激活windows和office
完。
有一种偷懒的方法,就是直接开个 Screen 来跑,但万一脚本崩了就没法像 supervisor 一样自动重启了
tmux和screen都差不多,个人比较喜欢tmux