快速搭建一个简易的KMS 服务

xu言:

  之前,闹的沸沸扬扬的KMS激活工具自身都存在问题的事。让我们对以前的什么小马激活、kms激活、各种激活工具都去打了一个深深的“?”,到底哪些能用。哪些不能用。有些还注明的里面必须要关闭杀毒软件,以免误杀。。。但是这样真的安全吗?带着这样的疑问去调研了下如何自建KMS。

经过了解发下了一个适合“懒人”用的 一键KMS搭建~

https://github.com/ThunderEX/py-kms

https://github.com/SystemRage/py-kms   (支持2019 Win and Office)  # 20210818 更新,安装方法大同小异

https://github.com/dylanbai8/kmspro (支持更多版本)# 20220822更新

Features(功能及支持的系统)

  • Responds to V4, V5, and V6 KMS requests.
  • Supports activating Windows 7/8/8.1/10/2008R2/2012/2012R2/2016 and Office 2010/2013/2016.
  • It's written in Python.

Dependencies(依赖的环境)

  • Python 2.6 or higher, micropython v1.9 or higher.
  • Python 2.6 needs the "argparse" module installed.
  • Micropython needs libpcre and libffi, and modules in micropythonlib, check section below.

Usage(使用方法)

  • To start the server, execute python server.py [listen_address] [port]. The default listening address is 0.0.0.0 (all interfaces) and the default port is 1688.
  • To run the client, use python client.py server_address [port]. The default port is 1688.
  • To run on ipv6, please use a valid ipv6 address, for example :: for broadcast.

 Note: 基本上通过这个激活的大部分下载的系统盘都是VOL或者非零售版本的操作系统及Office软件。不然可能不能正常激活。

如果想windows上使用就直接下载zip包,linux作为服务器就git clone下来吧。

默认使用的是1688端口。

 

微软KMS 官方序列号

 

服务端架设篇 

 

让其在linux后台执行

查看端口是否已经开启监听

打开防火墙

 sudo firewall-cmd --add-port=1688/tcp --permanent

 sudo systemctl reload firewalld

 

 

客户端激活篇 

# 查看操作系统版本

wmic os get caption

 

# 激活windows

slmgr /skms x.x.x.x
slmgr /ato

OR

slmgr /skms x.x.x.x && slmgr /ato

 

验证结果:

slmgr.vbs -xpr

 


slmgr.vbs -dli

 

 

# 2020.03.16 遇到一例 windows LSB 2016 长期支持版 无法激活的问题

后面使用    slmgr /upk    和  slmgr /rearm 重置机器授权,在加额外的激活软件解决

# 2020.09.02 遇到win7 旗舰版 7600提示 "在运行microsoft windows 非核心版本的计算机上,运行"slui.exe 0x2a 0x80040111"

MVG64-RQDVY-KB9RM-MX9WT-MW824      

如果要安装序列号用 /ipk命令

# 2020.10.10 遇到Win2008R2 Enterprise 激活后右下角有"水印"问题,处理方法

 

SLMGR -REARM   ,并且重启一次

# 2022.08.25 OFFICE 激活时 ERROR CODE: 0xC004F069 问题(office的授权文件没有注册导致的)# 仅针对OFFICE2019 专业增强版

@echo off

SET OfficePath=%ProgramFiles%Microsoft Office
if not exist "%OfficePath%\root\Licenses16" SET OfficePath=%ProgramFiles(x86)%\Microsoft Office

echo LOKI
if not exist "%OfficePath%\root\Licenses16" (
echo Could not find the license files for Office 2019!
echo "%OfficePath%root\Licenses16"
pause
goto :eof
)

echo Press Enter to start VL-Conversion...
echo.
pause
echo.
cd /D "%SystemRoot%\System32"

cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\ProPlus2019VL_KMS_Client_AE-ppd.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\ProPlus2019VL_KMS_Client_AE-ul.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\ProPlus2019VL_KMS_Client_AE-ul-oob.xrm-ms"

cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\ProjectPro2019VL_KMS_Client_AE-ppd.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\ProjectPro2019VL_KMS_Client_AE-ul-oob.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\ProjectPro2019VL_KMS_Client_AE-ul.xrm-ms"

cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\VisioPro2019VL_KMS_Client_AE-ppd.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\VisioPro2019VL_KMS_Client_AE-ul-oob.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\VisioPro2019VL_KMS_Client_AE-ul.xrm-ms"

cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\SkypeforBusiness2019VL_KMS_Client_AE-ppd.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\SkypeforBusiness2019VL_KMS_Client_AE-ul.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\SkypeforBusiness2019VL_KMS_Client_AE-ul-oob.xrm-ms"

cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\client-issuance-bridge-office.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\client-issuance-root.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\client-issuance-root-bridge-test.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\client-issuance-stil.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\client-issuance-ul.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\client-issuance-ul-oob.xrm-ms"
cscript "%OfficePath%\Office16\ospp.vbs" /inslic:"%OfficePath%\root\Licenses16\pkeyconfig-office.xrm-ms"

:eof

 


rem 激活office

cscript ospp.vbs /sethst:x.x.x.x
cscript ospp.vbs /act

OR

cscript ospp.vbs /sethst:x.x.x.x && cscript ospp.vbs /act

 

验证结果: 找到你office的安装目录下面执行:

cscript ospp.vbs /dstatus

看服务器地址是否已经指向你自己假设的服务器上面

 

关于网上发现的一个零售版转VOL的批处理 (待验证)

@ECHO OFF&PUSHD %~DP0

setlocal EnableDelayedExpansion&color 2 & cd /d "%~dp0"

title office系列 retail转换vol版

%1 %2

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

:runas

if exist "%ProgramFiles%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office16"

if exist "%ProgramFiles(x86)%\Microsoft Office\Office16\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office16"

if exist "%ProgramFiles%\Microsoft Office\Office15\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office15"

if exist "%ProgramFiles(x86)%\Microsoft Office\Office15\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office15"

if exist "%ProgramFiles%\Microsoft Office\Office14\ospp.vbs" cd /d "%ProgramFiles%\Microsoft Office\Office14"

if exist "%ProgramFiles(x86)%\Microsoft Office\Office14\ospp.vbs" cd /d "%ProgramFiles(x86)%\Microsoft Office\Office14"

:WH

cls

echo.

echo 选择需要转化的office版本序号---来自互联网

echo.

echo --------------------------------------------------------------------------------

echo 1. 零售版 Office Pro Plus 2016 转化为VOL版

echo.

echo 2. 零售版 Office Visio Pro 2016 转化为VOL版

echo.

echo 3. 零售版 Office Project Pro 2016 转化为VOL版

echo.

echo 4. 零售版 Office Pro Plus 2013 转化为VOL版

echo.

echo 5. 零售版 Office Visio Pro 2013 转化为VOL版

echo.

echo 6. 零售版 Office Project Pro 2013 转化为VOL版

echo.

echo 7. 零售版 Office Pro Plus 2010 转化为VOL版

echo.

echo 8. 零售版 Office Visio Pro 2010 转化为VOL版

echo.

echo 9. 零售版 Office Project Pro 2010 转化为VOL版

echo.

echo. --------------------------------------------------------------------------------

set /p tsk="请输入需要转化的office版本序号【回车】确认(1-9): "

if not defined tsk goto:err

if %tsk%==1 goto:1

if %tsk%==2 goto:2

if %tsk%==3 goto:3

if %tsk%==4 goto:4

if %tsk%==5 goto:5

if %tsk%==6 goto:6

if %tsk%==7 goto:7

if %tsk%==8 goto:8

if %tsk%==9 goto:9

:err

goto:WH

:1

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses16\proplusvl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses16\proplusvl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%%x" >nul

cscript ospp.vbs /inpkey:XQNVK-8JYDB-WJ9W3-YJ8YR-WFG99

goto :e

:2

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses16\visio???vl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses16\visio???vl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%%x" >nul

cscript ospp.vbs /inpkey:PD3PC-RHNGV-FXJ29-8JK7D-RJRJK

goto :e

:3

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses16\project???vl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses16\project???vl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses16\%%x" >nul

cscript ospp.vbs /inpkey:YG9NW-3K39V-2T3HJ-93F3Q-G83KT

goto :e

:4

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses15\proplusvl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses15\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses15\proplusvl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses15\%%x" >nul

set /p y=请输入激活密钥,按回车确定:

cscript ospp.vbs /inpkey:YC7DK-G2NP3-2QQC3-J6H88-GVGXT

goto :e

:5

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses15\visio???vl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses15\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses15\visio???vl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses15\%%x" >nul

cscript ospp.vbs /inpkey:C2FG9-N6J68-H8BTJ-BW3QX-RM3B3

goto :e

:6

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses15\project???vl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses15\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses15\project???vl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses15\%%x" >nul

cscript ospp.vbs /inpkey:FN8TT-7WMH6-2D4X9-M337T-2342K

goto :e

:7

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses14\proplusvl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses14\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses14\proplusvl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses14\%%x" >nul

cscript ospp.vbs /inpkey:VYBBJ-TRJPB-QFQRF-QFT4D-H3GVB

goto :e

:8

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses14\visio???vl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses14\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses14\visio???vl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses14\%%x" >nul

cscript ospp.vbs /inpkey:7MCW8-VRQVK-G677T-PDJCM-Q8TCP

goto :e

:9

cls

echo 正在安装 KMS 许可证...

for /f %%x in ('dir /b ..\root\Licenses14\project???vl_kms*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses14\%%x" >nul

echo 正在安装 MAK 许可证...

for /f %%x in ('dir /b ..\root\Licenses14\project???vl_mak*.xrm-ms') do cscript ospp.vbs /inslic:"..\root\Licenses14\%%x" >nul

cscript ospp.vbs /inpkey:YGX6F-PGV49-PGW3J-9BTGG-VHKC6

goto :e
:e

echo.

echo 转化完成,按任意键退出!

pause >nul

exit

 

 

参考资料:https://v0v.bid/kms.php # 20220822

 

posted @ 2018-06-04 09:39  Cong0ks  阅读(2633)  评论(0编辑  收藏  举报