Running KMS on Ubuntu Server

Running KMS on Ubuntu Server

2020, May 27    

Are you running a home lab to test software and bumping into the 180 grace period? VLMCSD might be something interesting for you.

The ‘vlmcsd’ is an open-source KMS emulator that can run on a variety of CPU architectures and operating systems. I decided to run it in a Ubuntu Serer VM in my tiny VMware-based home-lab.

You can find it officially on My Digital Life-forum, registration required, although at least one other person has mirrored it on GitHub.

Running the KMS daemon on Ubuntu Server can be handy for home lab testing purposes.

The easiest way to download is through Github. I also renamed the binary to just vlmcsd to make it simpler and copied it to usr/local/bin:

Download and execute the binary file

wget https://github.com/kkkgo/vlmcsd/raw/master/binaries/Linux/intel/static/vlmcsd-x64-musl-static

mv vlmcsd-x64-musl-static vlmcsd

sudo cp vlmcsd /usr/local/bin

sudo chmod +x /usr/local/bin/vlmcsd

Create a service account

Enable a service account to run vlmcsd as a service and give the user permissions on the binary:

sudo useradd -s /usr/sbin/nologin -r -M vlmcsd
sudo chown vlmcsd:vlmcsd /usr/local/bin/vlmcsd

Create a start-up script:

sudo vi /lib/systemd/system/vlmcsd.service

Give it the following contents:

[Unit]
Description=vlmcsd KMS emulator service
After=network-online.target
Wants=network-online.target
[Service]
Type=forking
User=vlmcsd
ExecStart=/usr/local/bin/vlmcsd -l /var/log/vlmcsd/vlmcsd.log 
[Install]
WantedBy=multi-user.target

Prepare the logging directory

Make a folder under /var/log for logging and give the vlmcsd user permissions:

sudo mkdir /var/log/vlmcsd
sudo chown vlmcsd:vlmcsd /var/log/vlmcsd

Now you just need to enable and start the service:

sudo systemctl enable vlmcsd
sudo systemctl start vlmcsd

Check the status of the service:

sudo systemctl status vlmcsd

Check the log file for incoming requests:

tail -f /var/log/vlmcsd/vlmcsd.log

If all goes well, you should see output similar to below:

vlmcsd.service - vlmcsd KMS emulator service

   Loaded: loaded (/lib/systemd/system/vlmcsd.service; enabled; vendor preset: e
   
   Active: active (running) since Wed 2020-05-27 06:39:31 UTC; 12s ago
   
  Process: 9907 ExecStart=/usr/local/bin/vlmcsd -l /var/log/vlmcs
  
 Main PID: 9909 (vlmcsd)
 
    Tasks: 1 (limit: 504)
	
   CGroup: /system.slice/vlmcsd.service
   
           └─9909 /usr/local/bin/vlmcsd -l /var/log/vlmcsd/vlmcsd

May 27 06:39:31 kms systemd[1]: Starting vlmcsd KMS emulator service...

May 27 06:39:31 kms systemd[1]: Started vlmcsd KMS emulator service.

Activating your Windows edition

For activation you need to have the Microsoft KMS client setup key at hand. This must correspond with the version of Windows you are installing. Insert the setup key as the #####-#####-#####-#####-#####argument.

Also replace #KMS-SERVER# for the DNS name or IP address of your installed ‘vlmcsd’-instance.

slmgr.vbs -ipk #####-#####-#####-#####-#####

slmgr.vbs -skms #KMS-SERVER#

slmgr.vbs -ato

Activating your Office edition

To activate a product like Office 2016 against this KMS emulator, you can use the ospp.vbs script located in your Office installation folder:

Change to Office installation directory

cd "C:\Program Files (x86)\Microsoft Office\Office16"

Set the KMS server to be used for activation

cscript ospp.vbs /sethst:#KMS-SERVER#

Activate Office against the set server

cscript ospp.vbs /act

Official Microsoft Windows KMS client setup keys

Windows Server 2022

Operating System edition KMS client setup key
Windows Server 2022 Datacenter WX4NM-KYWYW-QJJR4-XV3QB-6VM33
Windows Server 2022 Standard VDYBN-27WPP-V4HQT-9VMD4-VMK7H

Windows Server 2019

Operating System edition KMS client setup key
Windows Server 2019 Datacenter WMDGN-G9PQG-XVVXX-R3X43-63DFG
Windows Server 2019 Standard N69G4-B89J2-4G8F4-WWYCC-J464C
Windows Server 2019 Essentials WVDHN-86M7X-466P6-VHXV7-YY726

Windows Server 2016

Operating System edition KMS client setup key
Windows Server 2016 Datacenter CB7KF-BWN84-R7R2Y-793K2-8XDDG
Windows Server 2016 Standard WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY
Windows Server 2016 Essentials JCKRF-N37P4-C2D82-9YXRT-4M63B

Windows 10, all supported Semi-Annual Channel versions

See the Windows lifecycle fact sheet for information about supported versions and end of service dates.

Operating System edition KMS client setup key
Windows 10 Pro W269N-WFGWX-YVC9B-4J6C9-T83GX
Windows 10 Pro N MH37W-N47XK-V7XM9-C7227-GCQG9
Windows 10 Pro for Workstations NRG8B-VKK3Q-CXVCJ-9G2XF-6Q84J
Windows 10 Pro for Workstations N 9FNHH-K3HBT-3W4TD-6383H-6XYWF
Windows 10 Pro Education 6TP4R-GNPTD-KYYHQ-7B7DP-J447Y
Windows 10 Pro Education N YVWGF-BXNMC-HTQYQ-CPQ99-66QFC
Windows 10 Education NW6C2-QMPVW-D7KKK-3GKT6-VCFB2
Windows 10 Education N 2WH4N-8QGBV-H22JP-CT43Q-MDWWJ
Windows 10 Enterprise NPPR9-FWDCX-D2C8J-H872K-2YT43
Windows 10 Enterprise N DPH2V-TTNVB-4X9Q3-TJR4H-KHJW4
Windows 10 Enterprise G YYVX9-NTFWV-6MDM3-9PT4T-4M68B
Windows 10 Enterprise G N 44RPN-FTY23-9VTTB-MP9BX-T84FV

Windows 10 LTSC 2019

Operating System edition KMS client setup key
Windows 10 Enterprise LTSC 2019 M7XTQ-FN8P6-TTKYV-9D4CC-J462D
Windows 10 Enterprise N LTSC 2019 92NFX-8DJQP-P6BBQ-THF9C-7CG2H

Windows 10 LTSB 2016

Operating System edition KMS client setup key
Windows 10 Enterprise LTSB 2016 DCPHK-NFMTC-H88MJ-PFHPY-QJ4BJ
Windows 10 Enterprise N LTSB 2016 QFFDN-GRT3P-VKWWX-X7T3R-8B639

Windows 10 LTSB 2015

Operating System edition KMS client setup key
Windows 10 Enterprise 2015 LTSB WNMTR-4C88C-JK8YV-HQ7T2-76DF9
Windows 10 Enterprise 2015 LTSB N 2F77B-TNFGY-69QQF-B8YKP-D69TJ

Windows Server, version 1803

Operating System edition KMS client setup key
Windows Server Datacenter 2HXDN-KRXHB-GPYC7-YCKFJ-7FVDG
Windows Server Standard PTXN8-JFHJM-4WC78-MPCBR-9W4KR

Windows Server, version 1709

Operating System edition KMS client setup key
Windows Server Datacenter 6Y6KB-N82V8-D8CQV-23MJW-BWTG6
Windows Server Standard DPCNP-XQFKJ-BJF7R-FRC8D-GF6G4

Windows Server 2012 R2

Operating System edition KMS client setup key
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 Server 2012

Operating System edition KMS client setup key
Windows Server 2012 BN3D2-R7TKB-3YPBD-8DRP2-27GG4
Windows Server 2012 N 8N2M2-HWPGY-7PGT9-HGDD8-GVGGY
Windows Server 2012 Single Language 2WN2H-YGCQR-KFX6K-CD6TF-84YXQ
Windows Server 2012 Country Specific 4K36P-JN4VD-GDC6V-KDT89-DYFKP
Windows Server 2012 Server Standard 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 2008 R2

Operating System edition KMS client setup key
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

Windows Server 2008

Operating System edition KMS client setup key
Windows Web Server 2008 WYR28-R7TFJ-3X2YQ-YCY4H-M249D
Windows Server 2008 Standard TM24T-X9RMF-VWXK6-X8JC9-BFGM2
Windows Server 2008 Standard without Hyper-V W7VD6-7JFBR-RX26B-YKQ3Y-6FFFJ
Windows Server 2008 Enterprise YQGMW-MPWTJ-34KDK-48M3W-X4Q6V
Windows Server 2008 Enterprise without Hyper-V 39BXF-X8Q23-P2WWT-38T2F-G3FPG
Windows Server 2008 HPC RCTX3-KWVHP-BR6TB-RB6DM-6X7HP
Windows Server 2008 Datacenter 7M67G-PC374-GR742-YH8V4-TCBY3
Windows Server 2008 Datacenter without Hyper-V 22XQ2-VRXRG-P8D42-K34TD-G3QQC
Windows Server 2008 for Itanium-Based Systems 4DWFP-JF3DJ-B7DTH-78FJB-PDRHK

Windows 8.1

Operating System edition KMS client setup key
Windows 8.1 Pro GCRJD-8NW9H-F2CDX-CCM8D-9D6T9
Windows 8.1 Pro 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 8

Operating System edition KMS client setup key
Windows 8 Pro NG4HW-VH26C-733KW-K6F98-J8CK4
Windows 8 Pro N XCVCF-2NXM9-723PB-MHCB7-2RYQQ
Windows 8 Enterprise 32JNW-9KQ84-P47T8-D8GGY-CWCK7
Windows 8 Enterprise N JMNMF-RHW7P-DMY6X-RF3DR-X2BQT

Windows 7

Operating System edition KMS client setup key
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

Please remember, this blog post is meant for educational purposes only.