Сегодня я разберу в практическом исполнении, как после развернутого сервиса Key Management Service произвести его полный ввод в боевое применение и удовлетворить налагаемому условию:
- 25 рабочих станций под управлением Windows 7 Корпоративная SP1
- 5 серверных систем Windows Server 2008 R2
По части серверных систем — это условие я выполнил, а вот с количеством рабочих станций по началу возникли некоторые трудности. Ниже я показываю, как я решал поставленную задачу.
Шаг №1: Накрутить счетчик KMS можно якобы с помощью следующего скрипта:
- Создать два каталога со специфичными именами
- Создать bat-файл
- Запустить bat-файл с правами Администратора на системе
Итак действия ниже:
C:\Windows\system32>mkdir c:\7B296FB0-376B-497e-B012-9C450E1B7327-5P-0.C7483456-A289-439d-8115-601632D005A0
C:\Windows\system32>mkdir c:\7B296FB0-376B-497e-B012-9C450E1B7327-5P-1.C7483456-A289-439d-8115-601632D005A0
Создаю bat (c:\1\kms_count.bat) файл следующего содержания:
@echo off
set skms=srv-dc.polygon.local
for %%i in (. . . . . . . . . . . . . . . . . . . . . . . . . .) do call :Act %skms%
slmgr /ato
sc stop sppsvc
goto :end
:Act
sc stop sppsvc
xcopy "c:\7B296FB0-376B-497e-B012-9C450E1B7327-5P-0.C7483456-A289-439d-8115-601632D005A0" "%systemroot%\system32\*" /H /R /K /Y
xcopy "c:\7B296FB0-376B-497e-B012-9C450E1B7327-5P-1.C7483456-A289-439d-8115-601632D005A0" "%systemroot%\system32\*" /H /R /K /Y
sc start sppsvc
cscript.exe "%systemroot%\system32\slmgr.vbs" /skms %1
cscript.exe "%systemroot%\system32\slmgr.vbs" /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
cscript.exe "%systemroot%\system32\slmgr.vbs" /ato
sc stop sppsvc
:end
количество точек должно быть больше или равно двадцати пяти – это число запросов к KMS серверу, где ключ: FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4 — это клиентский ключ установки KMS для «Windows 7 Профессиональная» берется из ссылки: https://technet.microsoft.com/ru-ru/library/jj612867(v=ws.11).aspx
После окончания работы скрипта на сервере где развернут
Теперь нужно на всех компьютерах где активацию Windows проделывали с использованием не лицензионных ключей сбросить и нацелить на KMS сервис дабы восстановить рекомендации предъявляемые к KMS сервису иначе через 180 дней данную процедуру придется повторить.
После окончания работы скрипта на сервере где развернут KMS сервис проверяю количество запросов:
C:\Windows\System32>cscript slmgr.vbs /dlv
Key Management Service cumulative requests received from clients
Total requests received: 32
Его значение должно превысить число 25.
Далее KMS сервер переходит в режим полнофункциональной работы и занимается тем за чем эго разворачивали, а именно активирует, но если не будет запросов к нему в течение 180 дней, данную процедуру придется повторить. Пару раз этот скрипт у меня сработал или мне так показалось, вообще не удача.
Шаг №2: Теперь не скриптом буду накручивать счетчик, а склонированными виртуальными системами на базе Windows 7 и скрипта, но времени уже на данную процедуру чуть больше.
- Создаем VM (или ставим через WDS) на ESXi (или под Virtualbox)
- Ставим на нее ОСЬ Windows 7 Professional SP1 (Авторизуюсь под своей учетной записью в Volume Licensing Service Center и скачиваю дистрибутив данный дистрибутив)
- Пишем в текстовом редакторе notepad++ такие строки и сохраняем на рабочем столе данный файл с расширением bat:
slmgr /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4
slmgr /skms srv-dc.polygon.local:1688
slmgr /ato
shutdown -s -t 0 -f
- Выключаем VM, создаю снапшот данной виртуальной машины, при этом Windows не должна быть активирована.
- Запускаем VM
- Запускаем с рабочего стола данный bat-файл с правами Администратора
После проверяем, что на сервере где развернута KMS служба счетчик Current Count изменился, а он действительно изменяется. И таким образом возвратом на снапшот и запуском bat файла поднимаем счетчик до необходимого значения. Долго и однообразно, но главное выполнить задачу.
Есть еще один нюанс с которым я столкнулся, да же способ выше вдруг перестал работать в логах на сервере KMS одна и та же запись перестала проходить, и в этом случаем предпринял решение сделать следующее см. ниже с этого шага я добился поставленной цели названием данной заметки:
Шаг №3 Создал на ESXi виртуальную машину.
- VM (+ Скрипты, Windows6.1-KB2998527-x64.msu, Windows6.1-KB2757817-x64.msu) → сделал 25 снапшотов
- Поместил на рабочий стол два скрипта
Changename.bat
start cmd /c slmgr /rearm"
timeout /t 10 /nobreak > NUL
wmic computersystem where name="%COMPUTERNAME%" call rename name="computer-%random%"
shutdown /r /t 0
Activate.bat
start cmd /c "slmgr.vbs /skms srv-dc.polygon.local:1688"
timeout /t 2 /nobreak > NUL
start cmd /c "slmgr.vbs /ipk FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4"
timeout /t 15 /nobreak > NUL
start cmd /c "slmgr.vbs /ato"
timeout /t 30 /nobreak > NUL
shutdown /s /t 0
Выключил виртуальную машину и экспортировал VM в контейнер OVA.
А потом развернул 25 систем: vsphere Client — File — Deploy OVF Template.
- Запускаю первую VM
- Запускаю скрипт изменения имени компьютера
- Запускают скрипт активации
- После удаляю данную VM и перехожу к следующей.
Тем временем на сервере KMS слежу за счетчиком он увеличивается раз за разом:
C:\Users\ekzorchik>slmgr /dli
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Name: Windows Server(R), ServerEnterprise edition
Description: Windows Operating System – Windows Server(R), VOLUME_KMS_R2_B channel
Partial Product Key: XC3D2
License Status: Licensed
Key Management Service is enabled on this machine
Current count: 26 → счетчик увеличен на требуемое значение, да и плюс 1 (+1)
Listening on Port: 1688
DNS publishing enabled
KMS priority: Normal
Теперь рабочие станции на которые появлялись ошибки при активации: Код ошибки: 0x8007007B, а при консольном обновлении: slmgr /ato ошибка ниже представленного вида:
Переключаюсь на станцию на которой возникла проблема с активацией через KMS сервис, пробую активировать систему по сети:
Пуск – Панель управления – Система – нажимаю на “Необходимо выполнить активацию сегодня. Выполнить активацию Windows” — “Активировать Windows по сети” и
и система успешно активируется:
Теперь нужно на всех компьютерах где активацию Windows проделывали с использованием не лицензионных ключей сбросить и нацелить на KMS сервис дабы восстановить рекомендации предъявляемые к KMS сервису иначе через 180 дней данную процедуру придется повторить.
Вот собственно и все, работает, с уважением автор блога — Олло Александр (aka ekzorchik).