使用腾讯云轻量应用服务器自行搭建 KMS 服务

很多时候我们会选择使用使用 KMS 服务来激活 windows 和 Office,但公共的 KMS 服务通常是不稳定的,本文将会介绍几种快速部署私有 KMS 服务的方法。

很多时候我们会选择使用使用 KMS 服务来激活 windows 和 Office,但公共的 KMS 服务通常是不稳定的,本文将会介绍几种快速部署私有 KMS 服务的方法。

什么是 KMS

KMS 是为在本地网络上激活 Microsoft 产品的一项服务,无需计算机连接到微软公司的服务器激活,以便于大批量的 windows 正版部署。

KMS 激活流程

  1. 将 KMS 安装在服务器上。
  2. 将 KMS 主机密钥(`GVLK`,将会在稍后介绍)安装在 KMS 客户端上。
  3. 启用 KMS 后,KMS 服务器会在每次启动 KMS 时或以每天一次的频率,在域名系统 (DNS) 中注册一条 SRV 记录。
  4. KMS 客户端从配置的注册表项或通过 DNS 中的 KMS SRV 记录发现 KMS 主机。
  5. 客户端通过 1688/TCP(默认设置)向 KMS 主机发送 RPC 请求。此请求包括加密的客户端计算机 ID。如果计算机从未被激活并且 KMS 主机没有响应,则客户端会在两个小时后发送新请求。如果计算机已激活,则客户端会在 7 天后发送新的重新激活请求。
  6. KMS 主机将客户端计算机 ID 添加到表中,并将激活计数返回给客户端。
  7. 客户端根据许可证策略评估激活计数,并在满足激活阈值时激活。

由此可以看出,整个过程除 KMS 客户端与服务端交互以外并没有多余的动作,关于网络上“使用 KMS 激活会让其他人能够控制你的计算机”的流言是完全错误的,你更应该防备的是某些来路不正的“一键激活”工具。

我没有微软公司提供的秘钥,自建 KMS 的原理?

通过逆向官方软件,我们得以了解 KMS 的工作原理,并伪造合法的 KMS 服务器响应以欺骗客户端。你可以通过阅读相关开源项目的代码来学习,不过不要真的在未经微软公司许可的情况下拿来激活 Windows(特别是企业)。注意,从 Windows 8.1开始,KMS服务器与客户机必须是两台不同的电脑。

搭建

 法一:使用 [`vlmcsd`](https://github.com/Wind4/vlmcsd) 手动搭建 kms 服务

 这里使用 Linux 操作,在 Windows 上操作几乎一样,这里就不多赘述了。

vlmcsd 是一个用 C 语言实现的开源 KMS 模拟器,支持几乎所有的操作系统和处理器架构。

> vlmcsd 是
> – 微软 KMS 服务器的替代品。
> – 它包含 vlmcs,一个 KMS 测试客户端,主要用于调试目的,也可以验证真正的 KMS 服务器。
> – 设计用于在永远在线或经常在线的设备上运行,例如路由器或 NAS …
> – 旨在帮助那些失去合法拥有的许可证激活的人,例如因硬件(主板、CPU 等)的变化而失去激活的人
>
> vlmcsd 不是
> – 一键激活或破解工具
> – 旨在激活非法软件副本(Windows、Office、Project、Visi

1. `curl -o binaries.tar.gz https://github.com/Wind4/vlmcsd/releases/download/svn1113/binaries.tar.gz`
releases页 下载最新版本的 vlmcsd(示例代码使用 2020-03-28 编译版本),这里提供一份 2020-03-28 编译版本镜像

2. `tar zxvf ./binaries.tar.gz`
解压缩文件。

3. “` Shell
chmod +x ./binaries/Linux/intel/glibc/vlmcsd-x64-glibc
./binaries/Linux/intel/glibc/vlmcsd-x64-glibc
“`
授予执行权限并运行 vlmcsd,默认会监听 1688 端口,注意成功后没有任何提示。

4. “` Shell
chmod +x ./binaries/Linux/intel/glibc/vlmcs-x64-glibc
./binaries/Linux/intel/glibc/vlmcs-x64-glibc
“`
授予执行权限并运行 vlmcs,检查 vlmcsd 是否正常运行,默认检查本机 1688 端口。

5. `firewall-cmd –zone=public –add-port=1688/tcp –permanent`
在本机防火墙放通相关端口(本例使用的是 `TCP/1688`),若是你是用的云服务,也需要在控制台放通相关端口。

法二:在 Windows 上转发公有云厂商的 kms 服务

 能白嫖啊?自建干什么?(战术后仰

注意只有几大叫得上名字的公有云能够保证是使用的 KMS 激活你的云服务器,其它小厂的云服务器不能保证。

注意:全程需要命令行工具需要被授予管理员权限

1. 检查你的供应商提供的 KMS 服务器地址
检查 KMS 服务器地址
在 Windows 上使用命令 `slmgr /dlv` 找到本机已设置的 KMS 服务器地址。

2. 配置端口转发
在 Windows 上使用命令 `netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=1688 connectaddress=<刚才得到的 IP> connectport=<刚才得到的端口号>` 配置端口转发服务。

其中:
`listenaddress`:监听地址,0.0.0.0 表示监听所有地址。
`listenport`:监听端口,指的是本地的端口。
`connectaddress`:需要转发的主机 IP。
`connectport`:需要转发的端口。

在 Windows 上使用命令 `netsh interface portproxy show all` 检查配置端口转发服务,若成功应看到以下提示。
配置端口转发

记得在本机防火墙和云服务控制台放通相关端口放通相关端口(本例使用的是 `TCP/1688`)。

激活

注意:全程需要命令行工具需要被授予管理员权限。

注意,以下命令都只有在 VOL 版软件上有效,也就是说,零售版本的 Windows 和 Office 无法正常激活,什么是零售版?什么是批量激活版?如何将零售版转为批量激活版?请自行搜索。

Windows

1. 安装 GVLK
在 Windows 上使用命令 `slmgr /ipk <GVLK>` 安装 GVLK。
每个操作系统对应不同的 GVLK,可以在官网找到,本文就不重复说明了

2. 设置 KMS 服务器地址
在 Windows 上使用命令 `slmgr /skms <IP[:PORT]>` 设置 KMS 服务器地址,端口若省略则默认是 1688 端口。

3. 激活 Windows
在 Windows 上使用命令 `slmgr /ato` 来激活 windows,若能连接 KMS 服务器,windows 将会自动续期。

Office

1. 安装 GVLK
在 Windows 上使用命令 `cscript ospp.vbs /inpkey:<GVLK>` 安装 GVLK。
每个版本的 Office 对应不同的 GVLK,可以在官网找到。

Office 2010
Office 2013
Office 2016
Office 2019

2. 设置 KMS 服务器地址
在 Windows 上使用命令 `cscript ospp.vbs /sethst:<IP[:PORT]>` 设置 KMS 服务器地址,端口若省略则默认是 1688 端口。

3. 激活 Office
在 Windows 上使用命令 `cscript ospp.vbs /act` 来激活 Office,若能连接 KMS 服务器,Office 将会自动续期。

____

_本文以 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议共享,转载请署名并保留来源。_

本文来自开发者投稿,不代表腾讯云立场,转载请注明出处:https://computeinit.com/archives/4317

发表评论

登录后才能评论
交流群