前言

最近有公司同事问我如何激活windows主机,它的系统不能改壁纸,屏幕上有未激活字样…由于系统太卡原因换了一块三星980pro(真尼玛有钱啊!!!)重装系统后未激活。百度了一下,我是想在公司本地虚拟机局域网搭建一个kms激活服务,由于它是家里的,不得已我在我其中的一台服务器上搭建一下,下面是部署步骤,本地和云通用

部署准备

  • 准备一台机器,centos,ubuntu,debian,alma,rocky,版本不限
  • 安装docker
  • 运行kms激活服务
  • win端激活

部署步骤

本机是ubuntu20.04,安装docker,我是添加源装的最新版。

1
apt update && apt install docker.io

拉取运行kms服务

1
docker run -d -p 1688:1688 --restart=always --name vlmcsd mikolatero/vlmcsd

开启防火墙,我用的是iptables

1
2
3
4
5
iptables -t filter -I INPUT -p tcp --dport 1688 -j ACCEPT
ufw allow tcp/1688 && ufw reload

#在本机CMD测试端口是否开启
telnet you_domian or you_ipaddress 1688

然后在windows桌面新建一个文本文件,修改后缀名未.bat,把下面代码copy进去后,右击管理员运行该.bat文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
@echo off
echo 开始获取管理员权限...

%1 %2
mshta vbscript:createobject("shell.application").shellexecute("%~s0","goto :runas","goto :notadmin","runas",1)(window.close)&&exit

:notadmin
echo 获取管理员权限失败,请右键点击此文件,选择“以管理员身份运行”。
pause
EXIT

:runas
:: KMS 服务器地址
SET KMSAddress=you_ipaddress or you domain
:: KMS 服务器端口,默认为 1688,通常无需修改。
SET KMSPort=1688
:: Windows 10 Enterprise 的 GVLK 密钥
:: NPPR9-FWDCX-D2C8J-H872K-2YT43
SET GVLK=NPPR9-FWDCX-D2C8J-H872K-2YT43
:: 这里用的是企业版,有其他需求可以去微软官方查找密钥,链接我放到下方了
echo 已获取管理员权限,将开始为产品进行授权...
echo=
echo 开始卸载现有产品密钥...
cscript //Nologo %windir%\system32\slmgr.vbs -upk
echo 开始安装新的产品密钥...
cscript //Nologo %windir%\system32\slmgr.vbs -ipk %GVLK%
:: 指定 KMS(密钥管理服务) 服务器的 IP 地址或域名
echo 开始设置 KMS 服务器...
cscript //Nologo %windir%\system32\slmgr.vbs -skms %KMSAddress%
:: 指定 KMS(密钥管理服务)服务器的 TCP 通信端口
cscript //Nologo %windir%\system32\slmgr.vbs -sprt %KMSPort%
echo 开始激活 Windows 10 企业版...
cscript //Nologo %windir%\system32\slmgr.vbs -ato
:: 显示当前许可证的有效日期
cscript //Nologo %windir%\system32\slmgr.vbs -xpr
pause
exit

查看服务端日志,可以看到还支持office

往下翻查看连接信息,可以看到就是已经激活了,到此已经完成

部署总结

  • 只支持半年,半年后会自动续订,前提是服务存活,不过可以部署在本地局域网
  • 看到这么多IP扫我,俺也不懂,不可能激活一个就写一个防火墙规则把
  • windows有时候会抽风多试几遍,不行就重启再试
  • 不知道win11支持不,暂时不想用win11
  • 不知道这个用来企业批量激活会不会出事,请支持正版

参考链接

微软官方密钥 https://learn.microsoft.com/zh-cn/windows-server/get-started/kms-client-activation-keys