Activate Windows with KMS Server

If you’ve installed your Windows with a MAK product key and now want to change it to KMS or install a clean OS (never activated), this guide will definitely help you. It also can be useful if you want to activate your Windows copy on the corporate KMS server.

Microsoft offers two ways of Windows and MS Office activation for corporate customers under the Volume License program. They can use MAK or KMS keys for product activation.

  • MAK (Multiple Activation Keys)—MAK license is like a Retail (box) license, but allows to activate several instances of Windows using a single MAK key. The number of activations is limited and depends on the type of your license agreement (Open, Select, or Enterprise Agreement). You must activate Windows copy with the MAK key installed via the Internet or by phone;
  • KMS (Key Management Service)—this is an activation type for enterprise customers. The KMS activation server allows activating corporate versions of Windows OS and Microsoft Office products within the enterprise network. The KMS infrastructure is very simple: install Volume Activation Services role on Windows Server, add your KMS Host Key (from Microsoft Volume Licensing Service Center), and activate your corporate KMS server on Microsoft (perform this only once). After that, your enterprise KMS clients can send activation requests to the KMS server and activate with it.

The main advantages of KMS activation:

  • KMS clients do not need to access the Internet or the phone to activate the product (only network access to the KMS server is required);
  • The KMS client is being activated on the internal KMS server for 180 days and attempts to renew the activation every 7 days;
  • In case the KMS server is damaged or lost, there is nothing to restore from backup on the KMS server. Install a new server, install KMS role, enter the KMS host key, activate—and everything is ready to go!
  • Instead of a KMS activation, in the AD domain you can use the Active Directory optimized version—ADBA (Active Directory Based Activation);
  • KMS infrastructure is simple and extensible, one KMS server can serve thousands of clients.

Deploying KMS Activation Host on Windows Server 2019

KMS host is a special Windows Server role that can automate the activation of volume license Microsoft products (Windows and Office) and track their activation status.

You can install a KMS server on any version of Windows Server. In this example, we will show how to install a KMS activation server on Windows Server 2019.

You can install the KMS role using the Server Manager GUI (Server Manager > Add Roles and Features > Roles > Volume Activation Services).

windows kms activation

Or, you can install and configure the KMS server role using PowerShell:

  1. Run the PowerShell console as administrator and execute the following command:
    Install-WindowsFeature -Name VolumeActivation  -IncludeAllSubFeature –IncludeManagementTools
  2. If your Windows Defender Firewall with Advanced Security service is enabled, you need to open incoming connections on TCP port 1688 in order for the KMS client to contact the KMS server. This can be done by the following PowerShell command:
    Enable-NetFirewallRule -Name SPPSVC-In-TCP
  3. Go to the Microsoft Volume Licensing Service Center website > Downloads and Keys > Windows Server > Windows Server 2019 > Key, and copy your KMS Host Key (Windows Srv 2019 DataCtr/Std KMS).activate windows kms
  4. Now you can install your KMS host key on your server. Run the command:
    slmgr /ipk <your_Windows_SRV_2019_KMS_host_key>
  5. In order to activate your KMS server on Microsoft servers online, run the command:
    slmgr /ato

    (you need to temporarily provide direct Internet for your server);

  6. To check the KMS server activation status, run:
    slmgr /dlv
  7. If necessary, you can optionally install the Volume License Pack for your Office version in order to activate Office copies in the enterprise network;
  8. Now you can configure KMS clients to activate on your KMS server.

Please note that the KMS host key Windows Srv 2019 allows you to activate all previous versions of Windows, starting from Windows 7/Windows Server 2008 R2. However, if your KMS server is activated with an older host key, you won’t be able to activate new versions of Windows.

For example, if you activated your KMS server with the Windows Srv 2012R2 key, you cannot activate Windows 10 or Windows Server 2016. The maximum supported versions of Windows to activate in this case are Windows 8.1 and Windows Server 2012 R2.

If you use previous versions of Windows as the KMS server, you need to install special updates before installing a new KMS host key:

  • Windows Server 2012 R2 — servicing stack update KB3173424, and any latest cumulative update;
  • Windows Server 2016 — servicing stack update KB4132216, and any latest cumulative update.

How to Activate Windows with KMS Server?

Changing the activation key to the public KMS Client Setup Key

Before activating your Microsoft product (Windows or Office) on the KMS server, you must change the product activation key to the public KMS Client Setup Key. You can change the product key to KMS from the Windows GUI (use the command slui.exe 4), or you can use the slmgr command-line tool. Slmgr.vbs is a small VBS script located in the %System\Root\system32 folder and used to manage the Windows licensing on a local or remote computer;
To activate a KMS client, it must have a special KMS public key installed. This product key is called the GVLK key (Generic Volume License Key). For each Windows edition, this key is unique. To replace an existing product key, run the command prompt as an administrator on the computer you want to activate and type:

slmgr.vbs /ipk XXXXX-XXXXX-XXXXX-XXXXX-XXXXX

XXXXX is the GVLK key for your Windows edition (read the last section of this article to learn how to find the GVLK for your version of Windows).

In our case, we want to activate Windows 10 Enterprise LTSC 2019 on a KMS server. The KMS Client setup key installation command will look like this:

slmgr.vbs /ipk ****-****-****-****-****

Wait until the confirmation message “Product key XXXXX installed successfully” appears.

slmgr /skms

Checking VLMCS Record in DNS and setting KMS server address

After you specify the GVLK key, the KMS client tries to connect to the previously configured KMS server or find a special SRV (_VLMCS) record in the DNS. This DNS record is created when you install a new KMS server in the domain and pointing to your KMS server. After the KMS server is discovered using the DNS server, the client performs the OS activation.

You can skip this step if your DNS has a valid SRV record that allows clients to find the KMS server.

Tip. You can check this DNS entry using the nslookup command:

nslookup -q=SRV _VLMCS._TCP.theitbros.com

kms windows activation

If the client does not find the KMS server automatically, you can specify the address of the KMS server manually using the slmgr with the option /skms. You can also specify the TCP port on which the activation service listens (by default 1688):

slmgr.vbs /skms <KMS_server_name_or_IP>:1688

Key Management Service machine name set to hostname successfully.

You can test network connectivity between your computer and the KMS server using the PowerShell command:

Test-NetConnection -ComputerName KMS_server_name_or_IP -Port 1688

windows 10 kms activation

To activate your Windows client with the KMS server, run the command:

Slmgr.vbs /ato

And wait until the message Product activated successfully appear;

windows activation kms

Check the Status of Windows Activation

Optionally, you can display information about the Windows activation status:

slmgr.vbs /dli

windows kms

As you can see, the utility returned the following useful info:

  • Name — the OS version;
  • Description — distribution channel VOLUME_KMSCLIENT channel;
  • License status — licensed;
  • Volume activation expirations — 180 days;
  • KMS server IP address and DNS name (Registered KMS machine name).

You can use the slmgr.vbs tool to perform Windows KMS activation on the remote computer. The following command will check the activation status on the remote computer named nywsdx3323. The connection credentials are specified in plain text:

slmgr.vbs nywsdx3323 administrator P@ssw0rdd -dli

Most Common KMS Activation Errors

Most often users facing the following errors when activating Windows with KMS server:

  • 0xC004F074 (The software licensing service reported that the computer could not be activated. No Key Management Service (KMS) could be contacted) — the key management server is unavailable. It means that the KMS service on the server is not running or access to it from the client is blocked (check TCP port 1688 availability on a KMS server);
  • 0xC004F038 (The Software Protection Service reported that the computer could not be activated. The count reported by your Key Management Service (KMS) is insufficient. Please contact your system administrator) — you did not have the necessary number of activation requests on the KMS server (for desktop Windows edition the minimum number of KMS clients – 25, for Windows Server – 5). You can check the current count of hosts connected to the KMS server with the command Slmgr.vbs /dli. Target more Windows hosts to your KMS server;
  • 0xC004F015 (The Software Protection Service reported that the product key is not available) — you can see this error when you try to activate Windows 10/Server 2016/2019 on an old KMS server that is activated with the old KMS host key. In this case, you need to get a new KMS host key from VLSC and reactivate your KMS server.
  • 0x80072F8F (We can’t activate Windows on this device at the moment. You can try activating later) — check if the time and date on your device are correct. If necessary, synchronize the time with NTP server;
  • Unable to reach Windows activation servers.
  • 0xC004F035 and 0xC004F059 (The software licensing service reported that the computer could not be activated with a Volume license key. Volume licensed systems require upgrading from a qualified operating system. Please contact your system administrator or use a different type of key) — these errors can occur on computers with OEM versions of Windows. The BIOS of these computers uses the ACPI_SLIC table. The KMS server can’t find a special token in such a table and cannot activate Windows. In such cases, it is recommended to update (flash) the BIOS firmware.

How to Find Out the GLVL Key for Your Windows Edition?

GVLKs or KMS Client Setup Key is a list of public keys that must be used to activate volume editions of Windows and Windows Server. A complete list of GVLK keys is available on the Microsoft website at the following link.

Let’s see how to find the KMS Client Setup key for your version of Windows? First, you need to check the version and edition of Windows on your computer. To do this, you can run the command:

Winver

kms windows

Or use the following PowerShell command:

systeminfo /fo csv | ConvertFrom-Csv | select OS* | Format-List

kms server windows 10

Tip. Let us remind you that Windows Home and Single Language cannot be activated on the KMS server. KMS activation is available only for Volume License editions.

In our example, we have Windows 10 Pro build 20H2 installed. According to the Windows lifecycle fact sheet, Win 10 20H2 build belongs to Semi-Annual Channel versions. Therefore, we need to look for the GVLK key in the Windows 10, all supported Semi-Annual Channel versions section.

KMS Client Setup Key for our Windows 10 Pro edition is W269N-XXXXX-XXXXX-XXXXX-T83GX.

kms server activation

Copy the found GVLK key and use it in the slmgr command to switch your Windows to KMS activation mode:

slmgr.vbs /ipk W269N-XXXXX-XXXXX-XXXXX-T83GX
Brian Jackson started this blog in 2011. Brian has a huge passion for WordPress and technology for over a decade. Brian enjoys blogging, movies, and hiking.

20 comments

  1. Actually, if the installation media is not Retail but Volume, it is not required to execute slmgr.vbs /ipk KEY part. If the newly installed server can find KMS host via DDNS, executing slmgr.vbs /ato activates the server. If a server cannot find KMS host, you can specify it using slmgr.vbs /skms KMS-Server:Port, default Port=1688.
    So, in my case with standalone server this was enough:
    slmgr.vbs /skms KMS-Server:Port
    slmgr.vbs /ato

  2. So when it comes to activating desktops with Windows 7 and 8, do you use the KMS keys on the MS license portal for the product you are activating, or the generic KMS MS provide for KMS activation?

    I Find it very odd that if the KMS server communicates with the MS license server, why the need for KMS key’s for the product, and then a set of generic MS supply’s to perform the same task?

    1. If you are activating Windows 7 or Windows 8 desktops the proper way to do this is to activate via your own KMS Server. If setup properly you shouldn’t have to manually activate your desktops. However, I have seen servers need to be manually activated via KMS more often than not.

      But yes I agree with your last statement, seems kind of strange the way they activate with KMS. Totally different than the MAK or VLK keys.

  3. Excellent! I just had an issue when virtiualising a server that was licenced via our KMS but come out ‘the otherside’ as not genuine (!). Your web page just got me out of the hole. Thanks

  4. i wanna download w8 for free, would this method help me obtain it for free without worrying my pc will crash or any files be corrupted?

  5. I am using Windows 7 Professional and mini-KMS Activator. I rearmed Windows 8 days ago. Yesterday I ran “Key Manager Windows VL” to generate the windows key “FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4”. I then ran “Activate Windows CL” but all the KMS servers were reported as “down”. I tried this again just now with the same result – any suggestions?

  6. You mean should I install GLVK on all clients? and only then they can contact my KMS server and gets activated? or I should install the GLVK on my KMS server? Please help!

  7. Thanks Brian!! for the article

    When i perform this tasks it stuck at 10% tried multiple times restarting server but issue remain same. Please help

  8. Hi and thank you for this post !
    Just a question, I have a 2019 KMS with a datacenter license activated and used by datacenter client, can I also activate Standard Edition with the same license key ?
    If not, anyway to enable my standard without bying standard licenses in adation to my datacenter ?
    Thanks

  9. Hello,

    What are the server minimum hardware requirements or recommendations to build a KMS server on Win Server 2019? One 2019 server is fine or a redundancy is recommended for 10,000 nodes?

    Thanks

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.