===== KMS-активация =====
==== Общая информация ====
KMS-активация работает следующим образом.
На клиентах устанавливаются общедоступные GVLK-ключи, которые можно найти на сайте Microsoft. Они разные для разных редакций. KMS-сервер (отдельная роль) активируется CSVLK ключем, который клиент получает от MS. Клиенты стучатся на KMS-серввер через специальную DNS-запись. Через KMS можно активировать неограниченное количество лицензий. О них сервер передает информацию в MS.
----
==== Установка эмулятора KMS на Ubuntu 20.04 ====
Существует проект эмулятора KMS-сервера для Linux: **vlmcsd**.
Ссылка: https://github.com/Wind4/vlmcsd \\
=== Установка на Ubuntu ===
На Ubuntu, где хотим установить //vlmcsd// - поставим //gcc// и //git//, если надо:
sudo apt install gcc
sudo apt install git
Клонируем репозиторий:
git clone https://github.com/Wind4/vlmcsd
Компилим:
cd vlmcsd
make
Проверяем запуск бинаря после компила:
cd bin
./vlmcsd
Для автоматического запуска копируем бинарь в бин и создаем инициализационный скрипт systemd:
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
Вставляем в nano содержимое:
[Unit]
Description=MSFT KMS Server Emulator
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
Переинициализируем //systemd//, проверяем работу скрипта, разрешаем его запуск:
systemctl daemon-reload
systemctl start kms-script.service
systemctl status kms-script.service
systemctl enable kms-script.service
=== Установка DNS-записи ===
Теперь, чтобы клиенты могли найти KMS-сервер, нам нужно создать DNS-запись типа SRV в разделе tcp для него с указанием адреса и порта (1688).
Пример:
;#;
{{::dns_kms.jpg?400|}}
;#;
При помощи PS добавить запись можно так:
Add-DnsServerResourceRecord -Srv -Name "_VLMCS._tcp" -ZoneName "arasaka.labs" -DomainName "10.88.88.21" -Priority 0 -Weight 0 -Port 1688
Теперь клиентам нужно установить GVLK-ключ, вот команда (данный ключ - это GVLK-ключ корпоративной версии Windows 10):
slmgr /ipk NPPR9-FWDCX-D2C8J-H872K-2YT43
Можно установить в тихом режиме и запустить активацию (полезно для удаленного выполнения):
cscript //B "c:\windows\system32\slmgr.vbs" /ipk N69G4-B89J2-4G8F4-WWYCC-J464C
cscript //B "c:\windows\system32\slmgr.vbs" /ato
Активировать Windows можно командой:
slmgr -ato
Ключи GVLK для различных редакций Windows:\\
https://docs.microsoft.com/en-us/windows-server/get-started/kms-client-activation-keys
А вот здесь ключи на самом проекте эмулятора (включая ключи на офис):\\
http://wind4.github.io/vlmcsd/
Локальный бэкап ключей на Windows и MS Office:
[[GVLK-ключи]]
----
==== Управление активацией через Volume Activation Management Tool ====
Централизованно можно управлять активацией через Volume Activation Management Tool от MS. Она может подключаться удаленно и устанавливать ключи активации\производить процедуру активации.
:!: Утилита может не находить компьютеры в домене через поиск AD. Тогда может помочь запрос LDAP. Пример запроса, который произведет поиск в домене всех компьютеров:
LDAP://office.contoso.com??sub?(&(objectClass=computer)(operatingSystemVersion=*)
----
==== Узнать статус активации командой ====
Без всплывающего графического окна:
Get-CimInstance SoftwareLicensingProduct -Filter "Name like 'Windows%'" | >> where { $_.PartialProductKey } | select Description, LicenseStatus
С всплывающим сообщением:
slmgr /xpr
----
=== Активировать с конкретного сервера ===
slmgr /skms kms_server.winitpro.ru:1688
{{tag>Microsoft KMS Linux Ubuntu DNS}}