Running KMS on Ubuntu Server
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.