一、 R7000P刷DDWRT
a) 从https://www.myopenrouter.com/download上下载最新的DD-WRT固件。目前(20180812)最新的版本是DD-WRT Kong Mod for NETGEAR R7000P (2018-05-31)。
b) 直接从官方固件使用chk文件升级
c) 升级完成后,长按机器后面的reset的按钮,回复出厂设置
二、 安装entware
a) 使用putty登陆路由器,用户名是root,密码为路由器登陆密码。需要先用浏览器打开路由器管理界面,第一次打开会提示设置密码,设置为你想要的密码之后才能登陆telnet。
b) 在telnet终端上输入如下指令,开启jffs
nvram set jffs_mounted=1
nvram set enable_jffs2=1
nvram set sys_enable_jffs2=1
nvram set clean_jffs2=1
nvram set sys_clean_jffs2=1
nvram commit
reboot
c) 登陆路由器重启成功后,再次telnet到路由器,输入如下指令
cd /jffs/
mkdir opt
mount -o bind /jffs/opt /opt
wget -O - http://pkg.entware.net/binaries/armv7/installer/entware_install.sh | sh
d) 等待安装完成,终端输出如下即可
Info: Congratulations!
Info: If there are no errors above then Entware-ng was successfully initialized.
Info: Add /opt/bin & /opt/sbin to your PATH variable
Info: Add '/opt/etc/init.d/rc.unslung start' to startup script for Entware-ng services to start
Info: Found a Bug? Please report at https://github.com/Entware-ng/Entware-ng/issues
root@DD-WRT:/jffs# opkg update
e) 设置开机加载,下次开机自动加载opkg环境。在浏览器中打开路由器管理界面,点击进入Administrationcommands,在commands下输入:
export PATH=/opt/bin:/opt/sbin:${PATH}
mount -o bind /jffs/opt /opt
/opt/etc/init.d/rc.unslung start
点击下方“Save Startup”按钮即可
f) 重启路由器,待路由器启动完成后,telnet至路由器,输入opkg,如果显示opkg信息则安装成功,如失败请检查上述步骤。
注:初次加载jffs后,可以查看以下当前的文件夹下内容,如果有其他文件,可以全部删除,这些文件是netgear官方固件遗留的,以免带来其他问题。
三、 安装KMS
a) 从github上下载py-kms文件,将所有文件clone下来即可。原作者的网站是http://forums.mydigitallife.info/threads/50234-Emulated-KMS-Servers-on-non-Windows-platforms
b) 通过putty登陆路由器,安装python已经相关依赖包
opkg update
opkg install python pyopenssl libopenssl python-openssl python-sqlite3 libsqlite3
mkdir /jffs/kms
c) 将第一步下载下来的文件解压,解压后的所有文件上传到路由器/jffs/kms文件夹下
d) 在终端输入
/jffs/opt/bin/python /jffs/kms/server.py 0.0.0.0 1688
如无异常即可
e) 将kms启动加入启动脚本,同安装entware第e步,在启动脚本后添加
sleep 10s
/jffs/opt/bin/python /jffs/kms/server.py 0.0.0.0 1688 &
注:windows和office激活步骤
# 激活 Windows,比如路由器ip为192.168.1.1
cd C:\Windows\System32
slmgr /skms 192.168.1.1:1688
slmgr /ato
slmgr /xpr #检查激活状态
# 激活 Office,以 Office 2013 x64为例
cd C:\Program Files\Microsoft Office\Office15
# cscript ospp.vbs /setprt:1688 #之前如果服务端设置了自定义端口号,则需运行本行命令
cscript ospp.vbs /sethst:192.168.1.1
cscript ospp.vbs /act
cscript ospp.vbs /dstatus #检查激活状态
如果还要对外网开放 KMS Server,则需要在路由器的自定义防火墙里添加一条规则
iptables -A INPUT -p tcp --dport 1688 -j ACCEPT
重启路由器后,在外网的 Windows电脑上运行同样的激活命令,只是需要把 192.168.1.1 替换成路由器的公网ip或域名。
参考文档
https://wiki.dd-wrt.com/wiki/index.php/JFFS_File_System
http://blog.ltns.info/linux/emulated_kms_server_on_openwrt_router/
http://www.right.com.cn/forum/thread-160532-1-1.html
http://www.right.com.cn/forum/thread-177306-1-1.html