Централизованная активация Windows и Office через KMS — стандарт для корпоративной инфраструктуры.
В этой статье разберём практические сценарии развёртывания KMS в Docker:
- LXC-контейнер в Proxmox
- Отдельный хост Ubuntu
- Хост CentOS / AlmaLinux
- docker-compose
- Тестирование активации
- Автоматическая активация через Group Policy в Active Directory
Архитектура KMS
Клиенты Windows и Office обращаются к KMS-серверу по TCP 1688.
Активация действует 180 дней и автоматически продлевается каждые 7 дней.
Минимальный порог:
- 25 клиентских ОС Windows
- 5 серверных ОС
Вариант 1: LXC-контейнер в Proxmox
Подходит для виртуализированной инфраструктуры.
Создание LXC
- Debian 12 template
- 1 vCPU
- 512 MB RAM
- Bridge vmbr0
Установка Docker внутри LXC
apt update
apt install docker.io -y
systemctl enable docker
systemctl start docker
Запуск KMS
docker run -d \
--name kms-server \
-p 1688:1688 \
--restart unless-stopped \
mikolatero/vlmcsd
Важно: в настройках LXC включить nesting и keyctl.
Вариант 2: Хост Ubuntu
Установка Docker
apt update
apt install docker.io docker-compose-plugin -y
Открываем порт
ufw allow 1688/tcp
Запуск контейнера
docker run -d \
--name kms-server \
-p 1688:1688 \
--restart unless-stopped \
mikolatero/vlmcsd
Вариант 3: CentOS / AlmaLinux / Rocky Linux
Установка Docker
dnf install docker -y
systemctl enable docker
systemctl start docker
Firewall
firewall-cmd --permanent --add-port=1688/tcp
firewall-cmd --reload
Запуск контейнера
docker run -d \
--name kms-server \
-p 1688:1688 \
--restart unless-stopped \
mikolatero/vlmcsd
Вариант 4: Docker Compose (рекомендуется)
version: '3.8'
services:
kms:
image: mikolatero/vlmcsd
container_name: kms-server
restart: unless-stopped
ports:
- "1688:1688"
Запуск:
docker compose up -d
Тестирование активации Windows
На клиентской машине (от имени администратора):
slmgr /skms 192.168.1.10:1688
slmgr /ato
Проверка статуса:
slmgr /dlv
Если всё корректно — появится статус Licensed.
Активация Windows через Group Policy (Active Directory)
Чтобы клиенты автоматически использовали KMS:
1. DNS SRV запись
KMS может публиковаться через запись:
_vlmcs._tcp.domain.local
Если используется стандартный порт 1688 — клиенты найдут сервер автоматически.
2. Через Group Policy
Создаём GPO:
- Computer Configuration → Administrative Templates → Windows Components → Windows Activation
- Specify KMS client activation server
- Указываем: kms-server.domain.local:1688
Обновляем политики:
gpupdate /force
Активация Microsoft Office через KMS
Переходим в папку Office (пример для Office 2021):
cd "C:\Program Files\Microsoft Office\Office16"
cscript ospp.vbs /sethst:kms-server.domain.local
cscript ospp.vbs /act
Проверка:
cscript ospp.vbs /dstatus
Проверка сервера
ss -tulpn | grep 1688
docker logs kms-server
Безопасность
- Не публиковать порт 1688 в интернет
- Ограничить доступ по IP
- Размещать сервер во внутреннем сегменте
- Использовать только легальные Volume лицензии
Вывод
KMS в Docker — гибкое решение для корпоративной активации Windows и Office.
Его можно развернуть в LXC Proxmox, на Ubuntu, CentOS или любом Linux-хосте с Docker.
Интеграция с Active Directory через DNS и GPO делает активацию полностью автоматической.
При корректной настройке система работает годами без обслуживания и потребляет минимальные ресурсы.
Оставайтесь на связи
Рецепты от IT-боли. Без воды, без рекламы, без маркетинговой шелухи.
Подписаться на IT-Аптеку →


