Instalación de un servidor KMS de código abierto (Vlmcsd) en Linux
Hay un interesante proyecto de código abierto en GitHub llamado vlmcsd (https://github.com/Wind4/vlmcsd) para emular el servidor de activación KMS de Microsoft. Puede usarlo para implementar su propio servidor KMS en plataformas que no sean Windows Server (por lo tanto, puede ahorrar en una licencia de Windows Server si no la usa). Puede instalar dicho servidor KMS en Linux, Android, FreeBSD, macOS, etc. En este artículo, le mostraremos cómo instalar KMS basado en vlmcsd en un host Linux y usarlo para activar computadoras que ejecutan ediciones de Windows de escritorio, Windows Server y Microsoft Office en su red local.
Descargo de responsabilidad. Este artículo se proporciona únicamente con fines educativos o de laboratorio y no supone el uso del producto para activar Windows u Office de forma ilegal. El Proyecto WindowsOSHub le recuerda que no use software sin licencia (pirateado) de ninguna forma.
Antes de comenzar, le recomendamos que se familiarice con la tecnología de activación por volumen KMS de Microsoft. Casi toda la información necesaria se puede encontrar en las Preguntas frecuentes sobre la activación por volumen de Microsoft KMS.
En este ejemplo, usamos Red Hat Enterprise Linux 8 (RHEL) para implementar el host KMS, pero puede usar cualquier otro sistema operativo, como Ubuntu, Debian, CentOS, Rocky Linux. o incluso su dispositivo NAS (existen algunos ejemplos de instalación correcta en un servidor Synology NAS).
Conéctese a su servidor Linux y use el administrador de paquetes yum (dnf) para instalar los paquetes git y gcc:
# dnf update
# dnf install git gcc
Luego clone e instale el paquete vlmcsd:
# git clone https://github.com/Wind4/vlmcsd# cd vlmcsd
# makeCambie al directorio bin:
# cd binEjecute el servidor KMS:
# ./vlmcsdVerá el siguiente mensaje:
Connecting to 127.0.0.1:1688 ... successful
Sending activation request (KMS V6) 1 of 1 -> 55041-00206-559-475403-03-1076-6002.0000-1482020 (3A1C049600B60076)Significa que ha compilado y ejecutado con éxito el servidor KMS en Linux.
De forma predeterminada, vlmcsd escucha en un puerto KMS predeterminado TCP/1688. Por lo tanto, debe abrir el puerto en su firewall de Linux para permitir que los clientes se conecten a él. Para firewalld, ejecute los siguientes comandos:
# firewall-cmd --zone=public --permanent --add-port=1688/tcp
# firewall-cmd -reloadAsegúrese de que el puerto 1688 esté abierto:
# firewall-cmd --list-port
# netstat -ntlp | grep LISTEN
Para ejecutar vlmcsd automáticamente, puede crear su propio demonio y administrarlo mediante systemd.
# cp vlmcs /usr/bin
# touch /etc/systemd/system/kms-script.service
# chmod 664 /etc/systemd/system/kms-script.service
# nano /etc/systemd/system/kms-script.serviceAgregue la siguiente descripción del servicio al archivo:
[Unit]
Description=MSFT KMS Server Emulator
After=network.target
After=network-online.target
Wants=network-online.target
[Service]
Type=oneshot
ExecStart=/usr/bin/vlmcsd
RemainAfterExit=yes
LimitNOFILE=65536
[Install]
WantedBy=multi-user.targetLuego ejecute el servicio KMS y agréguelo al inicio:
# systemctl daemon-reload
# systemctl start kms-script.service
# systemctl status kms-script.service
# systemctl enable kms-script.servicePuede configurar las opciones avanzadas del servidor KMS a través de vlmcsd.ini (hay un archivo de muestra en ../vlmcsd/etc/). Allí también puede establecer una ruta al archivo de registro del servidor KMS (vlmcsd.log). Puede establecer rutas de archivo en las opciones de inicio de vlmcsd utilizando las siguientes opciones:
-i /etc/vlmcsd.ini-l /var/log/vlmcsd.logTambién puede ejecutar el servidor KMS en un contenedor docker:
sudo docker pull mikolatero/vlmcsd
sudo docker run -d -p 1688:1688 --restart=always --name kms_server mikolatero/vlmcsd /vlmcsd -D -d -t 3 -e -v -R172800 -A10080Si usa Microsoft DNS, puede crear un registro _VLMCS que permitirá a los clientes de Windows encontrar automáticamente un servidor KMS en el dominio. Para crear un registro DNS SRV, use el siguiente comando de PowerShell:
Add-DnsServerResourceRecord -Srv -Name "_VLMCS._tcp" -ZoneName "a-d.site" -DomainName "192.168.14.147" -Priority 0 -Weight 0 -Port 1688dónde
192.168.14.147es una dirección IP de su servicio KMS de host Linux en el que se está ejecutando.
Luego, todos los hosts de Windows (y Office) en su dominio se activarán automáticamente en su servidor KMS si tienen un GVLK público instalado. En el sitio web de Microsoft se publica una lista completa de GVLK (Claves genéricas de licencia por volumen) para activar todas las versiones disponibles de Windows: https://docs.microsoft.com/en-us/windows-server/get-started/kms-client-activation-keys.
Por ejemplo, busque GVLK para activar Windows Server 2022 Standard (VDYBN-27WPP-V4HQT-9VMD4-VMK7H) y Windows 10 Pro (W269N-WFGWX-YVC9B-4J6C9-T83GX) en esta página.
Para activar Windows manualmente, configure el GVLK para su versión de Windows, la dirección IP de su host de activación de KMS y ejecute el comando de activación. Se utilizan los siguientes comandos (por ejemplo, para Windows Server 2022 Standard):
slmgr.vbs -ipk VDYBN-27WPP-V4HQT-9VMD4-VMK7H
slmgr.vbs -skms 192.168.14.147
slmgr.vbs -atoDespués de ejecutar el último comando, verá el mensaje:
Product activated successfully. Esto significa que su copia de Windows se ha activado con éxito.
Puede verificar el estado de activación de Windows usando el comando:
slmgr.vbs -dlvEn mi ejemplo, ocurrió un error al activar Windows Server:
Error: 0xC004F069 On a computer running Microsoft Windows non-core edition, run 'slui.exe 0x2a 0xC004F069' to display the error text.El motivo es que tengo instalada una versión de evaluación de Windows Server 2022. Primero, debe convertirlo a una versión estándar de acuerdo con este artículo:
dism /online /set-edition:serverstandard /productkey:VDYBN-27WPP-V4HQT-9VMD4-VMK7H /accepteulaLuego puedo activar mi instancia de Windows en el host KMS.
De la misma manera, puede activar versiones de volumen de Microsoft Office 2019/2016/2013 en su host KMS. Se utilizan los siguientes comandos:
cd C:\Program Files\Microsoft Office\Office16
cscript ospp.vbs /sethst: 192.168.14.147
cscript ospp.vbs /actPara comprobar el estado de activación de Office:
cscript ospp.vbs /dstatusallObtenga más información sobre la activación KMS de Microsoft Office.
Entonces, mostramos cómo implementar un servidor KMS en Linux y activar todas las versiones de Windows, incluidas las últimas Windows Server 2022 y Windows 11.





