Просмотрено раз: 996
Введение
В данной заметке поговорим о активации продуктов Microsoft с помощью личного KMS сервера, быстренько развернем его в Docker и на примере переактивируем мою машину под управлением Windows 10 LTSC в 4 команды. В данной заметке мы не будем разбирать зачем это все надо, правильно это или нет, кому надо, а кому не надо.
На помощь нам придет Vlmcsd, это KMS сервер с открытым исходным кодом, на C, работающий из под Linux, но мы разберем готовый контейнер с Docker-Hub который для нас любезно собрали (на момент написания заметки 10 миллионов скачиваний).
С помощью Vlmcsd возможна активация от Windows 7 и до Windows 11, Office можно активировать с 2010 и новее, включая все пакеты, активацию Office разберу в следующей заметке.
Я буду разворачивать его на своей VPS, вы можете развернуть его у себя локально на виртуальной машине или WSL, или воспользоваться услугами хостинга.
Установка Vlmcsd в Docker
Установка производиться в 1 команду при наличии у вас установленного Docker:
docker run -d -p 1688:1688 --restart=always --name vlmcsd mikolatero/vlmcsd
Готово наш личный KMS сервер поднят на 1688 порту и готов к бою
Активация Windows
1. Для активации нам потребуется для начала узнать нашу версию Windows, для этого нажимаем сочетание клавиш Win+R и вписываем туда winver или правой кнопкой мыши на Этот компьютер и Свойство, у меня установлена Windows 10 LTSC.
2. Идем на сайт Microsoft или листаем в самый низ сюда и ищем там ключик на нашу версию, в моем случае это Windows 10 LTSC.
3. Нажимаем Win+R и пишем cmd и нажимаем Enter
Вставляем туда следующие строки:
#Удаляем старый ключ
slmgr.vbs -upk
#Даем новый ключ (замените ключ на свой)
slmgr.vbs -ipk M7XTQ-FN8P6-TTKYV-9D4CC-J462D
#Указываем наш KMS сервер (замените на свой ip вашего KMS сервера или воспользуйтесь этим, на момент написания заметки не планирую его удалять)
slmgr.vbs -skms kms.lsetc.ru
#Запускаем скрипт активации Windows
slmgr.vbs -ato
#Проверяем
slmgr.vbs -dlv
Готово, мы с вами получили активированный Windows 10 LTSC на 180 дней, через 180 дней Windows снова обратиться к нашему KMS серверу и переактивируется так же на 180 дней при его доступности.
Активация Microsoft Office 2021
Про активацию Microsoft Office 2021, Visio и Project можно почитать в данной заметке.
Вывод
В данной заметке мы с вами развернули свой KMS сервер для активации продуктов Microsoft в одну команду и активировали нашу Windows 10 в несколько команд без установок дополнительного п.о. или покупок у барыг на площадках ключей для активации.
Что бы не потерять инструкцию рекомендую подписаться на мой личный блог-канал в Telegram в котором я делюсь в формате заметок своими знаниями и интересным из мира IT, спасибо за потраченное время на чтение и доброго времени суток!)
Так же вы можете отблагодарить автора материально:
Ключи взяты с официального сайта Microsoft
Windows Server 2022
Operating system edition | KMS Client Product Key |
---|---|
Windows Server 2022 Datacenter | WX4NM-KYWYW-QJJR4-XV3QB-6VM33 |
Windows Server 2022 Datacenter Azure Edition |
NTBV8-9K7Q8-V27C6-M2BTV-KHMXV |
Windows Server 2022 Standard | VDYBN-27WPP-V4HQT-9VMD4-VMK7H |
Windows Server 2019
Operating system edition | KMS Client Product Key |
---|---|
Windows Server 2019 Datacenter | WMDGN-G9PQG-XVVXX-R3X43-63DFG |
Windows Server 2019 Standard | N69G4-B89J2-4G8F4-WWYCC-J464C |
Windows Server 2019 Essentials | WVDHN-86M7X-466P6-VHXV7-YY726 |
Windows Server 2016
Operating system edition | KMS Client Product Key |
---|---|
Windows Server 2016 Datacenter | CB7KF-BWN84-R7R2Y-793K2-8XDDG |
Windows Server 2016 Standard | WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY |
Windows Server 2016 Essentials | JCKRF-N37P4-C2D82-9YXRT-4M63B |
Windows Server, versions 20H2, 2004, 1909, 1903, and 1809
Operating system edition | KMS Client Product Key |
---|---|
Windows Server Datacenter | 6NMRW-2C8FM-D24W7-TQWMY-CWH2D |
Windows Server Standard | N2KJX-J94YW-TQVFB-DG9YT-724CC |
Windows 11 and Windows 10 (Semi-Annual Channel versions)
Operating system edition | KMS Client Product Key |
---|---|
Windows 11 Pro Windows 10 Pro |
W269N-WFGWX-YVC9B-4J6C9-T83GX |
Windows 11 Pro N Windows 10 Pro N |
MH37W-N47XK-V7XM9-C7227-GCQG9 |
Windows 11 Pro for Workstations Windows 10 Pro for Workstations |
NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J |
Windows 11 Pro for Workstations N Windows 10 Pro for Workstations N |
9FNHH-K3HBT-3W4TD-6383H-6XYWF |
Windows 11 Pro Education Windows 10 Pro Education |
6TP4R-GNPTD-KYYHQ-7B7DP-J447Y |
Windows 11 Pro Education N Windows 10 Pro Education N |
YVWGF-BXNMC-HTQYQ-CPQ99-66QFC |
Windows 11 Education Windows 10 Education |
NW6C2-QMPVW-D7KKK-3GKT6-VCFB2 |
Windows 11 Education N Windows 10 Education N |
2WH4N-8QGBV-H22JP-CT43Q-MDWWJ |
Windows 11 Enterprise Windows 10 Enterprise |
NPPR9-FWDCX-D2C8J-H872K-2YT43 |
Windows 11 Enterprise N Windows 10 Enterprise N |
DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4 |
Windows 11 Enterprise G Windows 10 Enterprise G |
YYVX9-NTFWV-6MDM3-9PT4T-4M68B |
Windows 11 Enterprise G N Windows 10 Enterprise G N |
44RPN-FTY23-9VTTB-MP9BX-T84FV |
Windows 10 LTSC 2021 and 2019
Operating system edition | KMS Client Product Key |
---|---|
Windows 10 Enterprise LTSC 2021 Windows 10 Enterprise LTSC 2019 |
M7XTQ-FN8P6-TTKYV-9D4CC-J462D |
Windows 10 Enterprise N LTSC 2021 Windows 10 Enterprise N LTSC 2019 |
92NFX-8DJQP-P6BBQ-THF9C-7CG2H |
Windows 10 LTSB 2016
Operating system edition | KMS Client Product Key |
---|---|
Windows 10 Enterprise LTSB 2016 | DCPHK-NFMTC-H88MJ-PFHPY-QJ4BJ |
Windows 10 Enterprise N LTSB 2016 | QFFDN-GRT3P-VKWWX-X7T3R-8B639 |
Windows 10 LTSB 2015
Operating system edition | KMS Client Product Key |
---|---|
Windows 10 Enterprise 2015 LTSB | WNMTR-4C88C-JK8YV-HQ7T2-76DF9 |
Windows 10 Enterprise 2015 LTSB N | 2F77B-TNFGY-69QQF-B8YKP-D69TJ |
Windows Server, version 1803
Operating system edition | KMS Client Product Key |
---|---|
Windows Server Datacenter | 2HXDN-KRXHB-GPYC7-YCKFJ-7FVDG |
Windows Server Standard | PTXN8-JFHJM-4WC78-MPCBR-9W4KR |
Windows Server, version 1709
Operating system edition | KMS Client Product Key |
---|---|
Windows Server Datacenter | 6Y6KB-N82V8-D8CQV-23MJW-BWTG6 |
Windows Server Standard | DPCNP-XQFKJ-BJF7R-FRC8D-GF6G4 |
Windows Server 2012 R2
Operating system edition | KMS Client Product Key |
---|---|
Windows Server 2012 R2 Standard | D2N9P-3P6X9-2R39C-7RTCD-MDVJX |
Windows Server 2012 R2 Datacenter | W3GGN-FT8W3-Y4M27-J84CP-Q3VJ9 |
Windows Server 2012 R2 Essentials | KNC87-3J2TX-XB4WP-VCPJV-M4FWM |
Windows Server 2012
Operating system edition | KMS Client Product Key |
---|---|
Windows Server 2012 | BN3D2-R7TKB-3YPBD-8DRP2-27GG4 |
Windows Server 2012 N | 8N2M2-HWPGY-7PGT9-HGDD8-GVGGY |
Windows Server 2012 Single Language | 2WN2H-YGCQR-KFX6K-CD6TF-84YXQ |
Windows Server 2012 Country Specific | 4K36P-JN4VD-GDC6V-KDT89-DYFKP |
Windows Server 2012 Standard | XC9B7-NBPP2-83J2H-RHMBY-92BT4 |
Windows Server 2012 MultiPoint Standard | HM7DN-YVMH3-46JC3-XYTG7-CYQJJ |
Windows Server 2012 MultiPoint Premium | XNH6W-2V9GX-RGJ4K-Y8X6F-QGJ2G |
Windows Server 2012 Datacenter | 48HP8-DN98B-MYWDG-T2DCC-8W83P |
Windows Server 2008 R2
Operating system edition | KMS Client Product Key |
---|---|
Windows Server 2008 R2 Web | 6TPJF-RBVHG-WBW2R-86QPH-6RTM4 |
Windows Server 2008 R2 HPC edition | TT8MH-CG224-D3D7Q-498W2-9QCTX |
Windows Server 2008 R2 Standard | YC6KT-GKW9T-YTKYR-T4X34-R7VHC |
Windows Server 2008 R2 Enterprise | 489J6-VHDMP-X63PK-3K798-CPX3Y |
Windows Server 2008 R2 Datacenter | 74YFP-3QFB3-KQT8W-PMXWJ-7M648 |
Windows Server 2008 R2 for Itanium-based Systems | GT63C-RJFQ3-4GMB6-BRFB9-CB83V |
Windows Server 2008
Operating system edition | KMS Client Product Key |
---|---|
Windows Web Server 2008 | WYR28-R7TFJ-3X2YQ-YCY4H-M249D |
Windows Server 2008 Standard | TM24T-X9RMF-VWXK6-X8JC9-BFGM2 |
Windows Server 2008 Standard without Hyper-V | W7VD6-7JFBR-RX26B-YKQ3Y-6FFFJ |
Windows Server 2008 Enterprise | YQGMW-MPWTJ-34KDK-48M3W-X4Q6V |
Windows Server 2008 Enterprise without Hyper-V | 39BXF-X8Q23-P2WWT-38T2F-G3FPG |
Windows Server 2008 HPC | RCTX3-KWVHP-BR6TB-RB6DM-6X7HP |
Windows Server 2008 Datacenter | 7M67G-PC374-GR742-YH8V4-TCBY3 |
Windows Server 2008 Datacenter without Hyper-V | 22XQ2-VRXRG-P8D42-K34TD-G3QQC |
Windows Server 2008 for Itanium-Based Systems | 4DWFP-JF3DJ-B7DTH-78FJB-PDRHK |
Windows 8.1
Operating system edition | KMS Client Product Key |
---|---|
Windows 8.1 Pro | GCRJD-8NW9H-F2CDX-CCM8D-9D6T9 |
Windows 8.1 Pro N | HMCNV-VVBFX-7HMBH-CTY9B-B4FXY |
Windows 8.1 Enterprise | MHF9N-XY6XB-WVXMC-BTDCT-MKKG7 |
Windows 8.1 Enterprise N | TT4HM-HN7YT-62K67-RGRQJ-JFFXW |
Windows 8
Operating system edition | KMS Client Product Key |
---|---|
Windows 8 Pro | NG4HW-VH26C-733KW-K6F98-J8CK4 |
Windows 8 Pro N | XCVCF-2NXM9-723PB-MHCB7-2RYQQ |
Windows 8 Enterprise | 32JNW-9KQ84-P47T8-D8GGY-CWCK7 |
Windows 8 Enterprise N | JMNMF-RHW7P-DMY6X-RF3DR-X2BQT |
Windows 7
Operating system edition | KMS Client Product Key |
---|---|
Windows 7 Professional | FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4 |
Windows 7 Professional N | MRPKT-YTG23-K7D7T-X2JMM-QY7MG |
Windows 7 Professional E | W82YF-2Q76Y-63HXB-FGJG9-GF7QX |
Windows 7 Enterprise | 33PXH-7Y6KF-2VJC9-XBBR8-HVTHH |
Windows 7 Enterprise N | YDRBP-3D83W-TY26F-D46B2-XCKRJ |
Windows 7 Enterprise E | C29WB-22CC8-VJ326-GHFJW-H9DH4 |
Инфраструктура KMS состоит из KMS-сервера, который активируется в Microsoft (эта операция выполняется один раз по телефону или онлайн) и клиентов KMS, отправляющих запросы на активацию на KMS сервер. В качестве клиентов KMS сервера могут выступать пользовательские и серверные ОС Microsoft и MS Office.
Сам KMS сервер активируется помощью специального корпоративного VLC ключа (KMS host key), получить который может каждый корпоративный клиент Microsoft на сайте корпоративного лицензирования (https://www.microsoft.com/Licensing/servicecenter/default.aspx). Операция активации KMS сервера разовая.
Количество активаций, производимых с помощью KMS-сервера, не ограничено. Также отметим, что информация о проведенных активациях и их количестве не передается за пределы организации.
KMS сервер может активировать клиентов в разных доменах, а также клиенты в рабочих группах.
При установке KMS сервера в DNS регистрируется специальная SRV (_VLMCS) запись (по этой DNS записи клиент может найти имя KMS сервера в домене). Для активации KMS клиента на нем должен быть указан специальный публичный ключ KMS, который называется GVLK ключом ( Generic Volume License Key- универсальный ключ многократной установки). После указания GVLK ключа, клиент KMS пытается найти в DNS SRV запись, указывающую на сервер KMS и пытается произвести активацию.
Требования, необходимые для внедрения KMS сервера:
Между клиентом и сервером KMS должен быть открыт порт 1688. При выполнении онлайн активации самого сервера KMS (выполняется один раз), с сервера KMS должны быть доступны сайты Microsoft по портам 80/443 (в изолированной среде сервер KMS можно активировать по телефону)
Активация продуктов на сервере KMS возможна только при удовлетворении следующих требований к минимальному количеству KMS клиентов (т.н. порог активации):
Клиентские ОС: 25
Серверные ОС: 5
MS Office: 5
Совет. При необходимости счетчик активаций на KMS сервере можно накрутить программно с помощью скрипта.
Компьютеры с активированными на KMS сервере продуктами должны для продления активации подключатся к корпоративной сети с KMS сервером как минимум раз в 180 дней. По истечении 180 дней активация «слетает»
Служба KMS не требовательна к ресурсам, поэтому эта роль может быть установлена на любой сервер. К службе KMS как правило не предъявляется требований высокой доступности. Если сервер KMS не доступен несколько часов (и даже дней), этот простой никак не скажется на работе предприятия.
Активация MS Office на KMS сервере
Для возможности активации продуктов MS Office на KMS сервере нужно установить специальное расширение Microsoft Office Volume License Pack (отличается в зависимости от версии MS Office)
После установки License Pack для MS Office, нужно установить корпоративный KMS ключ для Office ( VLK ключ) и выполнить активацию KMS сервера для Office.
Дополнительные утилиты
Для удобства управления KMS серверами и ключами можно установить специальную утилиту Volume Activation Management Tool (VAMT).
Утилита VAMT не является частью поставки ОС, входит в состав пакета Windows Assessment and Deployment Kit (ADK) и устанавливается отдельно.
Для работы VAMT требуется .NET Framework
В качестве БД VAMT используется SQL Server Express
Последняя доступная версия, VAMT 1, поддерживаеи все ОС Microsoft включая Windows 8.1 и Server 2012 R2
Рекомендации
KMS сервера для активации ОС и Office могут работать на одном сервере с ОС Windows Server.
Для пользователей, не подключающихся к корпоративной сети с KMS сервером как минимум раз в 180 дней, рекомендуется использовать MAK ключ (ключ многократной активации).
Распространенные ошибки при использование сервера KMS
Установка корпоративного ключа KMS (VLK ключа) на клиентах
Общий KMS ключ не соответствует версии ОС на активируемом хосте
Сервер KMS должен быть обновлён для поддержки активации последних версий продуктов Microsoft.
Если при попытке активации появляется ошибка 0xC004F074 – причиной может быть отсутствие SRV записи _VLMCS._tcp.winitpro.ru в DNS. Ее можно создать вручную или указать адрес KMS сервера вручную (команда указана ниже)
Ошибка 0xC004F038 говорит о том, что в вашей сети не набралось необходимого количества систем для активации
Основные команды управления активацией на клиенте KMS
Установка публичного KMS ключа на клиенте:slmgr /ipk
Задать KMS сервер и порт:slmgr /skms kms-server.winitpro.ru:1688
Активция ОС на KMS-сервере:slmgr /ato
Информация о статусе активации ОС:slmgr /dlv
Вся лицензионная информация (включая статус активации MS Office):slmgr /dlv all
Совет. Всплывающее окно с лицензионной информацией не прокручивается и не всегда помещается на экран. Вывод информации для удобства анализа можно перенаправить в текстовый файл:cscript.exe c:\windows\system32\slmgr.vbs /dlv all > c:\tmp\dlv.txt
Совет. В качестве одного из расширений технологии KMS стоит упомянуть еще один тип активации продуктов MS — Active Directory Based Activation (ADBA). ADBA позволяет автоматически активировать клиенты с ОС Windows 8, Windows Server 2012 и MS Office 2013, включенные в состав домена. В этом случае выделенный KMS сервер отсутствует, а активация завязан на расширении службы Active Directory.
Материалы взяты с http://winitpro.ru/index.php/2015/03/13/faq-po-kms-aktivacii-produktov-microsoft/
It can become quite frustrating when your operating system keeps asking you to activate it, even though it was working fine just a few days back. This is what happens when you are using a corporate PC that hasn’t been connected to the organization’s network for a re-activation of the Windows operating system.
Maybe because you are working from home or from a remote location, your OS has failed to reactivate itself because it cannot connect to the domain’s Key Management Service (KMS) server.
If you are here, it means that you already have an idea of what KMS is and why you need it, but we are still going to explain the basics and how it works for the rookies.
Table of Contents
What is a KMS Server
A KMS server is used to manage Microsoft product activation, which includes both Windows Servers and clients operating systems and Microsoft Office products, within an organization’s domain. It is used to activate the products which have been obtained through Volume Licensing.
The role of a KMS server needs to be installed on a Windows Server OS, which can then be activated (once) using a CSVLK, also known as the KMS Host Key. This key is purchased from Microsoft and used to activate the KMS server deployed within your domain. The KMS server can then activate multiple client operating systems, depending on your Microsoft licensing agreement.
The KMS Host Key can be found on the Microsoft Volume Licensing Service Center at the following location:
Microsoft Volume Licensing Service Center >> License >> Relationship Summary >> Product Keys
Of course, you must already have the host key purchased to find it at the said location.
Once the KMS server is activated, other clients on the domain then need to be configured to this KMS server so the products can be activated. For that, a public Generic Volume License Key (GVLK) needs to be installed on the clients, which is unique for each Windows edition. Once the GVLK is installed, you must tell your computer which KMS server to contact for activating your OS.
Remember when we said that the OS needs to “reactivate” itself after a few days? This is what a KMS server is about. With a KMS server, a client OS is only activated for 180 days. After that, the OS will show messages like “Activate Windows,” or “Your Windows license is expired” if the machine is unable to connect with the KMS server.
The client OS rechecks for activation with the KMS server every 7 days, and can reactivate an unlimited number of times. Once the KMS server is activated with a host key, it no longer sends out any information over the internet, enabling organizations to use the KSM server to activate as many licenses as required, regardless of their agreement with Microsoft. Of course, this violates the terms of the agreement, but no one knows about it except for the organization’s personnel.
KMS VS. MAK
Both KMS and Multiple Activation Keys (MAK) are forms of volume licenses but have different use cases. While KMS uses an internal organization’s server to activate client operating systems, a single MAK activation uses the same to activate multiple clients using Microsoft services over the internet.
Learn how to check if Windows is KMS or MAK activated.
Let us now show you how to activate a client Windows operating system using an already-deployed KMS server.
How to Activate Windows using KMS Server
You can adapt the following steps if you return to your organization’s network where the KMS server is deployed to activate/reactivate your Windows operating system.
The complete process involves the following steps:
- Apply a valid GVLK key to the client OS.
- Specify the address of the KMS server on the client OS.
- Activate OS.
If your OS was once activated and simply requires reactivation because you have not been connected to the KMS server for the past 180 days, then you probably do not need to install a new GVLK key or reassign a new KMS server. However, do perform these mentioned steps if you are unable to reactivate the OS using the existing KMS server.
Apply GVLK Key
The public GVLK key is unique for different editions of Windows but can be found online. You can use a GVLK key from this Microsoft KMS client activation page. Once you see the right key, copy it and then perform these steps:
-
Launch the Command Prompt with elevated privileges.
-
Now use the following cmdlet to install a GVLK key. Replace “XXXXX” with the key you have copied from the Microsoft KMS client activation page.
slmgr.vbs /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Install GVLK key -
Now, wait for the key to be installed until you see the confirmation message.
Confirmation message
Once successfully installed, proceed to the next phase.
Add KMS Activation Server
Before you start to add a new KMS server, if your Windows was previously once activated, you can check if it can still find the KMS activation server on your organization’s domain in the DNS. This DNS entry is automatically created when a new KMS server is deployed on the network.
For that, begin by contacting your system administrator for the Fully Qualified Domain Name (FQDN) of the KMS server. Once you have that, proceed to perform these steps:
-
Open an elevated Command Prompt.
-
Now run the following cmdlet whilst replacing Address with the FQDN of the KMS server.
nslookup -q=SRV Address
Look for the KMS server
If you are unable to find any details regarding the KMS server, you can specify it manually using these steps:
-
Open Command Prompt with administrative rights.
-
Now run the following cmdlet while replacing Address with the FQDN for the new KMS server.
slmgr -skms Address
Configure new KMS server -
Now, wait for a confirmation message confirming that the new KMS server has been configured.
Confirmation message
Once the new KMS server has been registered, it is now time to activate the client OS.
Activate Windows OS with KMS
A simple command in the Windows Command Line Interface (CLI) will now activate the operating system.
-
Run the following cmdlet in an elevated Command Prompt to activate the client operating system.
Slmgr.vbs /ato
Activate Windows -
Now, wait for the “Product activated successfully” prompt.
Product activated successfully
Although the OS has been activated successfully, you can still confirm its activation status by running the following cmdlet:
slmgr.vbs /dli
That’s it! You have just activated your client operating system using a KMS server.
If you are an administrator yourself, you can also deploy a KMS server inside a domain using the following guide.
How to Deploy KMS Host Server on Windows Server 2022
As you may already be familiar with by now, the KMS host server needs to be activated using a CSVLK, which can be obtained from the Microsoft Volume Licensing Service Center. Once you have that, proceed with the following steps to deploy a KMS server on Windows Server 2022:
Note: Make sure that the Server has an active internet connection before you proceed.
-
Start by clicking Add roles and features in the Server Manager.
Add roles and features -
The “Add roles and features” wizard will now open. Click Next.
Click Next -
Select “Role-based or feature-based installation” and click Next.
Role-based installation -
Now select a server on your domain on which you want to install the KMS server on and click Next.
Select a server -
On the next page, check the box next to “Volume Activation Services.”
Volume Activation Services -
From the popup, leave the default settings and click Add features.
Add features -
Now back on the wizard, click Next.
Click Next -
On the Select features page, leave the default settings and click Next.
Click Next -
On the next page, click Next again.
Click Next -
On the Confirmation page, click Install.
Install selections -
Once the Volume Activation Services role and its features have been successfully installed, click Close to close the wizard.
Close wizard -
Now click on the Notifications button and then click Volume Activation Tools to configure KMS.
Volume Activation Tools -
The “Volume Activation Tools” wizard will now open. Here, select “Key Management Service (KMS)” and then specify the FQDN for the KMS server in the text field. When done, click Next.
Configure KMS details -
Now select “Install your KMS host key” and enter the CSVLK obtained from Microsoft Volume Licensing Service Center. When entered, click Commit.
Install KMS Host Key -
Now, wait for the confirmation screen for the KMS server to be activated. When it is, you may Close the wizard.
Once the KMS server has been deployed, you can now use the guide provided above to use this KMS server to activate the client Windows operating systems on your organization’s domain.
Final Thoughts
The Windows operating systems can have various types of product keys. However, to activate an OS using a KMS server, the OS needs to be using a volume or an enterprise license. A retail Windows product cannot e activated using a KMS server.
That said, KMS servers are mostly used by large organizations to save costs and activate as many Microsoft products as possible. Of course, technical teams can connect remote computers to the organization’s network via a VPN to activate them (if they are joined to the domain) using the KMS server.
В данной заметке мы рассмотрим вариант развёртывания альтернативного KMS сервера, позволяющего активировать современные версии ОС Microsoft Windows/Windows Server и пакета Microsoft Office. Этот вариант будет реализован на базе ОС Debian GNU/Linux 11 (Bullseye) и исходных кодов открытого проекта vlmcsd. Для своей работы KMS сервер vlmcsd не требует наличия купленных KMS-ключей или какой-либо онлайн-активации в Microsoft. Вопрос «лицензионной чистоты» данного варианта в текущих реалиях оставим на обсуждение любителям философии и «кинутым» заказчикам известного вендора. При этом, следует понимать, что изложенный далее материал публикуется исключительно в образовательных целях и не позиционируется, как руководство к действию. Этот материал опирается на публично открытые программные продукты и не преследует цели нарушения норм действующего законодательства и правил лицензирования ПО. И вообще, мы за всё хорошее и против всего плохого. Поехали…
Сборка пакета vlmcsd под Debian
Предполагается, что под роль KMS у нас уже подготовлен выделенный сервер и на него установлена чистая ОС Debian 11. Произведём сборку deb-пакета из исходных кодов проекта vlmcsd.
Устанавливаем служебные пакеты, требуемые для сборки deb-пакета vlmcsd из его исходных кодов:
# apt install git build-essential debhelper -y
Создаём каталог для сборки пакета и переходим в него:
# mkdir ~/vlmcsd-build
# cd ~/vlmcsd-build
Клонируем с GitHub исходный код проекта и переходим в его подкаталог:
# git clone https://github.com/Wind4/vlmcsd
# cd ~/vlmcsd-build/vlmcsd
Дополнительно подкачиваем в каталог с клонированными исходниками (файлы попадут в подкаталог /debian) готовые файлы дебианизации, которые нам потребуются для сборки пакета в Debian:
# git submodule update --init debian
Выполняем сборку deb-пакета:
# dpkg-buildpackage -rfakeroot -D -us -uc
Дожидаемся окончания сборки пакета, переходим на каталог уровнем выше и проверяем наличие пакета.
# cd ~/vlmcsd-build
# ls -la ~/vlmcsd-build
Устанавливаем готовый deb-пакет в систему:
# dpkg -i ./vlmcsd_1113_amd64.deb
Настройка службы vlmcsd
В процессе установки будет запущена служба vlmcsd.service. Проверим её состояние:
# systemctl status vlmcsd.service
Как видим, служба запущена с использованием конфигурационного файла /etc/vlmcsd/vlmcsd.ini.
В этом файле, при необходимости, мы можем изменить параметры работы службы. Например, мы можем отключить TCP прослушиватель для IPv6, раскомментировав строку, явно указывающую на использование IPv4:
...
Listen = 0.0.0.0:1688
...
Также можем включить логирование службы (изменим путь к лог-файлу по умолчанию, добавив в /var/log/ отдельный подкаталог vlmcsd):
...
LogFile = /var/log/vlmcsd/vlmcsd.log
...
После правок файла конфигурации создаём подкаталог под логи и перезапускаем службу:
# mkdir /var/log/vlmcsd
# systemctl restart vlmcsd.service
Убедимся, что в системе поднялся TCP-прослушиватель службы на порту 1688:
# ss -lnptu | grep 1688
Не забываем открыть соответствующий порт в правилах nftables/iptables.
Теперь давайте посмотрим, как у нас обстоят дела с логированием работы службы. Если попытаемся проверить лог-файл, обозначенный в конфигурации vlmcsd.ini, то можем обнаружить его отсутствие в файловой системе. Это связано в тем, что гражданин, который готовил файлы дебаиназиации, не очень заморачивался по поводу культуры запуска службы.
Давайте заглянем в свойства службы, как юнита systemd:
# systemctl cat vlmcsd
Как увидим, запуск службы настроен в контексте пользователя «nobody«.
Исправим эту ситуацию, создав нового выделенного пользователя, например «vlmcsd«, и написав правила переопределения (override) для юнита systemd.
Создаём нового системного пользователя:
# useradd -s /usr/sbin/nologin -r -M vlmcsd
Отдельный подкаталог под логи мы уже создали ранее, поэтому теперь назначаем на данный подкаталог права для выделенного пользователя и его группы:
# chown -R vlmcsd:vlmcsd /var/log/vlmcsd
Теперь создадим override для службы vlmcsd.service таким образом, чтобы служба запускалась в контексте пользователя «vlmcsd» с одноимённой группой.
# systemctl edit vlmcsd.service
Добавляем в override-файл следующий фрагмент:
[Service]
User=vlmcsd
Group=vlmcsd
Сохраняем override-файл, закрываем его и перезапускаем конфигурацию служб:
# systemctl daemon-reload
# systemctl restart vlmcsd.service
# systemctl cat vlmcsd.service
Проверяем: состояние службы; наличие TCP прослушивателя; пользователя, от которого запущена служба; успешность записи в лог файл
# systemctl status vlmcsd.service
# ss -lnptu | grep 1688
# ps -aux | grep vlmcsd
# cat /var/log/vlmcsd/vlmcsd.log
Как видим, служба запущена с учётом ранее настроенного нами переопределения с процессом от имени выделенного пользователя «vlmcsd«, в системе доступен TCP-прослушиватель на порту 1688, а логи службы успешно записываются в указанный нами файл. На этом настройку KMS сервера можем считать законченной и переходить к его тестированию.
Проверка работы KMS
Для возможности активации с развёрнутого KMS сервера, ОС Windows должна быть настроена в качестве KMS клиента путём предварительной установки в систему публично доступного ключа Generic Volume License Key (GVLK).
Найти ключи GVLK для клиентских и серверных ОС Windows можно по адресу: «Key Management Services (KMS) client activation and product keys for Windows Server and Windows»
Попробуем провести активацию современной серверной ОС Windows Server 2022 21H2 Standard. Для этого на только что установленной и ещё неактивированной ОС с правами администратора выполним команды установки GVLK ключа, указания адреса KMS сервера и последующей активации:
slmgr.vbs -ipk VDYBN-27WPP-V4HQT-9VMD4-VMK7H
slmgr.vbs -skms <IP или FQDN хоста KMS>
slmgr.vbs -ato
При выполнении последней команды мы должны получить сообщение об успешной активации Windows.
Проверить текущий статус активации можем командой:
slmgr.vbs -dlv
Аналогичным образом проверяем возможность активации клиенткой ОС Windows 10 21H2 Pro, используя GVLK «W269N-WFGWX-YVC9B-4J6C9-T83GX«.
Теперь нам остаётся проверить возможность активации пакета Microsoft Office.
Официальные ключи GVLK для Office 2016/2019/2021 можно найти по ссылке: «GVLKs for KMS and Active Directory-based activation of Office, Project, and Visio — Deploy Office».
Например, для активации 32-битной версии Office 2016 Pro на Windows 10 можно выполнить команды вида:
cd /d "C:\Program Files (x86)\Microsoft Office\Office16"
cscript ospp.vbs /sethst:<IP или FQDN хоста KMS>
cscript ospp.vbs /act
Как видим, офисный пакет успешно активировался. Проверить текущий статус активации Office можно командой:
cscript ospp.vbs /dstatusall
Другие варианты развертывания сервера KMS
Если описанный выше вариант самостоятельного развёртывания сервера KMS на базе исходных кодов vlmcsd кажется вам чем-то сложным и у вас полностью атрофировано чувство страха перед «чёрными ящиками» в виде готовых виртуальных аплайнсов из непроверенных источников, то можете обратить внимание на проект Иранских коллег с ресурса «DiGiBoY».
«DiGiBOX» – это миниатюрный образ готовой виртуальной машины VMWare, собранный на базе 32-битной версии Alpine Linux, требующий 1 процессорного ядра и 128 MB ОЗУ.
При запуске аплайнса достаточно указать базовые параметры IP с помощью TUI в команде digibox-config и уже через минуту эта система будет готова принимать и обрабатывать запросы от KMS-клиентов из локальной сети. Аплайнс не требует доступа в интернет и может быть размещён в изолированной сетевой «песочнице», из которой достаточно иметь открытый порт TCP 1688 для работы сервера KMS.
Собственный KMS сервер позволяет значительно упростить процесс активации продуктов Microsoft в корпоративной сети, и в отличии от обычной процедуры активации, не требует предоставления каждому компьютеру доступа в интернет к серверам активации Майкрософт. Инфраструктура KMS достаточно простая, надежная и легко расширяется (один KMS сервер может обслуживать тысячи клиентов).
В этой статье мы опишем процесс установки в локальной корпоративной сети KMS сервера на базе Windows Server 2012 R2 и его активацию.
Установка и настройка роли Volume Activation Services
Для работы службы KMS нужно установить и настроить отдельную роль сервера — Volume Activation Services. Сделать это можно с помощью консоли Server Manage или PowerShell:
Install-WindowsFeature -Name VolumeActivation -IncludeAllSubFeature
При установке через графический интерфейс консоли Server Manager, запустите мастер установки ролей (Add Roles and Features Wizard), и на этапе выбора ролей сервера (Server Roles) выберите пункт Volume Activation Services.
После окончания установки запустите консоль Volume Activation Tools. Запустится мастер установки службы активации. Укажите, что будет устанавливаться сервер Key Management Service (KMS).
Примечание. Если все ОС Windows, которые будут активироваться на KMS сервере, состоят в одном домене Active Directory и используемые в сети версии ОС не ниже Windows 8 / Windows Server 2012 — можно воспользоваться специальным расширением технологии KMS – Active Directory Based Activation, активацией через AD.
Примечание. Учетная запись, из-под которой выполняется настройка KMS сервера, должна обладать правами Enterprise Admin.
Далее на сайте Microsoft (https://www.microsoft.com/Licensing/servicecenter/home.aspx) в личном разделе необходимо получить свой корпоративный KMS ключ (KMS host key, это ключ активации KMS сервера). Найти его можно в разделе Downloads and Keys -> Windows Server -> Windows Server 2012 R2.
Найдите ключ с типом KMS (не MAK) и скопируйте его в буфер обмена.
Вставьте скопированный KMS ключ в соответствующее поле мастера установки KMS сервера (Install your KMS host key).
Если система примет ключ, сразу же будет предложено его активировать. На основании введенного ключа система определит продукт, к которому он относится, и предложит два варианта активации (по телефону или Интернету). Во втором случае придется предоставить серверу временный доступ в Интернет (только на период активации).
После активации ключа, нужно настроить параметры службы управления ключами: интервал активации и реактивации (по умолчанию клиенты продляют активацию каждые 7 дней), порт (по умолчанию служба KMS использует TCP порт 1688), исключения для Windows Firewall. Чтобы автоматически создать запись в DNS, необходимую для автоматического поиска сервера KMS в домене (SRV запись _vlmcs._tcp), включите опцию DNS Records – Publish.
Если KMS сервер должен обслуживать клиентов из разных доменов, можно опубликовать DNS записи в других DNS зонах. Укажите данные зоны в списке Publish to Custom DNS zones.
Примечание. Если у вас включен Windows Firewall, убедитесь, что активно правило, разрешающее входящие подключения на порт 1688. Если правила нет, включите правило брандмауэра из PoSh:
Get-NetFirewallRule -DisplayName *key*
Enable-NetFirewallRule -Name SPPSVC-In-TCP
На это процесс настройки сервера окончен. Проверьте, что в DNS создалась специальная запись, указывающая на ваш kms сервер (подробности в статье Как найти в домене KMS сервер):
nslookup -type=srv _vlmcs._tcp.corp.winitpro.ru
Далее получим информацию о текущем состоянии KMS сервера:
slmgr.vbs /dlv
Нас интересуют следующие поля:
- Partial Product Key – отображены последние 5 символов KMS ключа
- License status – статус активации лицензии (должно быть Licensed)
- Total requests received — количество запросов на активацию от клиентов(пока 0)
Внимание. Напомним, что у KMS сервера есть т.н. порог активации. Это означает, что активированный KMS сервер начинает активировать клиентов, только тогда, когда количество обратившихся к нему за последние 30 дней клиентов превысит предопределенные пороги (activation count):
- Порог активации для клиентских ОС Vista / Windows 7 / Win 8 / Win 10 – 25 клиентов
- Для серверных ОС: Windows Server 2008/ 2008 R2 / 2012 / 2012 R2 / 2016– 5 клиентов
Теперь KMS сервер может активировать клиентов. Что нужно выполнить на стороне клиента для успешной активации на KMS сервере:
- Задайте на клиенте публичный KMS (GVLK) ключ от соответствующей редакции Windows (ссылка ниже):
slmgr /ipk xxxxx- xxxxx - xxxxx - xxxxx – xxxxx
- Если KMS сервер не опубликован в DNS, укажите его адрес вручную:
slmgr /skms kmssrvwinitpro.ru:1688
- Активируйте ОС командой:
slmgr /ato
Совет. Подробнее о том, как активировать клиентов на KMS сервере описано тут).
Активированный KMS сервер ключом для WS 2012 R2 (VOLUME_KMS_WS12_R2 channel) поддерживает активацию всех ОС Windows вплоть до Windows 8.1 / Windows Server 2012 R2 (для поддержки активации Windows 10 и WS 2016 нужно установить специальное обновление и активировать KMS сервер новым ключом).
В том случае, если попытаться установить новый KMS ключ для Windows 10 на KMS сервер под управлением Windows Server 2012 R2 с помощью VAMT без установки указанного обновления, появиться ошибка:
Unable to verify product key. The specified product key is invalid, or is unsupported by this version of VAMT. An update to support additional products may be available online.
Несколько советов.
- Общедоступные KMS ключи для Windows 7/ Server 2008/ 2008 R2 можно найти здесь, для Windows 8.1 / Server 2012 R2 здесь, для Windows 10 / Windows Server 2016/2019/2022 здесь и здесь соответственно
- Для удобного управлениями ключами продуктами MS, активации клиентов и построения отчетов можно воспользоваться утилитой Microsoft Volume Activation Management Tool — VAMT 3.0
- С помощью этого же KMS сервера можно активировать не только ОС Windows, но и продукты MS Office ( подробности в статье Активация MS Office 2013 VL, KMS активация Office 2016)
- Для активации виртуальных машин, запущенных на сервере Hyper-V можно воспользоваться специальным типом активации: AVMA (Automatic Virtual Machine Activation)