Entendiendo como funciona la activación de licencias KMS y MAK para Windows

Mi nombre es Alejandro, soy ingeniero de soporte para Windows Core en Microsoft, y en esta que es mi primera oportunidad, quiero contarles acerca de cómo funciona básicamente la activación de licencias de volúmenes del tipo KMS y MAK en Windows.

Activación por servicio de KMS

    KMS activa computadores en una red local, sin la necesidad de que éstas computadoras necesiten conectarse a Microsoft. Para realizar esto, KMS utiliza una topología de cliente-servidor. Los clientes KMS pueden localizar a un servidor host de KMS utilizando el servicio DNS para resolución de nombres, o a través de una configuración estática. El contacte de los clientes KMS hacia los hosts KMS se realiza a través de RPC (Remote procedure call). El servicio de KMS puede hallarse presente en máquinas que posean Windows Vista, Windows 7, Windows Server 2003, Windows Server 2008, o Windows Server 2008 R2.

Requerimientos mínimos para que la activación de clientes KMS pueda lograrse:

    Cuando se planea realizar una infraestructura en la cual la activación por servicio de KMS deba tener lugar, es imprescindible que la red alcance o superé el valor mínimo de requerimientos de activación de licencia KMS.

Valores mínimos para la activación de KMS: KMS puede activar tanto máquinas virtuales como físicas. Para ser elegido para la activación, la red debe cumplir los valores mínimos de requerimientos de activación KMS, por ende, un servidor HOST de KMS, solo podrá activar una licencia KMS cuando este requerimiento sea cumplido. Para asegurarse de que este requerimiento mínimo de activaciones sea cumplido, el servidor de HOST KMS lleva una cuenta interna de la cantidad de máquinas clientes que realizan esta solicitud de activación. Para todas aquellas máquinas que poseen Windows 2008 o Windows 2008 R2, el valor mínimo de requerimientos es de "5". Para aquellas máquinas que poseen Windows Vista o Windows 7, el mínimo de requerimientos es de "25". Estos valores incluyen máquinas clientes o servidores de red tanto físicos como virtuales. De esta manera, un servidor HOST KMS, responde a las peticiones del cliente con el número de peticiones que le han llegado. Es por eso que si a una máquina cliente le llega un número inferior al requerimiento mínimo de activación para su tipo (cliente o server), no será activada. Por ejemplo, si una máquina cliente con Windows 7 recibe un valor menor a "25", la misma no será activada hasta que las peticiones de activación para el HOST KMS sea ≥ 25. Estas máquinas que no son activadas por haber recibido un valor menor a "25", se encuentran en un período de "gracia", en el cuál se conectarán al servidor HOST KMS cada 2 horas para reintentar la activación hasta que se cumpla el valor mínimo de peticiones de activación en el servidor HOST KMS. De la misma manera si una máquina con Windows Server 2008 recibe un número de petición menor a "5", la misma no será activada hasta tanto no reciba un valor de petición ≥ 5.

Caché de la cantidad de solicitud activaciónes: Para llevar un registro de la cantidad de peticiones de activación KMS, el servidor HOST KMS lleva un registro de la cantidad de computadores que realizan la solicitud. El servidor HOST KMS, asigna a cada computadora una "identificación de máquina cliente (CMID), la cual es guardada en una tabla interna. Cada solicitud de activación es guardada dentro de esa tabla interna por un período de 30 días. Cuando una máquina renueva su activación KMS, se quita de esa tabla su CMID, y se crea un nuevo registro comenzando así un nuevo período de 30 días. En el caso que una máquina cliente KMS no renueve su activación dentro de los 30 días, el servidor HOST KMS quita su registro CMID de la tabla, y el número de solicitud de activaciones decrece en "1".

De todas maneras, el servidor HOST KMS guarda "el doble" de cantidad de registros CMID en su tabla, para evitar que de ésta manera el número de cantidad de peticiones de activación caiga por debajo de los requerimientos mínimos (5 y 25). Es por ello que el servidor HOST KMS guardará entonces las últimas "50" CMID para máquinas con Windows 7 Vista, y las últimas "10" para máquinas con Windows Server 2008 o Windows Server 2008 R2, por ejemplo.

Cómo funciona KMS:

La activación de KMS requiere de conectividad TCP/IP. Por defecto, los servidores HOST KMS y máquinas clientes, utilizan el servicio de DNS para publicar y encontrar dentro de la red al servicio KMS

Renovación de la activación KMS:

Las reactivaciones de KMS son válidas por un período de 180 días. Para mantenerse activadas, los clientes KMS deben renovar su activación conectándose al servidor HOST KMS por lo menos una vez cada 180 días. Por defecto, las máquinas clientes de KMS, intentarán reactivarse cada 7 días. Si la activación de KMS falla, el cliente reintentará cada 2 horas. Cuando finalmente la reactivación se produce, el período de validez de la activación comienza de nuevo.

Publicación del servicio de KMS:

El servicio de KMS utiliza registros RR en DNS para almacenar y comunicar la localización de los servidores HOSTS KMS. Los HOSTS KMS utilizan protocolos de actualización dinámicos en DNS, si están disponibles, para publicar los registros RRs de los HOSTS KMS. Si ocurriese que estos protocolos de actualización dinámicos no se encuentran disponibles, o los servidores HOST KMS no tuvieran los permisos necesarios para publicar los registros RRs, entonces los registros de DNS deberán ser publicados manualmente, ó, las máquinas clientes tendrán que ser configuradas para que contacten a un servidor HOST KMS específico.

Como realiza el cliente el "Discovery" del servicio KMS:

Por defecto, los clientes KMS realizan un query a DNS para obtener la información del servicio de KMS. La primera vez que un cliente KMS realiza el query a DNS, selecciona un nombre de servidor HOST KMS aleatoriamente, de la lista completa que el registro SRV RR le devuelve en DNS.

Si el servidor HOST KMS que la máquina cliente selecciona no respondiera, el cliente KMS remueve el nombre del servidor de su lista de SRV RRs, y selecciona otro servidor aleatoriamente de la lista. Cuando el servidor HOST KMS responde, el cliente KMS guarda en "cache" el nombre de este servidor, y lo utilizará para las futuras reactivaciones. Si el servidor HOST KMS guardado en el cache no llegara a responder en las futuras reactivaciones, entonces el cliente obtendrá un nuevo nombre del servidor a través de un nuevo query a DNS en busca de KMS SRV RRs.

Por defecto la comunicación entre clientes KMS y servidores HOST KMS, se realiza a través del puerto 1688. Una vez establecida la sesión TCP con el servidor HOST KMS, el cliente envía un solo paquete de petición. Luego el servidor HOST KMS devuelve con el valor del contador de activaciones. Si este valor cumple o excede el requerimiento mínimo de activaciones, entonces el cliente KMS es activado y se cerrará la sesión. El cliente KMS utiliza el mismo proceso para los requerimientos de reactivación. La comunicación es de 250 bytes en ambos sentidos.

Planificación de la infraestructura de KMS:

El servicio KMS no requiere de un servidor dedicado. El servicio KMS puede ser implementado conjuntamente con otros servicios, como Servicios de Active Directory (AD DS), o controladores de dominio de sólo lectura (RODC). Los HOST KMS también pueden ejecutarse en equipos físicos o máquinas virtuales que ejecutan cualquier sistema operativo compatible con Windows, incluyendo Windows Server 2003. A pesar de que un host KMS que ejecuta Windows Server 2008 R2 puede activar cualquier sistema operativo de Windows que soporta la activación por volumen, un host KMS que ejecuta Windows 7 puede activar sólo los equipos que ejecutan Windows 7 y Windows Vista. Detallaremos más adelante como trabaja la "jerarquía de KMS para la activación, dependiendo el sistema operativo que pretenda activarse. Un único host KMS puede admitir un número ilimitado de clientes KMS; Sin embargo, Microsoft recomienda distribuir un mínimo de dos hosts KMS para poder tener "alta disponibilidad" KMS.

Planificando la configuración de DNS para KMS:

La característica de la auto publicación por defecto KMS requiere registros SRV, y soporte de protocolo de actualización dinámica de DNS. El host de KMS se debe configurar para que tenga las credenciales necesarias para crear y actualizar SRV, (Protocolo de Internet versión 4 o IPv4), y AAAA (Protocolo de Internet versión 6 o IPv6) RR en los servidores DNS, de lo contrario necesariamente los registros se crearán manualmente. La solución recomendada para dar al host KMS las credenciales necesarias, es crear un grupo de seguridad en AD DS, y luego añadir todos los hosts KMS a dicho grupo. En un servidor DNS que está ejecutando software de Microsoft, Nos debemos asegurar de que este grupo de seguridad, se le asigne control total sobre el registro _VLMCS._TCP, en cada dominio DNS que contiene los RR de SRV de KMS.

Para saber si efectivamente el servicio de KMS se encuentra presente en AD a través de DNS, ejecutaremos el siguiente comando:

nslookup -q=srv  _vlmcs._tcp

El resultado será algo similar a lo siguiente:

_vlmcs._tcp.contoso.com SRV service location:
priority       = 0
weight       = 0
port            = 1688
svr hostname   = kms-server.contoso.com

Activación del primer servidor HOST KMS:

Los hosts KMS en la red, requerirán que se instale una clave KMS en los mismos, que luego deberán activar con Microsoft. La instalación de una clave KMS, habilita el servicio de administración de claves en el HOST KMS. Después de instalar la clave KMS en el HOST KMS, se deberá completar la activación del mismo por teléfono o en línea. Una vez procesada esta primera activación, un HOST KMS no comunica ninguna información adicional a Microsoft.

Las claves KMS sólo se instalan en HOST KMS, nunca en clientes KMS individuales. Windows 7 y Windows Server 2008 R2 tienen medidas de seguridad para evitar que inadvertidamente se proceda a instalar claves KMS en los equipos cliente KMS. En el caso que esto sucediera, el siguiente mensaje es mostrado en pantalla:

Activando servidores HOST KMS adicionales:

Cada clave KMS puede instalarse en hasta seis HOSTS KMS, los cuáles pueden ser computadoras físicas, o máquinas virtuales. Después de activar un HOST KMS, el mismo HOST KMS puede ser reactivado hasta a nueve veces más con la misma clave.

Si la organización necesita más de seis HOSTS KMS, se deberán solicitar activaciones adicionales para la clave KMS de la organización llamando al Call Center de activación para solicitar una excepción. Para obtener más información, consulte el sitio Web de licencias de volumen en https://go.microsoft.com/fwlink/?LinkID=73076

Actualizando un HOST KMS existente:

Los HOSTS KMS montados sobre servidores que ejecutan Windows Server 2003, Windows Vista o Windows Server 2008, pueden configurarse para admitir a clientes KMS que ejecutan Windows 7, o Windows Server 2008 R2. Para Windows Vista y Windows Server 2008, es necesario actualizar el HOST KMS con un paquete de archivos que admite al cliente KMS de una versión más nueva. Este paquete está disponible a través de Microsoft Download Center en https://www.microsoft.com/downloads. Una vez que el paquete está instalado en el HOST KMS, una clave KMS que está diseñada para soportar Windows 7 y Windows Server 2008 R2 puede ser instalada y activada como se describe anteriormente en esta guía. La clave KMS que soporta las nuevas versiones de los sistemas operativos Windows, también proporciona soporte para las ediciones previas, de licencias por volumen de Windows que actúan como clientes KMS.

En el caso de actualización de un HOST KMS de Windows Server 2003, todos los archivos necesarios están contenidos en el paquete descargable de KMS 1.2, que está disponible a través de Microsoft Download Center en https://www.microsoft.com/downloads.

Aquí mostraremos la matriz de activación para KMS (Grupos de jerarquía)

Si el HOST KMS es:

Entonces activará:

Windows Server 2003 Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Office 2010
Windows Vista Windows Vista, Windows 7 Pro, Windows 7 Ent
Windows 7 Professional Windows Vista, Windows 7 Pro, Windows 7 EntOffice 2010
Windows 7 Enterprise Windows Vista, Windows 7 Pro, Windows 7 EntOffice 2010
Windows Web Server 2008 Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Office 2010
Windows Web Server 2008 R2 Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008 ,Windows HPC Server 2008 R2Office 2010
Windows HPC Server 2008 Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Office 2010
Windows HPC Server 2008 R2 Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Office 2010
Windows Server 2008 Standard Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard, Windows Server 2008 R2 StandardWindows Server 2008 Enterprise,Windows Server 2008 R2 EnterpriseOffice 2010
Windows Server 2008 R2 Standard Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008,Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard,Windows Server 2008 R2 StandardWindows Server 2008 Enterprise, Windows Server 2008 R2 EnterpriseOffice 2010
Windows Server 2008 Enterprise Windows Vista, Windows 7 Pro,Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard, Windows Server 2008 R2 StandardWindows Server 2008 Enterprise, Windows Server 2008 R2 EnterpriseOffice 2010
Windows Server 2008 R2 Enterprise Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard, Windows Server 2008 R2 StandardWindows Server 2008 Enterprise, Windows Server 2008 R2 EnterpriseOffice 2010
Windows Server 2008 Datacenter Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard, Windows Server 2008 R2 StandardWindows Server 2008 Enterprise, Windows Server 2008 R2 EnterpriseWindows Server 2008 Datacenter, Windows Server 2008 R2 DatacenterWindows Server 2008 for ItaniumOffice 2010
Windows Server 2008 R2 Datacenter Windows Vista, Windows 7 ProWindows 7 Ent, Windows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard, Windows Server 2008 R2 StandardWindows Server 2008 Enterprise, Windows Server 2008 R2 EnterpriseWindows Server 2008 Datacenter, Windows Server 2008 R2 DatacenterWindows Server 2008 for ItaniumOffice 2010
Windows Server 2008 for Itanium Windows Vista, Windows 7 Pro, Windows 7 EntWindows Web Server 2008, Windows Web Server 2008 R2Windows HPC Server 2008, Windows HPC Server 2008 R2Windows Server 2008 Standard, Windows Server 2008 R2 StandardWindows Server 2008 Enterprise,Windows Server 2008 R2 EnterpriseWindows Server 2008 Datacenter, Windows Server 2008 R2 DatacenterWindows Server 2008 for ItaniumOffice 2010

En base a la matriz anterior, podemos decir que las llaves de activación de productos instaladas en un HOST KMS, se agrupan de la siguiente manera:

Para verlo gráficamente sería así:

Las diferentes claves para activación de clientes KMS, pueden encontrarse en el siguiente link:

Multiple Activation Key (MAK)

El modelo MAK de activación, es utilizado como método de activación "Por única vez", con el servicio de activación "online" de Microsoft. Estas claves son similares a las claves de licenciamiento de volumen estándar, en que los usuarios deben introducir las claves MAK en sus equipos individuales para activar sus productos. Las claves MAK, no son el modelo predeterminado para clientes de activación por volumen, por este motivo, los usuarios tendrán que solicitar las claves MAK desde el sitio web de licencias por volumen si quieren usar este modelo de activación en particular.

Hay dos maneras de activar equipos que utilizan el modelo MAK:

  1. El primer método es la activación independiente de MAK, que requiere que cada computadora independientemente se conecte con el servicio de Microsoft, para luego activarse por Internet o por teléfono.
  1. El segundo método es la activación llamado "proxy MAK". Con este método, un equipo que actúa como un "proxy MAK" reúne información de activación de varios equipos en la red, y luego envía una solicitud de activación centralizada en su nombre.

Las claves MAK permiten a un número predeterminado de activaciones, dependiendo del número de licencias que pide una organización. Por ejemplo, si el volumen incluye 10 copias de Windows 7, puede utilizar la clave de Windows 7 MAK para instalar dicho producto en 10 equipos separados.

Grupo de productos para MAK (Jerarquías)

Claves de producto para KMS y MAK se aplican a grupos clave de producto en lugar de las ediciones individuales del sistema operativo.

Grupo clave de producto • Windows 7 incluye Windows 7 Enterprise y Windows 7 Professional, por lo que las claves de producto de Windows 7 funcionan para ambos de estos productos.

Aplican los mismos grupos de jerarquías que para el servicio de KMS:

Las claves MAK están directamente asociadas con un grupo de llave de producto, y pueden activar sólo las ediciones de Windows dentro de ese grupo de productos específicos. Por ejemplo, la clave MAK B debe utilizarse para activar Windows Server 2008 Standard o Windows Server 2008 Enterprise. No funcionará una clave MAK para Windows Server 2008 Datacenter en este caso (clave MAK C). Y una clave MAK para Windows 7 no funciona con Windows Vista.

Se puede observar entonces que KMS funciona de manera jerárquica a diferencia de MAK. Por ejemplo, si tiene licencias para las ediciones de Windows Server 2008 Datacenter R2 y R2 estándar, debe utilizar la clave KMS asociada con el producto de Datacenter (clave C KMS) para activar el host KMS. El HOST KMS podrá luego activar equipos con Windows Server 2008 Datacenter R2 instalado así como de Windows Server 2008 R2 Standard.

Espero que este artículo les haya sido de utilidad para entender cómo funcionan los diferentes métodos de activación de licencias por volumen en Windows.