眾所周知,KMS激活方式是當前廣大網民“試用”windows,office的最廣泛的激活方式。幾乎可以用於微軟的全線產品。
但是在本機使用KMS類的激活工具總是有些不放心,一方面每隔180天都要重新激活,另外是這些工具來源不一,經常被殺軟查殺,這些激活工具到底有沒有安全問題?只能全靠信仰了。
因此,當前最能體現技術宅們不折騰不死心的做法就是在非本機環境下搭建kms激活模擬器,對局域網內機器進行遠程激活。
KMS激活服務器搭建
目前常用的KMS激活服務器程序為py-kms與vlmcsd,分別為python和C語言版本。可運行於各大freebsd/linux/openwrt/windows...環境中。
vlmcsd發布地址:
http://forums.mydigitallife.info/threads/50234-Emulated-KMS-Servers-on-non-Windows-platforms
py-kms發布地址:
https://github.com/myanaloglife/py-kms
Update:推薦使用這個版本的py-kms,可以激活最新的windows10以及office2016
https://github.com/dzacharo/py-kms
個人更喜歡py-kms一些,依賴少,跨平台,不用編譯。可以對windows全系列(7/8/8.1/10),office全系列(~2016)進行激活。
我在局域網內cubietruck(一個類似樹莓派的ARM主機)中安裝py-kms的流程如下:
1.安裝依賴
sudo apt-get install python-argparse
2.下載代碼
git clone https://github.com/myanaloglife/py-kms
3.運行激活服務器
cd /py-kms
python server.py
這時候看到提示消息
TCP server listening at 0.0.0.0 on port 1688.
就是說KMS服務已經在1688端口上打開了,沒有錯誤。這就搭建完畢了。
4.使用supervisor管理py-kms服務(非必須步驟)
為了讓py-kms長期24小時運行於我的cubieboard中,我寫了個supervisor腳本 pykms.conf 如下:
[program:pykms] command=python /root/py-kms/server.py autorestart=true user=root
重啟下supervisor,看到pykms正常運行,收工。
5.手動激活office 2013
參考:http://learner7.blog.51cto.com/1340889/1597515
我的office 是32位的2013版本,所以首先打開有管理員權限的命令行工具,進入程序安裝目錄:
CD "%ProgramFiles(x86)%\MICROSOFT OFFICE\OFFICE15"
運行激活命令:
CSCRIPT OSPP.VBS /SETHST:192.168.0.xxx CSCRIPT OSPP.VBS /ACT CSCRIPT OSPP.VBS /DSTATUS
以上三行的大意是:1.設置激活服務器地址為192.168.0.xxx,即你的內網kms服務器地址;2.激活;3.查看激活狀態。
完事,收工。
參考:
http://wrlog.com/activate-kms-vlmcsd.html
http://stdioa.github.io/2015/09/02/%E6%90%AD%E5%BB%BA%E7%A7%81%E6%9C%89KMS%E6%9C%8D%E5%8A%A1%E5%99%A8/
http://learner7.blog.51cto.com/1340889/1597515
http://forums.mydigitallife.info/threads/50234-Emulated-KMS-Servers-on-non-Windows-platforms
設置openwrt-dnsmasq使局域網用戶自動發現kms激活服務器
py-kms與vlmcsd的適用性真的非常之廣,不管你在windows,linux下甚至安卓下都可以搭建私有的kms服務。但是最后都會遇到的問題是需要在被激活主機上運行批處理命令,不免有些繁瑣。
曾聞中國某高等學府批量購買企業windows許可,你的電腦只要連入校園網,不需要任何配置就可以激活系統,不免神往。查資料發現,這是通過配置DNS服務器的SRV項實現局域網內主機自動發現kms激活服務器的。
剛好我的路由器跑着openwrt系統,可以配置dnsmasq提供SRV功能,於是ssh進入路由器后台,在/etc/dnsmasq.conf中添加配置:
srv-host=_vlmcs._tcp.lan,cubietruck.lan,1688,0,100
其中 _vlmcs._tcp 為服務名;lan 為我的內網域名;cubietruck.lan為我的cubieboard在內網的地址;1688為kms激活服務默認端口號;0為優先級;100為權重。
然后在路由器中重啟dnsmasq服務
/etc/init.d/dnsmasq restart
切換至windows驗證dns配置是否正確,打開命令提示符,運行命令:
nslookup -type=srv _vlmcs._tcp.lan
其中 _vlmcs._tcp 表示kms服務類型,lan為我的局域網域名稱。
看到返回信息:
_vlmcs._tcp.lan SRV service location: priority = 0 weight = 100 port = 1688 svr hostname = cubietruck.lan cubietruck.lan internet address = 192.168.1.126
說明dns配置正確。
這時候看看我自己電腦上的office能不能成功發現kms服務器,還是在管理員權限下運行命令:
CD "%ProgramFiles(x86)%\MICROSOFT OFFICE\OFFICE15" CSCRIPT OSPP.VBS /remhst CSCRIPT OSPP.VBS /act CSCRIPT OSPP.VBS /dstatus
其中第一行表示清除之前設置的kms激活服務器地址,第二行手動激活,第三行顯示激活狀態。最終看到信息
REMAINING GRACE: 180 days (259200 minute(s) before expiring Last 5 characters of installed product key: XTGCT Activation Type Configuration: ALL KMS machine name from DNS: cubietruck.lan:1688 Activation Interval: 120 minutes Renewal Interval: 10080 minutes KMS host caching: Enabled --------------------------------------- --------------------------------------- ---Exiting-----------------------------
其中
KMS machine name from DNS: cubietruck.lan:1688
表示能夠根據DNS自動發現局域網內的kms激活服務器為cubietruck.lan。
說明office可以完全免配置自動激活。
以后任何電腦只要連接入我的局域網,即可對其VOL版本的office以及windows進行自動激活工作。cool~
參考:
http://blog.14401.cn/post-166.html
http://www.cnblogs.com/zhuangxuqiang/archive/2009/04/28/1445113.html
https://support.microsoft.com/en-us/kb/816587
補充下windows的手動激活命令
slmgr -upk slmgr -ipk (windows的VOLkey,windows10VOL = W269N-WFGWX-YVC9B-4J6C9-T83GX ) slmgr -skms (KMS服務器IP,如果配好了DNS,這個也不用輸吧) slmgr -ato slmgr -xpr