I recently installed two Key Management Servers on Windows 2003. Here’s a compilation of my research with step by step instructions

General Information

KMS Host = internal server that activates client machines (vista and server 2008)
KMS Client = Vista and Server 2008 machines that need to be licensed/activated

The KMS key is used to activate only the KMS host. The KMS host in turn activates the Windows editions that are licensed, as KMS clients. Clients should not use the KMS key individually.

What is a Key Management Service (KMS) key?
A KMS key is used to establish a local activation enablement service that is hosted locally in your environment. Your client and server computers activate by connecting to the KMS host machine. Machines activated through KMS are required to reactivate at least once every 6 months by connecting to the KMS host.

A KMS key can activate six KMS hosts with 10 activations per host. Each host can activate an unlimited number of machines running Windows Server 2008, Windows Vista Business and/or Windows Vista Enterprise editions. KMS requires a minimum number of physical computers in a network environment, called the activation threshold, to activate KMS client machines. The activation threshold for Windows Vista remains at twenty-five (25) physical computers. However the activation threshold for Windows Server 2008 is five (5) physical computers.

KMS Activation Renewal
KMS activations are valid for 180 days. This is called the activation validity interval. KMS clients must renew their activation by connecting to the KMS host at least once every 180 days to stay activated. By default, KMS client computers attempt to renew their activation every 7 days. After a client’s activation is renewed, the activation validity interval begins again.

KMS keys are hierarchical. For example, if you have licenses for Windows Server 2008 Datacenter and Standard editions, you should use the KMS key associated with Datacenter product to activate machines installed with Windows Server 2008 Datacenter as well as Windows Server 2008 Standard.

The KMS key is used to activate only the KMS host. The KMS host in turn activates the indicated Windows editions as KMS clients. For environments with multiple KMS hosts, you should use the same KMS key on each KMS host.

A KMS host with a Datacenter key will activate the following clients

Windows Server 2008 Datacenter
Windows Server 2008 for Itanium-Based Systems
Windows Server 2008 Standard
Windows Server 2008 Enterprise
Windows Web Server 2008
Windows Vista Business
Windows Vista Enterprise

 

Install KMS on Windows Server 2003

1. Run kmsw2k3.exe to install KMS 1.0

2. Run WindowsServer2003-KB948003-x86-ENU.exe to update to KMS 1.1

3. Reboot server

4. From command prompt:
    (Note: scripts below are CPU intensive, though they don’t take long to run)

Activate key through the Internet by running the following command

cscript C:\windows\system32\slmgr.vbs -ato

If no error was reported, the KMS host is now ready to be used by KMS clients for activation. Additional configuration is optional and will usually not be required. You can confirm your KMS license state and settings by running this command:

cscript C:\windows\system32\slmgr.vbs -dlv

 

To see the current license count on a KMS host:

slmgr.vbs -dli

To run against a remote machine:

 slmgr.vbs remoteclientname -dli

To convert a client that has been activated with a MAK key or is not setup properly:

  1. slmgr -upk (uninstall current key on client)
  2. slmgr -ipk yourkeyfromvolumedisk
  3. slmgr -ato

There is a generic key on a volume license disk at .\sources\pid.txt, it tells the client when installed, to look for a KMS server. By default, when you use the volume media for install, you should not have to enter a key or activate a client, it should automatically use DNS to find a KMS host to activate against.

To set the KMS server manually on a client

slmgr -skms yourKMSserver

 

References

Download KMS for Windows Server 2003

MS Volume Activation 2.0 Technical Guidance documentation

KB 942961 - license count insufficient 

KB 948472- Extend the license period