本帖最后由 NormalPeople 于 2024-1-2 19:47 编辑
参考链接:[OpenWrt Wiki]、[Github lemoeo]
想要咨询问题或者需要帮助的可以加我的QQ:1165960061
Redmi AX6000固件版本:1.0.60
默认网关:192.168.31.1
一、软件准备
1. 所需设备:一台电脑;一台Redmi AX6000,电脑与路由器之间使用网线或者无线wifi连接。 2. 所需软件:Windows Terminal(Win10用户在Microsoft Store下载即可)或其他终端软件,比如,Termius,MobaXterm,等等。本文以Windows Terminal为例; 3. 所需固件:Redmi AX6000 1.0.60,Redmi AX6000 1.0.48(备用); 4. 开启本机的telnet功能:控制面板——卸载程序——启用或关闭Windows功能——勾选telnet功能——确定。
5. 初始密码计算:https://miwifi.dev/ssh 6. 本机内网IP地址:有很多方法能查到本机的内网IP地址,这里不再赘述,以下都假设设备地址为:192.168.31.10。 7. 路由器的stok:打开路由器的web端管理界面,输入管理员密码,从上方地址栏即可获得stok。 例如,管理界面地址为: - http://192.168.31.15/cgi-bin/luci/;stok=030b24d39b1a4a549aa12dac23c52313/web/home#router
复制代码 则stok=030b24d39b1a4a549aa12dac23c52313,也即stok为030b24d39b1a4a549aa12dac23c52313。 注:每次路由器重启,stok值都会改变。
二、固件降级
从web端的管理界面将Redmi AX6000的固件版本降级到1.0.60。
三、开启Redmi AX6000的开发者模式
1. 更改路由器的crash分区,使其进入到开发者模式 在浏览器地址栏输入: - http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3B%20zz%3D%24%28dd%20if%3D%2Fdev%2Fzero%20bs%3D1%20count%3D2%202%3E%2Fdev%2Fnull%29%20%3B%20printf%20%27%A5%5A%25c%25c%27%20%24zz%20%24zz%20%7C%20mtd%20write%20-%20crash%20%3B%20
复制代码 其中,将stok=token中的token替换成路由器的stok。 例如,我的stok为030b24d39b1a4a549aa12dac23c52313,则我应输入到浏览器地址栏的链接为: - http://192.168.31.1/cgi-bin/luci/;stok=030b24d39b1a4a549aa12dac23c52313/api/misystem/set_sys_time?timezone=%20%27%20%3B%20zz%3D%24%28dd%20if%3D%2Fdev%2Fzero%20bs%3D1%20count%3D2%202%3E%2Fdev%2Fnull%29%20%3B%20printf%20%27%A5%5A%25c%25c%27%20%24zz%20%24zz%20%7C%20mtd%20write%20-%20crash%20%3B%20
复制代码2. 特殊方法重启路由器 在浏览器地址栏输入: - http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20
复制代码 其中,将stok=token中的token替换成路由器的stok即可。
四、设置Redmi AX6000的Bdata参数
1. 设置参数telnet_en、 ssh_en、uart_en 在浏览器地址栏输入: - http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3B%20bdata%20set%20telnet_en%3D1%20%3B%20bdata%20set%20ssh_en%3D1%20%3B%20bdata%20set%20uart_en%3D1%20%3B%20bdata%20commit%20%3B%20
复制代码 其中,将stok=token中的token替换成路由器新的stok即可。 2. 特殊方法重启路由器 在浏览器地址栏输入: - http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20
复制代码 其中,将stok=token中的token替换成路由器新的stok即可。
五、通过telnet开启ssh
在Windows Terminal中输入指令: 输入后会直接进入【ARE U OK】的界面,表示telnet成功。
进入telnet后,输入指令开启ssh并修改密码为admin: - bdata set boot_wait=on
- bdata commit
- nvram set ssh_en=1
- nvram set telnet_en=1
- nvram set uart_en=1
- nvram set boot_wait=on
- nvram commit
- sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear
- /etc/init.d/dropbear restart
- echo -e 'admin\nadmin' | passwd root
复制代码
六、永久开启 ssh 新开一个Windows Terminal窗口,ssh连接进去: 注:此处是新开一个窗口,不要从telnet界面进行ssh连接。 输入密码admin,即可登入ssh。
目前从telnet开启的ssh,路由器重启会失效,因此添加一个开启自动运行的脚本,来实现自动开启 ssh。缺点就是恢复出厂设置或重新刷机后需要重新添加。 注:此处需要路由器联网才可以执行成功。 - mkdir /data/auto_ssh && cd /data/auto_ssh
- curl -O https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
- chmod +x auto_ssh.sh
- ./auto_ssh.sh install
复制代码
七、关闭Redmi AX6000的开发者模式 新开一个Windows Terminal窗口,ssh连接进去: 输入密码admin,即可登入ssh。
输入指令清除crash分区并重启:
八、修复时区异常 用上述方法开启ssh后,可能会导致路由器时区异常,在ssh中执行以下指令即可: - uci set system.@system[0].timezone='CST-8'
- uci set system.@system[0].webtimezone='CST-8'
- uci set system.@system[0].timezoneindex='2.84'
- uci commit
复制代码
九、注意事项 每次升级固件或重置固件后,都需要执行以下指令: - sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear
- /etc/init.d/dropbear restart
- echo -e 'admin\nadmin' | passwd root
复制代码
新开一个Windows Terminal窗口,ssh连接进去: 注:此处是新开一个窗口,不要从telnet界面进行ssh连接。 输入密码admin,即可登入ssh。
登入后输入以下指令: - mkdir /data/auto_ssh && cd /data/auto_ssh
- curl -O https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
- chmod +x auto_ssh.sh
- ./auto_ssh.sh install
复制代码
|