部署私有KMS服务器,并设置自动激活Windows和office

news2024/9/29 7:17:25

介绍

vlmcsd是一个KMS激活服务器的模拟器,可以在Windows Server之外的平台上部署自己的KMS服务器。它是一个开源项目,由Wind4开发,目前在Linux上运行(包括Android、FreeBSD、Solaris、Minix、Mac OS、iOS和Windows等)

Docker镜像地址: https://hub.docker.com/r/mogeko/vlmcsd

此程序的单独地址: https://github.com/Wind4/vlmcsd

准备环境:

一台支持Docker的Linux服务器【运行KMS服务器】,运行在内网的DNS服务器【SRV记录】,DHCP服务器【分配DNS域名】。

docker run -d -p 1688:1688 --restart=always  --name kms mogeko/vlmcsd

  • 部署KMS服务器,使用Docker ,端口为 TCP/1688。

docker logs kms

2021-07-27 08:14:00: Listening on [::]:1688
2021-07-27 08:14:00: Listening on 0.0.0.0:1688
2021-07-27 08:14:00: vlmcsd svn1112-2-gf1a3c7f, built 2021-07-26 18:11:51 UTC started successfully

# 查看日志,确定正常工作。

手动激活

slmgr /ipk N69G4-B89J2-4G8F4-WWYCC-J464C

安装密钥

KMS安装密钥,密钥大全地址: https://docs.microsoft.com/zh-cn/windows-server/get-started/kmsclientkeys

slmgr /skms 192.168.1.13

设置KMS服务器IP

slmgr /ato

立即激活Windows

slmgr /xpr

查看激活剩余时间

slmgr /dlv

查看激活的详细信息

PS: 默认情况下,会激活 180天,然后每 10080 分钟自动续期一次(只要KMS服务器可用)

使用DNS+DHCP自动激活

首先添加 SRV 记录到DNS服务器的域名中

记录名字为 _vlmcs._tcp.

域控的话,直接有tcp的下级域,所以不需要加上TCP

然后进入你域控域名中的 _tcp文件夹,然后右键选择其他新记录,然后选择SRV记录。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后填写以上,域名为你的域名。服务为 _vlmcs 协议为 _tcp 。端口号为 1688 。
提供此服务的主机为 KMS服务器的IP。

然后配置DHCP 服务器分配的DNS域名后缀为 esc.com即可。
之后,未激活的Windows 开机就会通过DHCP获取到 DNS 后缀,然后通过DNS域名中的SVR记录找到
KMS激活服务器,并自动激活。其中VL的OFFICE也会自动激活。

官方文档:https://learn.microsoft.com/zh-cn/windows-server/get-started/kms-create-host

Windows 下载 和 Office VL版

建议使用 Office Tool Plus 安装VL版本,并安装许可证。即可激活。

下载地址: https://otp.landian.vip/zh-cn/download.html

Windows 第三方下载站: https://next.itellyou.cn/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1516603.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[MYSQL数据库]- 索引

前言 作者:小蜗牛向前冲 名言:我可以接受失败,但我不能接受放弃 如果觉的博主的文章还不错的话,还请点赞,收藏,关注👀支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、认识索…

22-Java状态模式 ( State Pattern )

Java状态模式 摘要实现范例 状态模式(State Pattern)中类的行为是基于它的状态改变的 在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的 context 对象 状态模式属于行为型模式 摘要 1. 意图 允许对象在内部…

深入解析HashMap:结构与哈希函数揭秘一

文章目录 一、HashMap的基本结构1.数组与链表的结构1.1 数组1.2 链表 2.红黑树的简单介绍3.Node节点的组成 二、HashMap的哈希函数1.hashCode()方法的作用2.位运算与哈希值的计算3.扰动函数的作用 思考:为什么HashMap源码中使用位运算 在Java编程语言中,…

『 Linux 』进程替换( Process replacement ) 及 简单Shell的实现(万字)

文章目录 🦄 进程替换🦩 execl()函数🦩 execlp()函数🦩 execle()函数🦩 execv()函数🦩 execvp()函数🦩 execvpe()函数🦩 execve()函数 🦄 简单Shell命令行解释器的实现&a…

区块链基础知识(上):区块链基本原理、加密哈希、公钥加密

目录 基本原理 加密哈希: 公钥加密: 希望有人向你发送只有你才能打开的加密文档/消息时使用 PKC 希望向其他人发送加密文档/消息并证明它确实由你发送时使用 PKC 使用 PKC 和加密哈希对文档/消息进行数字签名 交易哈希链使用数字签名转让数字资产所…

Docker进阶:深入了解 Dockerfile

Docker进阶:深入了解 Dockerfile 一、Dockerfile 概述二、Dockerfile 优点三、Dockerfile 编写规则四、Dockerfile 中常用的指令1、FROM2、LABEL3、RUN4、CMD5、ENTRYPOINT6、COPY7、ADD8、WORKDIR9、 ENV10、EXPOSE11、VOLUME12、USER13、注释14、ONBUILD 命令15、…

算法刷题Day9 | 28. 实现 strStr()、459.重复的子字符串、字符串总结

目录 0 引言1 实现 strStr()1.1 我的解题1.2 KMP算法解题 2 重复的子字符串2.1 暴力求解2.2 KMP求解法 3 字符串总结 🙋‍♂️ 作者:海码007📜 专栏:算法专栏💥 标题:算法刷题Day8 | 28. 实现 strStr()、45…

画图实战-Python实现某产品全年销量数据多种样式可视化

画图实战-Python实现某产品全年销量数据多种样式可视化 学习心得Matplotlib说明什么是Matplotlib?Matplotlib特性Matplotlib安装 产品订单量-折线图某产品全年订单量数据数据提取和分析绘制折线图 产品订单&销售额-条形图某产品全年订单&销售额数据绘制条形…

【嵌入式学习】C++day03.14

一、思维导图 二、练习 成员函数版本实现算术运算符的重载 全局函数版本实现算术运算符的重载 #include <iostream>using namespace std;class Num {friend const Num operator-(const Num &L,const Num &R); private:int a;int b; public://运算符重载const …

【Linux系统编程】进程的退出与等待

进程的创建 fork()用于创建子进程。但fork创建的子进程获得的是父进程&#xff08;即调用 fork() 的进程&#xff09;的一份几乎完全相同的副本&#xff0c;包括父进程的代码、数据、堆、栈和数据结构等内容。当进程调用fork后&#xff0c;一旦控制转移到内核中的fork代码后&am…

ATTRIBUTE_HELPER_HEADER

ATTRIBUTE_HELPER_HEADER是ns3中的一个宏定义&#xff0c;用于声明类类型的属性值、访问器和检查器。 例如&#xff1a; ATTRIBUTE_HELPER_HEADER (QueueSize);此宏声明&#xff1a; 属性值类typeValue&#xff0c;属性访问器函数MaketypeAccessor&#xff0c;AttributeChec…

CesiumJS 沙盒

CesiumJS 沙盒 通过CesiumJS 沙盒快速测试CesiumJS的一些功能&#xff0c;免去安装开发环境的困恼。 Hello World https://sandcastle.cesium.com/index.html 简单修改&#xff08;F8运行&#xff09;&#xff1a;去掉界面上UI const viewer new Cesium.Viewer("cesi…

C++中的STL-string类

文章目录 一、为什么学习string类&#xff1f;1.1 C语言中的字符串 二、准库中的string类2.2 string类2.3 string类的常用接口说明2.4 string类对象的容量操作2.5 string类对象的访问及遍历操作2.5 string类对象的修改操作2.7 string类非成员函数2.8 模拟实现string 一、为什么…

C++特性之一:继承

1. 派生类的成员变量、成员函数、构造、析构 2. 继承的切片 3. 重定义/隐藏 重定义/隐藏&#xff1a;派生类和基类有同名的成员&#xff0c;就叫隐藏。派生类的成员隐藏了基类的成员。 隐藏时可以通过类作用限定符来访问被隐藏的成员。 class Person { public:void Print(){…

一文了解Spring的SPI机制

文章目录 一文了解Spring的SPI机制Java SPIServiceLoader Spring SPISpringboot利用Spring SPI开发starter 一文了解Spring的SPI机制 Java SPI SPI 全称 Service Provider Interface &#xff0c;是 Java提供的一套用来被第三方实现或者扩展的接口&#xff0c;它可以用来启用…

考研数学——高数:高斯公式

助记: 关于积分时什么时候可以将变量整体代入积分式的问题&#xff1a;在积分过程中&#xff0c;如果某一整体恒为常量&#xff0c;则可以直接替换为定值&#xff0c;常见于对线或面的积分。 而在这题&#xff0c;用高斯公式之前是面积分&#xff0c;如果有这个整体出现的话是…

寒假作业Day 11

寒假作业Day 11 一、选择题 栈满的判断&#xff1a;在链式存储结构中&#xff0c;栈的大小是动态的&#xff0c;只受限于系统分配给程序的内存大小。因此&#xff0c;理论上&#xff0c;链式栈不会因为空间不足而“满”。所以&#xff0c;不需要判断栈满。 栈空的判断&#xf…

解决VS编译中文报错 error C2001:常量中有换行符

产生原因&#xff1a;文件中有中文字符&#xff0c;但是文件是utf-8格式的&#xff0c;使用msvc编译器编译时就会产生上述错误 首先说明&#xff1a;我是通过方法2解决该问题的。 解决办法&#xff1a; 方式1&#xff1a; 通过把源文件转换为gbk编码&#xff0c;但是只能一…

TCP和UDP基础

tcp服务器及客户端链接 ucd服务器及客户端

python自学7

第二章第一节面向对象 程序的格式都不一样&#xff0c;每个人填写的方式也有自己的习惯&#xff0c;比如收集个人信息&#xff0c;可能有人用字典字符串或者列表&#xff0c; 类的成员方法 类和对象 构造方法 挨个传输值太麻烦了&#xff0c;也没有方便点的&#xff0c;有&…