Hier ist eine kurze und einfache Anleitung, wie du einen eigenen KMS-Server mit Docker Compose erstellst – z. B. um Windows 10-11 , Windows Server 20xx , Microsoft Office über das KMS-Protokoll zu aktivieren.
1.Voraussetzungen
Linux oder Windows mit Docker und Docker Compose installiert
Port 1688
muss von außen erreichbar sein (Standard-KMS-Port)
Root-/Admin-Zugriff auf das System.
Erstelle einen Ordner mit diesem Befehl und springe dann ins Verzeichnis, z. B.: mkdir ~/kms-server && cd ~/kms-server
Erstelle eine Datei docker-compose.yml
mit folgendem Inhalt:
version: '3.8'
services:
kms:
image: pykms/py-kms
container_name: kms-server
ports:
- "1688:1688"
restart: unless-stopped
command: pykms_Server.py 0.0.0.0 1688
Starte den Container mit folgenden Befehl: docker compose up -d
Der Server läuft jetzt im Hintergrund und lauscht auf Port 1688
.
Mit diesem kleinen Batch Script könnt Ihr dann das Windows OS aktivieren.
✳️Was du ändern musst im Script ist folgendes:
kms-server=kms.xxx.lan (FQDN oder IP-Adresse von deinem KMS Server)
kms-key=W269N-xxxx-YVC9B-xxxx-T83GX (KMS Schlüssel für die Aktivierung) Bitte nutze die offizielle Seite von Microsoft um die Schlüssel zu nutzen.
@echo off
setlocal
:: ----------------------------------------
:: Konfiguration
:: Bitte bei KMS-Server die FQDN eingeben (z.b. kms.home.lan oder kms.xxx.de)
set "kms-server=kms.xxx.lan"
:: KMS Keys sind in der Key.txt zu finden!
set "kms-key=W269N-WFGWX-YVC9B-4J6C9-T83GX"
:: ----------------------------------------
echo [*] Installiere KMS-Client-Key...
cscript //nologo %windir%\system32\slmgr.vbs /ipk %kms-key%
if %errorlevel% neq 0 (
echo [X] Fehler beim Installieren des Keys.
exit /b 1
)
echo [*] Setze KMS-Server...
cscript //nologo %windir%\system32\slmgr.vbs /skms %kms-server%
if %errorlevel% neq 0 (
echo [X] Fehler beim Setzen des KMS-Servers.
exit /b 2
)
echo [*] Aktiviere Windows über KMS...
cscript //nologo %windir%\system32\slmgr.vbs /ato
if %errorlevel% neq 0 (
echo [X] Aktivierung fehlgeschlagen.
exit /b 3
)
echo [✓] Windows wurde erfolgreich aktiviert.
exit /b 0