มีโครงการโอเพ่นซอร์สที่น่าสนใจบน GitHub ชื่อ vlmcsd (https://github.com/Wind4/vlmcsd) เพื่อจำลองเซิร์ฟเวอร์การเปิดใช้งาน KMS ของ Microsoft คุณสามารถใช้เพื่อปรับใช้เซิร์ฟเวอร์ KMS ของคุณเองบนแพลตฟอร์มอื่นที่ไม่ใช่ Windows Server (ดังนั้น คุณสามารถบันทึกใบอนุญาต Windows Server ได้หากคุณไม่ได้ใช้) คุณสามารถติดตั้งเซิร์ฟเวอร์ KMS ดังกล่าวบน Linux, Android, FreeBSD, macOS เป็นต้น ในบทความนี้ เราจะแสดงวิธีติดตั้ง KMS ที่ใช้ vlmcsd บนโฮสต์ Linux และใช้เพื่อเปิดใช้งานคอมพิวเตอร์ที่ใช้เดสก์ท็อป Windows รุ่น Windows เซิร์ฟเวอร์และ Microsoft Office บนเครือข่ายท้องถิ่นของคุณ
ข้อจำกัดความรับผิดชอบ . บทความนี้จัดทำขึ้นเพื่อการศึกษา/ในห้องปฏิบัติการเท่านั้น และห้ามใช้ผลิตภัณฑ์เพื่อเปิดใช้งาน Windows หรือ Office อย่างผิดกฎหมาย โครงการ WindowsOSHub เตือนคุณอย่าใช้ซอฟต์แวร์ที่ไม่ได้รับอนุญาต (ละเมิดลิขสิทธิ์) ในทุกรูปแบบ
ก่อนที่คุณจะเริ่ม เราขอแนะนำให้คุณทำความคุ้นเคยกับเทคโนโลยี Microsoft KMS Volume Activation ข้อมูลที่จำเป็นเกือบทั้งหมดมีอยู่ในคำถามที่พบบ่อยเกี่ยวกับการเปิดใช้งาน Microsoft KMS Volume
ในตัวอย่างนี้ เรากำลังใช้ Red Hat Enterprise Linux 8 (RHEL) เพื่อปรับใช้โฮสต์ KMS แต่คุณสามารถใช้ OS อื่นๆ ได้ เช่น Ubuntu, Debian, CentOS, Rocky Linux หรือแม้แต่อุปกรณ์ NAS ของคุณ (มีตัวอย่างการติดตั้งสำเร็จไปยังเซิร์ฟเวอร์ Synology NAS)
เชื่อมต่อกับเซิร์ฟเวอร์ Linux ของคุณและใช้ตัวจัดการแพ็คเกจ yum (dnf) เพื่อติดตั้งแพ็คเกจ git และ gcc:
# dnf update
# dnf install git gcc
จากนั้นโคลนและติดตั้งแพ็คเกจ vlmcsd:
# git clone https://github.com/Wind4/vlmcsd
# cd vlmcsd
# make
เปลี่ยนเป็นไดเร็กทอรี bin:
# cd bin
เรียกใช้เซิร์ฟเวอร์ KMS:
# ./vlmcsd
คุณจะเห็นข้อความต่อไปนี้:
Connecting to 127.0.0.1:1688 ... successful Sending activation request (KMS V6) 1 of 1 -> 55041-00206-559-475403-03-1076-6002.0000-1482020 (3A1C049600B60076)
หมายความว่าคุณคอมไพล์และเรียกใช้เซิร์ฟเวอร์ KMS บน Linux สำเร็จแล้ว
ตามค่าเริ่มต้น vlmcsd จะรับฟังพอร์ต KMS เริ่มต้น TCP/1688 . ดังนั้น คุณต้องเปิดพอร์ตในไฟร์วอลล์ Linux เพื่อให้ไคลเอ็นต์เชื่อมต่อได้ สำหรับ firewalld ให้รันคำสั่งด้านล่าง:
# firewall-cmd --zone=public --permanent --add-port=1688/tcp
# firewall-cmd –reload
ตรวจสอบให้แน่ใจว่าพอร์ต 1688 เปิดอยู่:
# firewall-cmd --list-port
# netstat -ntlp | grep LISTEN
ในการรัน vlmcsd โดยอัตโนมัติ คุณสามารถสร้าง daemon ของคุณเองและจัดการโดยใช้ systemd
# cp vlmcs /usr/bin
# touch /etc/systemd/system/kms-script.service
# chmod 664 /etc/systemd/system/kms-script.service
# nano /etc/systemd/system/kms-script.service
เพิ่มคำอธิบายบริการต่อไปนี้ในไฟล์:
[Unit] Description=MSFT KMS Server Emulator After=network.target After=network-online.target Wants=network-online.target [Service] Type=oneshot ExecStart=/usr/bin/vlmcsd RemainAfterExit=yes LimitNOFILE=65536 [Install] WantedBy=multi-user.target
จากนั้นเรียกใช้บริการ KMS และเพิ่มในการเริ่มต้น:
# systemctl daemon-reload
# systemctl start kms-script.service
# systemctl status kms-script.service
# systemctl enable kms-script.service
คุณสามารถตั้งค่าตัวเลือกเซิร์ฟเวอร์ KMS ขั้นสูงผ่าน vlmcsd.ini ( มีไฟล์ตัวอย่างใน ../vlmcsd/etc/) คุณยังสามารถกำหนดเส้นทางไปยังไฟล์บันทึกของเซิร์ฟเวอร์ KMS ได้ (vlmcsd.log ). คุณสามารถกำหนดเส้นทางของไฟล์ในตัวเลือกการเริ่มต้น vlmcsd โดยใช้ตัวเลือกต่อไปนี้:
-i /etc/vlmcsd.ini
-l /var/log/vlmcsd.log
sudo docker pull mikolatero/vlmcsd
sudo docker run -d -p 1688:1688 --restart=always --name kms_server mikolatero/vlmcsd /vlmcsd -D -d -t 3 -e -v -R172800 -A10080
หากคุณใช้ Microsoft DNS คุณสามารถสร้าง _VLMCS บันทึกที่จะอนุญาตให้ไคลเอนต์ Windows ค้นหาเซิร์ฟเวอร์ KMS ในโดเมนโดยอัตโนมัติ ในการสร้างระเบียน DNS SRV ให้ใช้คำสั่ง PowerShell ต่อไปนี้:
Add-DnsServerResourceRecord -Srv -Name "_VLMCS._tcp" -ZoneName "woshub.com" -DomainName "192.168.14.147" -Priority 0 -Weight 0 -Port 1688
โดยที่ 192.168.14.147
เป็นที่อยู่ IP ของบริการ KMS โฮสต์ Linux ของคุณที่กำลังทำงานอยู่
จากนั้นโฮสต์ Windows (และ Office) ทั้งหมดในโดเมนของคุณจะเปิดใช้งานโดยอัตโนมัติบนเซิร์ฟเวอร์ KMS หากมีการติดตั้ง GVLK สาธารณะไว้ รายการทั้งหมดของ GVLK (Generic Volume License Keys) เพื่อเปิดใช้งาน Windows ทุกรุ่นที่มีเผยแพร่บนเว็บไซต์ของ Microsoft:https://docs.microsoft.com/en-us/windows-server/get-started/kms-client- ปุ่มเปิดใช้งาน
ตัวอย่างเช่น ค้นหา GVLK เพื่อเปิดใช้งาน Windows Server 2022 Standard (VDYBN-27WPP-V4HQT-9VMD4-VMK7H) และ Windows 10 Pro (W269N-WFGWX-YVC9B-4J6C9-T83GX) ในหน้านี้
ในการเปิดใช้งาน Windows ด้วยตนเอง ให้ตั้งค่า GVLK สำหรับเวอร์ชัน Windows ของคุณ ที่อยู่ IP ของโฮสต์การเปิดใช้งาน KMS ของคุณและเรียกใช้คำสั่งการเปิดใช้งาน มีการใช้คำสั่งต่อไปนี้ (เช่น สำหรับ Windows Server 2022 Standard):
slmgr.vbs -ipk VDYBN-27WPP-V4HQT-9VMD4-VMK7H
slmgr.vbs -skms 192.168.14.147
slmgr.vbs -ato
หลังจากที่คุณรันคำสั่งสุดท้าย คุณจะเห็นข้อความ:Product activated successfully
. ซึ่งหมายความว่าสำเนา Windows ของคุณเปิดใช้งานสำเร็จแล้ว
คุณสามารถตรวจสอบสถานะการเปิดใช้งาน Windows ได้โดยใช้คำสั่ง:
slmgr.vbs -dlv
Error: 0xC004F069 On a computer running Microsoft Windows non-core edition, run 'slui.exe 0x2a 0xC004F069' to display the error text.
เหตุผลก็คือฉันได้ติดตั้ง Windows Server 2022 เวอร์ชันทดลองใช้งานแล้ว ขั้นแรก คุณต้องแปลงเป็นเวอร์ชันมาตรฐานตามบทความนี้:
dism /online /set-edition:serverstandard /productkey:VDYBN-27WPP-V4HQT-9VMD4-VMK7H /accepteula
จากนั้นฉันก็สามารถเปิดใช้งานอินสแตนซ์ Windows ของฉันบนโฮสต์ KMS ได้
ในทำนองเดียวกัน คุณสามารถเปิดใช้งานเวอร์ชันวอลุ่มของ Microsoft Office 2019/2016/2013 บนโฮสต์ KMS ของคุณได้ ใช้คำสั่งต่อไปนี้:
cd C:\Program Files\Microsoft Office\Office16
cscript ospp.vbs /sethst: 192.168.14.147
cscript ospp.vbs /act
วิธีตรวจสอบสถานะการเปิดใช้งาน Office:
cscript ospp.vbs /dstatusall
เราจึงได้แสดงวิธีการปรับใช้เซิร์ฟเวอร์ KMS บน Linux และเปิดใช้งาน Windows ทุกเวอร์ชัน รวมถึง Windows Server 2022 และ Windows 11 ล่าสุด