본문 바로가기

서버 리뷰/홈 서버

[Rocky Linux 9] vlmcsd를 이용한 고효율 KMS 서버 구축 가이드 (Native 방식)

728x90

본 포스팅에서는 Rocky Linux 9 환경에서 오픈소스 KMS 에뮬레이터인 vlmcsd를 활용하여 Windows 및 Office 정품 인증 서버를 구축하는 방법을 다룹니다. 특히 Docker 이미지 접근 권한 이슈(pull access denied)를 피하기 위해, 시스템 리소스를 최소화하는 Native 바이너리 설치 및 Systemd 서비스 등록 방식을 채택했습니다.

1. 구축 환경

  • OS: Rocky Linux 9.x (x86_64)
  • 특이사항: 기존 DHCP 서버가 구동 중인 보안 서버(Rocky9-Security-Srv)에 통합 구축
  • 방식: vlmcsd 정적 바이너리 설치 및 서비스 등록

2. vlmcsd 설치 및 구성

2.1 바이너리 다운로드 및 압축 해제

Docker 허브의 이미지 접근이 원활하지 않을 경우를 대비해 공식 GitHub의 바이너리를 직접 사용합니다.

Bash
 
# 작업 디렉토리 생성 및 이동
mkdir -p /opt/kms-native && cd /opt/kms-native

# vlmcsd 공식 바이너리 패키지 다운로드
wget https://github.com/Wind4/vlmcsd/releases/download/svn1113/binaries.tar.gz

# 압축 해제
tar -zxvf binaries.tar.gz

2.2 시스템 경로 복사 및 권한 설정

Rocky Linux 9(64비트) 환경에 최적화된 static 바이너리를 시스템 실행 경로로 복사합니다.

Bash
 
# x64 환경에 맞는 static 바이너리 복사
cp binaries/Linux/intel/static/vlmcsd-x64-musl-static /usr/bin/vlmcsd

# 실행 권한 부여
chmod +x /usr/bin/vlmcsd

3. Systemd 서비스 등록 (자동 실행)

서버 재부팅 시에도 KMS 서비스가 자동으로 시작되도록 관리 서비스를 등록합니다.

3.1 서비스 파일 생성

Bash
 
vi /etc/systemd/system/kms-server.service

내부 설정 값:

Ini, TOML
 
[Unit]
Description=KMS Emulator Service (vlmcsd)
After=network.target

[Service]
Type=forking
ExecStart=/usr/bin/vlmcsd
Restart=always
User=root

[Install]
WantedBy=multi-user.target

3.2 서비스 활성화

Bash
 
# systemd 데몬 재로드
systemctl daemon-reload

# 서비스 시작 및 부팅 시 자동 시작 설정
systemctl start kms-server
systemctl enable kms-server

# 실행 상태 확인
systemctl status kms-server

4. 네트워크 및 보안 설정

4.1 방화벽 설정 (firewalld)

KMS 서비스는 TCP 1688 포트를 사용합니다. 해당 포트를 영구적으로 허용합니다.

Bash
 
firewall-cmd --permanent --add-port=1688/tcp
firewall-cmd --reload

4.2 인프라 통합 가이드

현재 서버에 DHCP 서버가 함께 구동 중이라면, 내부망의 단일 지점에서 IP 할당과 정품 인증 서비스를 동시에 제공할 수 있어 관리가 매우 용이합니다.

5. 클라이언트 인증 테스트 (Windows)

구축 완료 후 클라이언트 PC(Windows)에서 관리자 권한 명령 프롬프트(CMD)를 열고 다음 명령어를 수행합니다.

DOS
 
:: 1. KMS 서버 주소 설정
slmgr /skms [서버_IP]:1688

:: 2. 정품 인증 시도
slmgr /ato

:: 3. 인증 상태 확인
slmgr /xpr

6. 결론 및 요약

Docker 방식의 오류 발생 시 Native 바이너리 방식은 확실한 대안이 됩니다. 특히 Rocky Linux 9 환경에서 vlmcsd는 메모리 점유율이 5MB 미만으로 매우 가벼우며, 별도의 키(CSVLK) 없이도 내부 테스트 환경의 정품 인증 문제를 깔끔하게 해결해 줍니다.

반응형