kms-активация

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
kms-активация [2022/08/29 09:25] jpkms-активация [2024/12/26 14:23] (current) jp
Line 6: Line 6:
  
 На клиентах устанавливаются общедоступные GVLK-ключи, которые можно найти на сайте Microsoft. Они разные для разных редакций. KMS-сервер (отдельная роль) активируется CSVLK ключем, который клиент получает от MS. Клиенты стучатся на KMS-серввер через специальную DNS-запись. Через KMS можно активировать неограниченное количество лицензий. О них сервер передает информацию в MS.  На клиентах устанавливаются общедоступные GVLK-ключи, которые можно найти на сайте Microsoft. Они разные для разных редакций. KMS-сервер (отдельная роль) активируется CSVLK ключем, который клиент получает от MS. Клиенты стучатся на KMS-серввер через специальную DNS-запись. Через KMS можно активировать неограниченное количество лицензий. О них сервер передает информацию в MS. 
 +
 +----
  
 ==== Установка эмулятора KMS на Ubuntu 20.04 ==== ==== Установка эмулятора KMS на Ubuntu 20.04 ====
Line 13: Line 15:
 Ссылка: https://github.com/Wind4/vlmcsd \\ Ссылка: https://github.com/Wind4/vlmcsd \\
  
-Из проекта нам нужны: binaries и source code. Из binaries нам нужен подходящий под нашу систему бинарник (в его имени должна быть буква "d", чтобы он мог работать в качестве демона). Для ubuntu это:+=== Установка на Ubuntu ===
  
-   \binaries\Linux\intel\glibc\vlmcsd-x64-glibc    +На Ubuntu, где хотим установить //vlmcsd// - поставим //gcc// и //git//, если надо:
-Из source code\etc нам потребуются файлы конфигурации:+
  
-   vlmcsd.ini +   sudo apt install gcc 
-   vlmcsd.kmd+   sudo apt install git 
 +Клонируем репозиторий:
  
-Эти три файла копируем в отдельную директорию (пусть будет //kms-emul//).+    git clone https://github.com/Wind4/vlmcsd   
 +Компилим:
  
-Разместим эту папку с тремя файлами по пути:+   cd vlmcsd 
 +   make 
 +Проверяем запуск бинаря после компила:
  
-   /usr/local/kms-emul/ +   cd bin 
-Теперь можно попробовать запустить эмулятор следующим образом (с указанием лога):+   ./vlmcsd 
 +Для автоматического запуска копируем бинарь в бин и создаем инициализационный скрипт systemd:
  
-   /usr/local/kms-emul/vlmcsd-x64-glibc -i /usr/local/kms-emul/vlmcsd.ini -l /home/jp/vlmcsd.log +   cp vlmcs /usr/bin 
-Чтобы понять, работает ли KMS-сервер - надо проверить подключения по порту **tcp 1688**.+   touch /etc/systemd/system/kms-script.service 
 +   chmod 664 /etc/systemd/system/kms-script.service 
 +   nano /etc/systemd/system/kms-script.service 
 +Вставляем в nano содержимое:
  
-Если всё ок, круто было бы добавить автоматический запуск при старте системы. Для этого создаем файл для запуска через systemd: +<WRAP prewrap>
- +
-   sudo nano /etc/systemd/system/vlmcsd.service +
-Со следующим содержанием:+
 <code> <code>
 [Unit] [Unit]
-Description=vlmcsd +Description=MSFT KMS Server Emulator
-After=syslog.target+
 After=network.target After=network.target
 +After=network-online.target 
 +Wants=network-online.target
 [Service] [Service]
-Type=forking +Type=oneshot 
-ExecStart=/usr/local/kms-emul/vlmcsd-x64-glibc -i /usr/local/kms-emul/vlmcsd.ini -l /home/jp/vlmcsd.log +ExecStart=/usr/bin/vlmcsd 
 +RemainAfterExit=yes 
 +LimitNOFILE=65536
 [Install] [Install]
 WantedBy=multi-user.target WantedBy=multi-user.target
 </code> </code>
 +</WRAP>
  
-Подключаем в systemd:+Переинициализируем //systemd//, проверяем работу скрипта, разрешаем его запуск:
  
-  sudo systemctl daemon-reload +   systemctl daemon-reload 
-  sudo systemctl enable vlmcsd+   systemctl start kms-script.service 
 +   systemctl status kms-script.service 
 +   systemctl enable kms-script.service
      
-Установка DNS-записи.+=== Установка DNS-записи ===
  
 Теперь, чтобы клиенты могли найти KMS-сервер, нам нужно создать DNS-запись типа SRV в разделе tcp для него с указанием адреса и порта (1688). Теперь, чтобы клиенты могли найти KMS-сервер, нам нужно создать DNS-запись типа SRV в разделе tcp для него с указанием адреса и порта (1688).
Line 60: Line 70:
 Пример:  Пример: 
  
 +;#;
 {{::dns_kms.jpg?400|}} {{::dns_kms.jpg?400|}}
 +;#;
 +
 +При помощи PS добавить запись можно так: 
 +
 +<WRAP prewrap>
 +<code>
 +Add-DnsServerResourceRecord -Srv -Name "_VLMCS._tcp" -ZoneName "arasaka.labs" -DomainName "10.88.88.21" -Priority 0 -Weight 0 -Port 1688
 +</code>
 +</WRAP>
  
 Теперь клиентам нужно установить GVLK-ключ, вот команда (данный ключ - это GVLK-ключ корпоративной версии Windows 10): Теперь клиентам нужно установить GVLK-ключ, вот команда (данный ключ - это GVLK-ключ корпоративной версии Windows 10):
Line 66: Line 86:
    slmgr /ipk NPPR9-FWDCX-D2C8J-H872K-2YT43    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" /ipk N69G4-B89J2-4G8F4-WWYCC-J464C
-   +   cscript //B "c:\windows\system32\slmgr.vbs" /ato
 Активировать Windows можно командой: Активировать Windows можно командой:
  
    slmgr -ato    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=*)
 +
 +----
 +
 +==== Узнать статус активации командой ====
 +
 +Без всплывающего графического окна:
 +
 +<WRAP prewrap>
 +<code>
 +Get-CimInstance SoftwareLicensingProduct -Filter "Name like 'Windows%'" | >> where { $_.PartialProductKey } | select Description, LicenseStatus
 +</code>
 +</WRAP>   
 +С всплывающим сообщением:
 +
 +   slmgr /xpr
 +
 +----
 +
 +=== Активировать с конкретного сервера ===
 +
 +  slmgr /skms kms_server.winitpro.ru:1688
  
 {{tag>Microsoft KMS Linux Ubuntu DNS}} {{tag>Microsoft KMS Linux Ubuntu DNS}}
kms-активация.1661765105.txt.gz · Last modified: 2022/08/29 09:25 by jp