자신의 VPS에 개인 KMS 서버 배포

이 튜토리얼에서는 KMS 프로토콜의 작동 방식과 학습 및 연구 목적으로만 Linux VPS에 개인 KMS 서버를 배포하는 방법을 설명합니다. 모든 단계는 GitHub의 오픈 소스 프로젝트를 참조합니다.

왜 KMS 서버를 자체 호스팅해야 하나요?

  • KMS 인증 프로토콜의 실제 작동 방식 학습
  • 포트 1688에서의 클라이언트-서버 통신 연구
  • 랩 환경에서 볼륨 라이선싱 실험
  • 서드파티 공개 KMS 노드에 대한 의존도 줄이기

사전 요건

  • Linux VPS (Ubuntu 20.04+ 또는 Debian 11+ 권장)
  • SSH를 통한 root 또는 sudo 액세스
  • Linux 명령줄에 대한 기본 지식
  • 방화벽에서 포트 1688 개방

KMS 프로토콜 아키텍처

Microsoft KMS(키 관리 서비스)는 기업 환경을 위한 클라이언트-서버 인증 모델입니다. 클라이언트는 <code>TCP 포트 1688</code>을 통해 KMS 서버에 인증 요청을 보내고, 서버는 180일 동안 유효한 라이선스 토큰으로 응답합니다. 클라이언트는 7일마다 자동으로 갱신합니다.

  1. 1 클라이언트가 slmgr /skms your-server-ip를 실행하여 KMS 호스트 설정
  2. 2 클라이언트가 slmgr /ato를 실행하여 인증 요청 전송
  3. 3 KMS 서버가 GVLK를 검증하고 토큰으로 응답
  4. 4 클라이언트는 180일 동안 인증되며, 7일마다 자동 갱신

설정 단계

1단계: VPS 구매

VPS 제공업체를 선택하고 Linux 인스턴스를 생성하세요. 1 vCPU + 512MB RAM으로 충분합니다 — KMS는 리소스를 거의 사용하지 않습니다.

2단계: vlmcsd 설치

vlmcsd는 오픈 소스 KMS 에뮬레이터입니다. GitHub에서 vlmcsd를 검색하세요. 다음은 일반적인 설치 단계입니다:

# GitHub에서 최신 릴리스 다운로드
cd /tmp
# wget https://github.com/.../vlmcsd-...-linux-x64
# chmod +x vlmcsd
# mv vlmcsd /usr/local/bin/

3단계: 방화벽 포트 1688 개방

KMS는 TCP 포트 1688을 사용합니다. 방화벽에서 개방되어 있는지 확인하세요:

# UFW (Ubuntu/Debian)
sudo ufw allow 1688/tcp

# firewalld (CentOS/RHEL)
sudo firewall-cmd --permanent --add-port=1688/tcp
sudo firewall-cmd --reload

4단계: 서비스 시작

백그라운드에서 vlmcsd 실행:

# vlmcsd 시작 (기본적으로 데몬으로 실행)
vlmcsd

# 실행 중인지 확인
netstat -tlnp | grep 1688

5단계: 클라이언트에서 연결

Windows 컴퓨터에서 관리자로 CMD/PowerShell을 열고:

slmgr /skms YOUR_VPS_IP
slmgr /ato

대안: Docker 배포

Docker를 선호하는 경우, Docker Hub에서 vlmcsd 이미지를 검색하세요:

docker run -d --name vlmcsd -p 1688:1688 --restart=always mikolatero/vlmcsd

부팅 시 자동 시작 (systemd)

재부팅 후에도 vlmcsd를 계속 실행하기 위한 systemd 서비스 파일 생성:

sudo tee /etc/systemd/system/vlmcsd.service << 'EOF'
[Unit]
Description=vlmcsd KMS Emulator
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/bin/vlmcsd
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable vlmcsd
sudo systemctl start vlmcsd

서버 확인

KMS 서버 상태 확인 도구를 사용하여 포트 1688에서 서버에 접근할 수 있는지 테스트하세요.

중요 공지

  • • 이 튜토리얼은 학습 및 연구 목적으로만 제공됩니다. 무단 인증에는 사용하지 마세요.
  • • vlmcsd는 서드파티 오픈 소스 프로젝트입니다. 소프트웨어를 호스팅하거나 배포하지 않습니다.
  • • 프로덕션 환경에서는 공식 Microsoft 볼륨 라이선싱을 사용하세요.
  • • KMS 인증은 180일 동안 유효하며 주기적인 갱신이 필요합니다.