py-kms - это порт node-kms, созданный cyrozap, который является портом реализаций KMSEmulator на C#, C++ или .NET. Оригинальная версия была написана CODYQX4 и основана на переработанном коде официальной KMS от Microsoft. Эта версия py-kms сама по себе является ответвлением оригинальной реализации от System Range, от которой отказались в начале 2021 года.
Отвечает на запросы KMS версий v4, v5 и v6.
Поддерживает активацию:
Он написан на Python (протестирован на Python 3.10.1). Поддерживает выполнение с помощью Docker, systemd и многих других программ.. Использует sqlite для постоянного хранения данных (с помощью простого веб-обозревателя).
Далее приведены подробные объяснения того, как работает инфраструктура KMS.
KMS активирует продукты Microsoft в локальной и внешней сети, устраняя необходимость подключения отдельных компьютеров к Microsoft. Для этого в KMS используется топология клиент–сервер. Клиент KMS находит сервер KMS с помощью DNS или статической конфигурации, затем связывается с ним с помощью удаленного вызова процедур (RPC) и пытается активировать его. KMS может активировать как физические компьютеры, так и виртуальные машины, но сеть должна соответствовать или превышать порог активации (минимальное количество компьютеров, требуемое KMS), равный 25. Для активации клиентам KMS в сети необходимо установить клиентский ключ KMS (общий корпоративный лицензионный ключ, GVLK), поэтому продукт больше не запрашивает сервер Microsoft, а запрашивает пользовательский сервер (сервер KMS), который обычно находится во внутренней сети компании.
py-kms - это бесплатный эмулятор сервера KMS с открытым исходным кодом, написанный на Python, в то время как Microsoft предоставляет свой сервер KMS только корпорациям, подписавшим специальный контракт. Кроме того, py-kms никогда не отказывает в активации, поскольку он не имеет ограничений, в то время как сервер Microsoft KMS активирует только те продукты, за которые заплатил клиент. py-kms поддерживает протоколы KMS версий 4, 5 и 6.
Хотя py-kms не требует ни ключа активации, ни какой-либо оплаты, он не предназначен для запуска нелегальных копий Windows. Его цель - гарантировать, что владельцы легальных копий смогут использовать свое программное обеспечение без ограничений, например, если вы купите новый компьютер или материнскую плату, а серверы Microsoft откажут в активации вашего ключа из-за изменений в оборудовании.
Активация с помощью py-kms осуществляется с помощью следующих шагов:
Обратите внимание, что активации KMS действительны только в течение 180 дней (интервал действия активации) или от 30 до 45 дней для продуктов, предназначенных только для пользователей. Чтобы активация оставалась в силе, клиентские компьютеры KMS должны обновлять свою активацию, подключаясь к серверу KMS не реже одного раза в 180 дней. Чтобы это сработало, вы должны убедиться, что сервер KMS всегда доступен для всех клиентов в сети. Также помните, что вы не можете активировать Windows 8.1 (и выше) на сервере KMS, размещенном на том же компьютере (сервер KMS должен находиться на другом компьютере, чем клиент).
Ключи GVLK для продуктов, продаваемых по корпоративным лицензионным контрактам (продление каждые 180 дней), опубликованы на веб-сайте Microsoft Technet.
Существуют также неофициальные ключи для пользовательских версий Windows, которые требуют обновления активации каждые 45 дней (Windows 8.1) или 30 дней (Windows 8). Более полный и четко определенный список доступен здесь.
Обратите внимание, что можно активировать все версии продуктов VL (корпоративная лицензия), если вы предоставите соответствующий ключ, чтобы сообщить Windows, что он должен быть активирован на сервере KMS. Активация KMS не может быть использована для продуктов Retail channel, однако вы можете установить ключ продукта VL, соответствующий вашей версии Windows, даже если он был установлен как розничный. Это эффективно преобразует розничную установку в VL channel и позволит вам активировать его с сервера KMS. Однако это не относится к продуктам Office, поэтому Office, Project и Visio всегда должны быть версиями с корпоративной лицензией. Более новая версия может работать до тех пор, пока протокол KMS не изменится.