Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Windows

На GitHub есть интересный open source проект vlmcsd (https://github.com/Wind4/vlmcsd) для эмуляции сервера KMS активации Microsoft. Вы можете использовать его для развертывания собственного KMS сервера на платформах, отличных от Windows Server (тем самым можно сэкономить на лицензии Windows Server, если вы его не используете). Такой KMS сервер можно установить на Linux, Android, FreeBSD, Mac OS. В этой статье мы покажем, как установить KMS сервер на базе vlmcsd в CentOS Linux и использовать его для сетевой активации компьютеров с десктопными версиями Windows, Windows Server и Microsoft Office.

Дисклаймер. Данная статья предоставляется в образовательных целях и не предполагает использование рассмотренного продукта для незаконной активации Windows или Office. Проект WinITPro не поддерживает использование нелицензионного ПО ни в каком виде.

Прежде чем начать, рекомендуем познакомится с технологией корпоративной KMS активации Microsoft. Почти вся необходимая информация есть в статье FAQ по KMS активации в Windows.

В данном примере мы используем CentOS 8 для установки KMS сервера, но вы можете использовать и другие ОС, например, Ubuntu, Debian, RHEL или даже ваш NAS (есть примеры успешной установки на NAS сервер Synology).

Подключитесь к своему серверу Linux и воспользуйтесь менеджером пакетов yum (dnf) для установки пакеты git и gcc:

# dnf update
# dnf install git gcc

Теперь скопируйте и установите пакет vlmcsd:

# git clone https://github.com/Wind4/vlmcsd

# cd vlmcsd
# make

Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Перейдите в каталог bin:

# cd bin

Запустите KMS сервер:

# ./vlmcsd

Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Должно появится сообщение:

Connecting to 127.0.0.1:1688 … successful
Sending activation request (KMS V6) 1 of 1 -> 55041-00206-559-475403-03-1076-6002.0000-1482020 (3A1C049600B60076)

Это значит, что вы успешно скомпилировали и запустили KMS сервер на Linux.

По умолчанию vlmcsd слушает на стандартном порту KMS — TCP/1688. Поэтому вам нужно открыть порт в файерволе Linux, чтобы разрешить клиентам подключаться к нему. Для firewalld выполните следующие команды:

Читайте также:
Апгрейд лицензии до Windows 10 без выполнения обновления

# firewall-cmd —zone=public —permanent —add-port=1688/tcp
# firewall-cmd –reload

Проверьте что порт 1688 открыт:

# firewall-cmd —list-port
# netstat -ntlp | grep LISTEN

Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Чтобы не запускать vlmcsd вручную, вы можете создать собственный демон, которым можно управлять через systemd.

#cp vlmcsd /usr/bin
# cp vlmcs /usr/bin
# touch /etc/systemd/system/kms-script.service
# chmod 664 /etc/systemd/system/kms-script.service
# nano /etc/systemd/system/kms-script.service

Добавьте в файл следующее описание сервиса:

[Unit]
Description=Microsoft KMS Server
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/bin/vlmcsd
RemainAfterExit=yes
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

Осталось запустить службу KMS и добавить ее в автозагрузку:

# systemctl daemon-reload
# systemctl start kms-script.service
# systemctl status kms-script.service
# systemctl enable kms-script.service

Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Расширенные настройки KMS сервера можно задать с помощью файла vlmcsd.ini (есть образец в каталоге ../vlmcsd/etc/. Тамже можно задать путь к файлу с логами KMS сервера (vlmcsd.log). Можно указать пути к файлам в аргументах запуска vlmcsd с помощью параметров:
-i /etc/vlmcsd.ini
-l /var/log/vlmcsd.log

Также вы можете запустить этот KMS сервер в docker контейнере:

sudo docker pull mikolatero/vlmcsd
sudo docker run -d -p 1688:1688 —restart=always —name kms_server mikolatero/vlmcsd /vlmcsd -D -d -t 3 -e -v -R172800 -A10080

Если у вас используется Microsoft DNS, вы можете создать _VLMCS запись для автоматического поиска KMS сервера клиентами в домене. Для создания записи в DNS используйте такую команду PowerShell:
Add-DnsServerResourceRecord -Srv -Name «_VLMCS._tcp» -ZoneName «winitpro.ri» -DomainName «192.168.14.147» -Priority 0 -Weight 0 -Port 1688

Где
192.168.14.147
– IP адрес вашего Linux сервера со службой KMS.

Теперь все хосты Windows (и Office) в домене будут автоматически активироваться на KMS сервере, если на них установлен публичный ключ корпоративной активации (GVLK). Полный список GVLK (Generic Volume License Keys) ключей для активации всех доступных версий Windows доступен на сайте Microsoft https://docs.microsoft.com/en-us/windows-server/get-started/kms-client-activation-keys.

Читайте также:
Боремся с ростом файла Windows.edb службы поиска Windows

Например, на этой странице найдите GVLK ключи для активации Windows Server 2022 Standard (VDYBN-27WPP-V4HQT-9VMD4-VMK7H) и Windows 10 Pro (W269N-WFGWX-YVC9B-4J6C9-T83GX).

Для ручной активации Windows нужно задать GVLK ключ для вашей версии Windows, адрес сервера KMS активации и выполнить команду активации. Используются следующие команды (например, для Windows Server 2022 Std):

slmgr.vbs -ipk VDYBN-27WPP-V4HQT-9VMD4-VMK7H
slmgr.vbs -skms 192.168.14.147
slmgr.vbs -ato

После того, как вы выполните последнюю команду, появится надпись
Product activated successfully
. Это значит ваша копия Windows успешно активирована.

Установка KMS сервера vlmcsd на Linux для активации Windows и Office

Проверить статус активации Windows можно командой:
slmgr.vbs -dlv

В моем примере при активации Windows Server появилась ошибка:

Error: 0xC004F069 On a computer running Microsoft Windows non-core edition, run ‘slui.exe 0x2a 0xC004F069’ to display the error text.

Причина в том, что у меня установлена ознакомительная (Evaluation) версия Windows Server 2022. Сначала нужно конвертировать ее в полноценную Standard согласностатье:

dism /online /set-edition:serverstandard /productkey:VDYBN-27WPP-V4HQT-9VMD4-VMK7H /accepteula

И только после этого можно активировать Windows.

Аналогичным образом вы можете активировать на KMS сервере корпоративные версии Microsoft Office 2019/2016/2013. Для этого используются такие команды:

cd C:Program FilesMicrosoft OfficeOffice16
cscript ospp.vbs /sethst: 192.168.14.147
cscript ospp.vbs /act

Проверить статус активации Office можно так:

cscript ospp.vbs /dstatusall

Подробнее про особенности KMS активации Microsoft Office.

Итак, мы показали, как развернуть KMS сервер на Linux, на котором можно активировать все версии Windows включая последние Windows Server 2022 и Windows 11

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Информационный блог про Windows
Добавить комментарий