Enterprise IT Solutions/Microsoft

KMS 에뮬레이터를 통한 Windows 정품인증 방법

iseop 2023. 7. 2. 16:27

2025년 추신: KMS 매커니즘이 변경된 것 같습니다. 아래 내용을 따라하셔도 최신 버전 윈도우에서는 Activation이 불가능합니다.

 

지난번에 KMS를 통한 정품 인증 매커니즘에 대해 쓴 글이 있었습니다. 오늘은 공식적인 KMS 호스트가 아닌 파이썬으로 작성된 KMS 에뮬레이터를 통한 activation 방법을 적어 보겠습니다. 소스는 github.com/Py-KMS-Organization/py-kms에, 문서는 py-kms.readthedocs.io에 있습니다.

 

원래 KMS 호스트에는 Volume Activation Management Tool을 설치해서 아래 화면처럼 라이센스를 관리할 수 있다고 합니다. (KMS 호스트가 MS 인증 서버와 내부 컴퓨터 사이의 프록시 역할을 해 줍니다.)

https://learn.microsoft.com/en-us/windows/deployment/volume-activation/use-the-volume-activation-management-tool-client

그러나 py-kms 에뮬레이터는 어떤 요청에도 인증 승인 응답을 해 줍니다. 정당하게 사용 권리를 취득했음에도 불구하고 기술적인 문제로 인해 윈도우를 Activate할 수 없을 때 사용할 수 있을 것 같습니다. 실행 방법에는 몇 가지가 있는데, 가장 기본적인 방법을 사용해 보았습니다.

 

(https://py-kms.readthedocs.io/en/latest/Getting%20Started.html#manual-execution)

 

먼저 위 매뉴얼에 따라 디펜던시를 모두 설치하고, 필요에 따라 파이썬 virtualenv 등 필요한 준비를 합니다. 그리고 파이썬 최신 버전을 사용하는 경우 collections 모듈이 collections.abc로 바뀌었으므로 py-kms/Etrigan.py에서 해당 부분을 찾아서 수정합니다. 최종적으로 python3 pykms_Server.py를 실행하면 끝입니다.

pykms_Server.py

 

클라이언트를 인증하려면 py-kms.readthedocs.io/en/latest/Usage.html#activation-procedure를 참고하면 됩니다. 요약하자면 아래와 같습니다.

slmgr /upk
slmgr /ipk "W269N-WFGWX-YVC9B-4J6C9-T83GX"
slmgr /skms (KMS호스트의IP주소):1688
slmgr /ato

제품키(GVLK)는 https://learn.microsoft.com/en-us/windows-server/get-started/kms-client-activation-keys에서 찾을 수 있습니다.

kms-client-activation-keys