vlmcsd is an open source KMS emulator that can run on a variety of CPU architectures and operating systems. You can find it officially on the My Digital Life forum (registration required) although at least one other person has mirrored it on GitHub. I’ve been running it for the past few months on my Skull Canyon NUC running Ubuntu 18.04; below are instructions to get it running as a service.
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
:
1 2 3 4 |
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 |
Make a user to run vlmcsd
as a service and give the user permissions on the binary:
1 2 |
sudo useradd -s /usr/sbin/nologin -r -M vlmcsd sudo chown vlmcsd:vlmcsd /usr/local/bin/vlmcsd |
Create a systemd
script:
1 |
sudo vi /lib/systemd/system/vlmcsd.service |
Give it the following contents:
1 2 3 4 5 6 7 8 9 10 11 12 |
[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 #YOUR_IP_ADDRESS_HERE -l /var/log/vlmcsd/vlmcsd.log [Install] WantedBy=multi-user.target |
Make a folder under /var/log
for logging and give the vlmcsd user permissions:
1 2 |
sudo mkdir /var/log/vlmcsd sudo chown vlmcsd:vlmcsd /var/log/vlmcsd |
Now you just need to enable and start the service:
1 2 |
sudo systemctl enable vlmcsd sudo systemctl start vlmcsd |
Check the status of the service:
1 |
sudo systemctl status vlmcsd |
If all goes well, you should see output similar to below:
1 2 3 4 5 6 7 8 |
● vlmcsd.service - vlmcsd KMS emulator service Loaded: loaded (/lib/systemd/system/vlmcsd.service; enabled; vendor preset: enabled) Active: active (running) since Sun 2019-06-30 23:46:42 PDT; 22h ago Process: 3235 ExecStart=/usr/local/bin/vlmcsd -L 192.168.1.22 -l /var/log/vlmcsd/vlmcsd.log (code=exited, status=0/SUCCESS) Main PID: 3240 (vlmcsd) Tasks: 1 (limit: 2319) CGroup: /system.slice/vlmcsd.service └─3240 /usr/local/bin/vlmcsd -L 192.168.1.22 -l /var/log/vlmcsd/vlmcsd.log |
To activate a product like Office 2016 against this KMS emulator, you can use the ospp.vbs
script located in your Office installation folder:
1 2 3 4 5 6 7 8 |
# 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:#YOUR_IP_ADDRESS_HERE # Activate Office against the set server cscript ospp.vbs /act |