KMS - Key Management Service - Installation und Konfiguration

27.10.2016 | Autor: Mark Heitbrink

Gruppenrichtlinien und Deployment liegen thematisch ganz eng bei einander. Ich stolpere oft über den KMS (Key Management Service) zur Aktivierung vom Betriebssystem und Office.
Vor allem stolpere ich, weil mir lange Zeit nicht klar war, daß das VAMT (Volume Activation Management Tool) das unnötigste und sinnloseste Werkzeug ist, das man für den KMS einsetzen kann.

Die Fakten:

  • Es ist schon alles auf dem Server vorhanden. Die slmgr.vbs ist onboard. Diese konfiguriert den Dienst Software Protection (sppsvc) , der letztlich die KMS Funktionalität bietet.
  • Die Installation und Konfiguration des KMS inkl. der Aktvierung des eigenen KMS Productkeys ist nur in der CMD (Eingebaeaufforderung) möglich, bzw. die Aktivierung kann wie auch beim Einzelprodukt übers Internet oder übers Telefon erfolgen. (slui.exe)
  • Der KMS kann erst mal nur sein eigenes Betriebssystem und das passende Client OS aktivieren. Für weitere Produkte (neuere Betriebsysteme oder Office) benötigt er ein Update.
  • VAMT ist ein eigenständiges Monitoring/Inventarisierungs Produkt. Es liest nicht die aktuelle Konfiguration/Datenbank des KMS Hosts aus, sondern baut eine eigene auf und ist wirklich nur ein weitere Datenbank/Informationsquelle. Der KMS funktioniert komplett ohne diese.
  • VAMT nutzt RPC Calls, dafür sind lokale Administratorrechte notwendig, um den Status des jeweiligen Rechners abzufragen. Es liest, wie schon gesagt,  nicht den aktuellen KMS Host aus.
  • Man kann im VAMT seine eigenen Keys hinterlegen. Diese dienen nur zur manuellen Aktivierung eines Clients, falls dieser sich nicht automatisch aktiviert. Das Tool macht praktisch über einen RPC Call ein slmgr.vbs /ATO xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
  • Die im VAMT hinterlegten Product Keys können nicht über das VAMT aktiviert werden. Die "produktiven" werden nicht im VAMT verwaltet. Diese liegen im KMS. Ein weiterer Beweis, das das VAMT komplett eigenständig ist.

VAMT ist nur ein Addon, ohne echten Sinn und Zweck. Für Inventarisierung gibt es 1000 bessere Tools. Dafür muss ich mir keine SQL Instanz (in der VAMT Version 3.0 notwendig) installieren. Völlig unnötig.

Ok, das ist gemein, es gibt einen guten Anwendungszweck für VAMT:
Stellt euch vor ihr habt aktuell ein "durcheinander" an verschiedenen Versionen in eurem Unternehmen und jeder Client spricht regelmässig mit dem Windows Aktivierung Server im Internet. Schön ist das nicht. Schöner wäre, wenn alle Clients den internen KMS nutzen und dieser mit MS spricht. Ihr möchtet alle Clients umstellen, sodass diese ab jetzt als KMS Clients agieren. Dann könnt ihr mit VAMT alle Computer suchen und per RPC Call (lokale Adminrechte notwendig) den GVLK (siehe Tabelle unten) auf jedem System integrieren.

Es gibt 4 Seriennummergruppen für Betriebssysteme:

  • Client VL (Clients VL)
  • Group A (Web und HPC)
  • Group B (Standard und Enterprise)
  • Group C (Datacenter)

Änderung in Windows Server 2012, es ist keine Enterprise Version mehr vorhanden.

Ein Group B Key kann alle Client VL und Group A OS aktivieren. Ein Group C kann alle Group A,B und Client VL aktivieren. Je "höher" die Lizenz, desto mehr Versionen können mit einem einzigen Key aktiviert werden. Bester Weg: Man hat einen Server KMS Key für die aktuellste Serverversoin aus der Group C! Dieser kann jedes andere OS aktivieren.

Sonderfälle:

  • Wer nur einen ClientVL Key hat, der muss seinen "KMS Server" auf einem Windows Client OS installieren. Der Key wird auf einem Server OS nicht akzeptiert
  • Windows 10 ... Windows 10 kann als Client nicht mit dem Windows Server 2012 Datacenter Key aktiviert werden, denn der Server kennt nur Windows 8.1 Clients und abwärts.
    Im Lizenzcenter findet ihr gut versteckt einen "Windows Server 2012 R2 Datacenter Key for Windows 10", der kann "Alles".
    Ab der kommenden Serverversion 2016 reicht der "normale" Datacenter Key, denn dann ist das Server und Client wieder aus derselben Generation Betriebssysteme.

DNS Konfiguration

Der KMS wird im Unternehmen über einen DNS Eintrag von den Clients gefunden, diesen Service Record könnt ihr per Hand erstellen:
http://technet.microsoft.com/en-us/library/ff793405.aspx

DNS Verwaltung -> Forward Lookup Zone -> _tcp -> "weitere neue Einträge" -> "Dienstidentifizierung (SRV)" -> "." (Punkt am Ende des Hostnamens.!)

KMS Host Installation auf einem Server 2012 R2.
Konfiguration für Windows 10/Server 2016, Office 2010, Office 2013 und Office 2016

Der Server 2012 R2 kann nur seine Generation oder älteres Client/Server OS aktivieren. Er benötigt ein Update um neuere OS aktivieren zu können. Dasselbe gilt für Server 2008 R2. Für den Server 2008 (ohne R2!) gibt es kein Update mehr, um Windows 10/Server 2016 zu aktivieren.

Benötigte Software:

Ich habe hier den Prozess komplett in der CMD nachgestellt. Wer mag, kann die Installations ID und die am Telefon genannte Activation ID auch etwas leichter in einem GUI FrontEnd eintippen. Die 6er Blöcke sind etwas leichter zu Lesen, als die komplette Kette ohne Trennzeichen.

Für das Frontend in Start -> Ausführen oder auch in der CMD: "slui.exe 4"  aufrufen und "Deutschland" wählen:

Hier nun folgend der komplette Prozess per Commandline:

a) Integration Key und Aktivierung für Betriebssysteme

aa) Integration -> /ipk

C:\Windows\System32>cscript slmgr.vbs /ipk EUER-GROUP-SERVER-VLKEY-XXXXX
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installed product key EUER-GROUP-SERVER-VLKEY-XXXXX successfully.

ab) Installation ID anzeigen -> /dti
diese wird bei jedem Aufruf dynamisch generiert und muss am Telefon eingegeben werden)

C:\Windows\System32>cscript slmgr.vbs /dti
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installation ID: 012345678901234567890123456789012345678901234567890123

ac) Aktivierung des integrierten Keys -> /atp
per Telefon, Microsoft 0800 28 48 28 3. Nach dem Eintippen der Installation ID wird einem die Activation ID genannt.

C:\Windows\System32>cscript slmgr.vbs /atp 987654321098765432109876543210987654321098765432109876
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Confirmation ID for product 7b37c913-252b-46be-ad80-b2b5ceade8af deposited successfully.

b) Office in den KMS integrieren
Das "KMS Schema" muss für die passende Office Version erweitert werden, vorher wird der Key per /IPK als ungültig deklariert. Das Update muss PRO OFFICE VERSION erfolgen.

C:\Windows\System32>cscript slmgr.vbs /ipk EUER-OFFIC-E201X-VLKEY-XXXX
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Error: 0xC004F050 The Software Licensing Service reported that the product key is invalid

Installation von KeyManagementServiceHost_en-us.exe, bzw. officeXXXvolumelicensepack_x86_en-us.exe für 2013, 2016 oder 2019
Nach der Installation des jeweiligen "Office Addons" ist die Integration erfolgreich.

ba) Integration Key Office 2010 -> /ipk

C:\Windows\System32>cscript slmgr.vbs /ipk EUER-OFFIC-E201X-VLKEY-XXXX
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installed product key EUER-OFFIC-E201X-VLKEY-XXXX successfully.

bb) Installations-ID für Office 2010 abfragen -> /dti 
ohne die "bfe7a195-..." würde /dti nur die ID des OS liefern

C:\Windows\System32>cscript slmgr.vbs /dti bfe7a195-4f8f-4f0b-a622-cf13c7d16864
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installation ID: 012345678901234567890123456789012345678901234567890123

Die bfe7a195-4f8f-4f0b-a622-cf13c7d16864 ist fix für Office 2010 vorgegeben.

bc) Aktivierung per Telefon -> /atp
Die Activation ID wird am Telefon genannt

C:\Windows\System32>cscript slmgr.vbs /atp 987654321098765432109876543210987654321098765432109876 bfe7a195-4f8f-4f0b-a622-cf13c7d16864
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Confirmation ID for product bfe7a195-4f8f-4f0b-a622-cf13c7d16864 deposited successfully.

ca) Integration Key Office 2013 -> /ipk

C:\Windows\System32>cscript slmgr.vbs /ipk EUER-OFFIC-E201X-VLKEY-XXXX
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installed product key EUER-OFFIC-E201X-VLKEY-XXXX successfully.

cb) Installations-ID für Office 2013 abfragen -> /dti
ohne die "2E28138A-..." würde /dti nur die des OS liefern)

C:\Windows\System32>cscript slmgr.vbs /dti 2E28138A-847F-42BC-9752-61B03FFF33CD
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installation ID: 012345678901234567890123456789012345678901234567890123

Die 2E28138A-847F-42BC-9752-61B03FFF33CD ist fix für Office 2013 vorgegeben.

bc) Aktivierung per Telefon -> /atp
Activation ID wird am Telefon genannt

C:\Windows\System32>cscript slmgr.vbs /atp 987654321098765432109876543210987654321098765432109876 2E28138A-847F-42BC-9752-61B03FFF33CD
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Confirmation ID for product 2E28138A-847F-42BC-9752-61B03FFF33CD deposited successfully.

da) Integration Key Office 2016 -> /ipk

C:\Windows\System32>cscript slmgr.vbs /ipk EUER-OFFIC-E201X-VLKEY-XXXX
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installed product key EUER-OFFIC-E201X-VLKEY-XXXX successfully.

db) Installations-ID für Office 2016

C:\Windows\System32>cscript slmgr.vbs /dti 98ebfe73-2084-4c97-932c-c0cd1643bea7
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installation ID: 012345678901234567890123456789012345678901234567890123

Die 98ebfe73-2084-4c97-932c-c0cd1643bea7 ist fix für Office 2016 vorgegeben.

dc) Aktivierung per Telefon -> /atp
Activation ID wird am Telefon genannt

C:\Windows\System32>cscript slmgr.vbs /atp 987654321098765432109876543210987654321098765432109876 98ebfe73-2084-4c97-932c-c0cd1643bea7
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Confirmation ID for product 98ebfe73-2084-4c97-932c-c0cd1643bea7 deposited successfully.

ea) Integration Key Office 2019 -> /ipk

C:\Windows\System32>cscript slmgr.vbs /ipk EUER-OFFIC-E201X-VLKEY-XXXX
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installed product key EUER-OFFIC-E201X-VLKEY-XXXX successfully.

eb) Installations-ID für Office 2019

C:\Windows\System32>cscript slmgr.vbs /dti 70512334-47B4-44DB-A233-BE5EA33B914C
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Installation ID: 012345678901234567890123456789012345678901234567890123

Die 70512334-47B4-44DB-A233-BE5EA33B914C ist fix für Office 2019 vorgegeben.

dc) Aktivierung per Telefon -> /atp
Activation ID wird am Telefon genannt

C:\Windows\System32>cscript slmgr.vbs /atp 987654321098765432109876543210987654321098765432109876 70512334-47B4-44DB-A233-BE5EA33B914C
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.
Confirmation ID for product 98ebfe73-2084-4c97-932c-c0cd1643bea7 deposited successfully.

Ihr könnt aus jeder Betriebsystem Version (OEM, Systembuilder, etc.) einen KMS Client machen. Dafür gibt es den sogenannten GVLK - Generic Volume License Key oder auch KMS Client Setup Key. Für Windows 7/2008R2 ist dieser in der product.ini auf jeder DVD dokumentiert. Mit diesem Key kann man zunächst einmal jedes OS installieren und dann über den KMS aktivieren. Wenn ihr keinen KMS habt, kann dieser Key natürlich nicht aktiviert werden. Es ist keine Rettung oder ein Universalschlüssel für "keine Seriennummer" ;-). Für Windows 8/2012 findet ihr dies GVLKs im Technet: Appendix A: KMS Client Setup Keys

Operating system edition -- KMS Client Setup Key
Windows 10 Professional -- W269N-WFGWX-YVC9B-4J6C9-T83GX
Windows 10 Professional N -- MH37W-N47XK-V7XM9-C7227-GCQG9
Windows 10 Enterprise -- NPPR9-FWDCX-D2C8J-H872K-2YT43
Windows 10 Enterprise N -- DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4
Windows 10 Education -- NW6C2-QMPVW-D7KKK-3GKT6-VCFB2
Windows 10 Education N -- 2WH4N-8QGBV-H22JP-CT43Q-MDWWJ
Windows 10 Enterprise 2015 LTSB -- WNMTR-4C88C-JK8YV-HQ7T2-76DF9
Windows 10 Enterprise 2015 LTSB N -- 2F77B-TNFGY-69QQF-B8YKP-D69TJ
Windows 8.1 Professional -- GCRJD-8NW9H-F2CDX-CCM8D-9D6T9
Windows 8.1 Professional 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 Server 2012 R2 Server 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 8 Professional -- NG4HW-VH26C-733KW-K6F98-J8CK4
Windows 8 Professional N -- XCVCF-2NXM9-723PB-MHCB7-2RYQQ
Windows 8 Enterprise -- 32JNW-9KQ84-P47T8-D8GGY-CWCK7
Windows 8 Enterprise N -- JMNMF-RHW7P-DMY6X-RF3DR-X2BQT
Windows Server 2012 Core -- BN3D2-R7TKB-3YPBD-8DRP2-27GG4
Windows Server 2012 Core N -- 8N2M2-HWPGY-7PGT9-HGDD8-GVGGY
Windows Server 2012 Core Single Language -- 2WN2H-YGCQR-KFX6K-CD6TF-84YXQ
Windows Server 2012 Core Country Specific -- 4K36P-JN4VD-GDC6V-KDT89-DYFKP
Windows Server 2012 Server Standard -- XC9B7-NBPP2-83J2H-RHMBY-92BT4
Windows Server 2012 Standard Core -- 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 2012 Datacenter Core -- 48HP8-DN98B-MYWDG-T2DCC-8W83P
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
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