KMS server là gì? vì sao dùng KMS server để kích hoạt windows?
Các công cụ fake KMS server để kích hoạt windows đã có từ lâu và được phần lớn anh em sử dụng để cài win dạo. Tuy nhiên việc sử dụng một số công cụ đó luôn tiềm ẩn nguy cơ dính backdoor làm lây lan virus trong hệ thống mạng nội bộ của công ty, của khách hàng, vì thế trong bài viết này mình sẽ hướng đẫn tự build kms server được chia sẻ trên Github.com nhằm tạo một server kích hoạt bản quyền windows an toàn để sử dụng lâu dài.
Tiếp theo bài trước, ý tưởng của mình là xây dựng một server “lightweight”, chạy vài dịch vụ cơ bản như: KMS, DNS, DHCP, Time server. Với cấu hình chỉ 128MB ram, 1 CPU, 200Mb HDD.
Tuy nhiên trong bài viết này, sẽ phải tải thêm bộ công cụ biên dịch mã nguồn cho nên HDD cho Vm cần tối thiểu là 500MB xem: Cài dặt alpine linux trên vmware
Các bản windows/office được hỗ trợ: https://toiyeuit.com/wp-content/uploads/2018/01/kms-windows-office.txt
Bắt tay vào làm thôi.
Cài đặt kms server trên linux để kích hoạt bản quyền windows, office
1. Cài đặt git, và công cụ biên dịch trên Alpine Linux
# apk add git build-base
Link tải vlmcsd trên github:
https://github.com/Wind4/vlmcsd
# git clone https://github.com/Wind4/vlmcsd
kms:~# git clone https://github.com/Wind4/vlmcsd Cloning into 'vlmcsd'... remote: Counting objects: 1492, done. remote: Total 1492 (delta 0), reused 0 (delta 0), pack-reused 1492 Receiving objects: 100% (1492/1492), 11.69 MiB | 332.00 KiB/s, done. Resolving deltas: 100% (770/770), done. kms:~#
2. Tiến hành build và cài đặt:
kms:~# cd vlmcsd/ kms:~/vlmcsd# make make[1]: Entering directory '/root/vlmcsd/src' fatal: No annotated tags can describe '28a50f7bbaf1f047f6501147ff2a4a80e3f9bc41' . However, there were unannotated tags: try --tags. CC vlmcs.o <- vlmcs.c CC kmsdata-full.o <- kmsdata-full.c CC crypto.o <- crypto.c CC kms.o <- kms.c CC endian.o <- endian.c CC output.o <- output.c CC shared_globals.o <- shared_globals.c CC helpers.o <- helpers.c CC network.o <- network.c CC rpc.o <- rpc.c CC crypto_internal.o <- crypto_internal.c CC dns_srv.o <- dns_srv.c CC vlmcsd.o <- vlmcsd.c CC kmsdata.o <- kmsdata.c LD ../bin/vlmcs <- vlmcs.o kmsdata-full.o crypto.o kms.o endian.o output.o shared_globals.o helpers.o network.o rpc.o crypto_internal.o dns_srv.o LD ../bin/vlmcsd <- vlmcsd.o kmsdata.o crypto.o kms.o endian.o output.o shared_globals.o helpers.o network.o rpc.o crypto_internal.o make[1]: Leaving directory '/root/vlmcsd/src'
copy file đã build vào /usr/sbin/kmsd
# cp ~/vlmcsd/bin/vlmcsd /usr/sbin/kmsd
Tạo file service:
vi /etc/init.d/kmsd
Nội dung:
#!/sbin/openrc-run #Created by toiyeuit.com Jan 2018 name="kmsd" pidfile="/run/$RC_SVCNAME.pid" command="/usr/sbin/kmsd" command_args="-p $pidfile -v -l /var/log/kmsd.log" depend() { need net }
kms:~/vlmcsd# vi /etc/init.d/kmsd kms:~/vlmcsd# chmod +x /etc/init.d/kmsd kms:~/vlmcsd# rc-update add kmsd * service kmsd added to runlevel default kms:~/vlmcsd# /etc/init.d/kmsd start * Starting kmsd ... [ ok ]
3. Mở Port TCP/1688 cho KMS service:
kms:~/vlmcsd# iptables -A INPUT -m tcp -p tcp --dport 1688 -j ACCEPT kms:~/vlmcsd# /etc/init.d/iptables save * Saving iptables state ... [ ok ] kms:~/vlmcsd#
Sử dụng netstat để kiểm tra:
kms:~/vlmcsd# netstat -tupl | grep kmsd tcp 0 0 0.0.0.0:1688 0.0.0.0:* LISTEN 5637/kmsd tcp 0 0 :::1688 :::* LISTEN 5637/kmsd kms:~/vlmcsd#
Service đã chạy và nhận request qua port 1688.
Tiến hành thử kích hoạt windows qua kms server vừa tạo
Sử dụng 1 máy ảo chạy windows 2008 r2 đã hết thời gian trial:
Nhập thông số host kms vào windows:
slmgr /skms <IP kms server>:<port> sample: slmgr /skms 192.168.200.136:1688
Nhập key KMS client vào máy :
Danh sách key KMS lấy ở đây: https://technet.microsoft.com/en-us/library/jj612867(v=ws.11).aspx
slmgr /ipk <KEY> sample: slmgr /ipk YC6KT-GKW9T-YTKYR-T4X34-R7VHC
Kích hoạt bản quyền ta dùng lệnh:
slmgr /ato
Thông báo kích hoạt thành công, ta kiểm tra lại bằng lệnh
slmgr /dlv
Đối với office, do có nhiều phiên bản với các thư mục khác nhau nên bạn phải tự tìm vị trí file ospp.vbs
Ví dụ với windows 64bit/MSO 2016/64bit:
C:\Program Files\Microsoft Office\Office16\ospp.vbs
C:\Program Files\Microsoft Office\Office16>cscript ospp.vbs /sethst:192.168.200.136 Microsoft (R) Windows Script Host Version 5.812 Copyright (C) Microsoft Corporation. All rights reserved. ---Processing-------------------------- --------------------------------------- Successfully applied setting. --------------------------------------- ---Exiting----------------------------- C:\Program Files\Microsoft Office\Office16>cscript ospp.vbs /act Microsoft (R) Windows Script Host Version 5.812 Copyright (C) Microsoft Corporation. All rights reserved. ---Processing-------------------------- --------------------------------------- Installed product key detected - attempting to activate the following product: SKU ID: 6bf301c1-b94a-43e9-ba31-d494598c47fb LICENSE NAME: Office 16, Office16VisioProVL_KMS_Client edition LICENSE DESCRIPTION: Office 16, VOLUME_KMSCLIENT channel Last 5 characters of installed product key: RJRJK <Product activation successful> --------------------------------------- Installed product key detected - attempting to activate the following product: SKU ID: d450596f-894d-49e0-966a-fd39ed4c4c64 LICENSE NAME: Office 16, Office16ProPlusVL_KMS_Client edition LICENSE DESCRIPTION: Office 16, VOLUME_KMSCLIENT channel Last 5 characters of installed product key: WFG99 <Product activation successful> --------------------------------------- --------------------------------------- ---Exiting-----------------------------
Kiểm tra lại trạng thái office:
C:\Program Files\Microsoft Office\Office16>cscript ospp.vbs /dstatus Microsoft (R) Windows Script Host Version 5.812 Copyright (C) Microsoft Corporation. All rights reserved. ---Processing-------------------------- --------------------------------------- PRODUCT ID: 00341-50000-00000-AA874 SKU ID: 6bf301c1-b94a-43e9-ba31-d494598c47fb LICENSE NAME: Office 16, Office16VisioProVL_KMS_Client edition LICENSE DESCRIPTION: Office 16, VOLUME_KMSCLIENT channel BETA EXPIRATION: 01-01-1601 LICENSE STATUS: ---LICENSED--- REMAINING GRACE: 179 days (259199 minute(s) before expiring) Last 5 characters of installed product key: RJRJK Activation Type Configuration: ALL DNS auto-discovery: KMS name not available KMS machine registry override defined: 192.168.200.136:1688 Activation Interval: 120 minutes Renewal Interval: 10080 minutes KMS host caching: Enabled --------------------------------------- PRODUCT ID: 00339-10000-00000-AA302 SKU ID: d450596f-894d-49e0-966a-fd39ed4c4c64 LICENSE NAME: Office 16, Office16ProPlusVL_KMS_Client edition LICENSE DESCRIPTION: Office 16, VOLUME_KMSCLIENT channel BETA EXPIRATION: 01-01-1601 LICENSE STATUS: ---LICENSED--- REMAINING GRACE: 179 days (259199 minute(s) before expiring) Last 5 characters of installed product key: WFG99 Activation Type Configuration: ALL DNS auto-discovery: KMS name not available KMS machine registry override defined: 192.168.200.136:1688 Activation Interval: 120 minutes Renewal Interval: 10080 minutes KMS host caching: Enabled --------------------------------------- --------------------------------------- ---Exiting-----------------------------
/dcmid: Display KMS client machine ID (CMID). /sethst:value: Set a KMS host name with user-provided host name. Value parameter applies. /setprt:value: Set a KMS port with user-provided port number. Value parameter applies. /remhst: Remove KMS host name (sets port to default). /cachst:value: Permit or deny KMS host caching. Value parameter applies (TRUE or FALSE).
Chúc các bạn thành công