小米AX3000T刷机

步骤 1: 获取 Stok 变量

  1. 打开 Chrome 浏览器。
  2. 登录到路由器的管理页面,通常地址为 http://192.168.31.1/
  3. 在浏览器的地址栏中查找 Stok 变量的值,此值将用于后续的 SSH 解锁命令。

例如:

text
http://192.168.31.1/cgi-bin/luci/;stok=030b24d39b1a4a549aa12dac23c52313/web/home#router

Stok=030b24d39b1a4a549aa12dac23c52313

注:每次路由器重启,stok 值都会改变。

步骤 2: 解锁 SSH

  1. 打开命令提示符(cmd),依次输入以下命令,注意将 token 替换为第一步中获得的实际 Stok 值:
sh
curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20set%20ssh_en%3D1%0A"
sh
curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20commit%0A"
sh
curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/arn_switch -d "open=1&model=1&level=%0Ased%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%22debug%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%0A"
sh
curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=token/api/misystem/arn_switch -d "open=1&model=1&level=%0A%2Fetc%2Finit.d%2Fdropbear%20start%0A"

步骤3: 获取SSH密码

  1. 访问 https://miwifi.dev/ssh
  2. 输入你的路由器序列号(SN)。序列号可在路由器背部找到,或者通过路由器的管理界面查看。
  3. 系统将显示SSH密码。

步骤4: 软固化SSH

通过MobaXterm连接路由器的ssh后,执行以下指令(执行后会自动把ssh密码改成admin):

sh
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

路由器重启后,dropbear文件会恢复成未修改以前的样子,因此要添加一个自启脚本,路由器每次启动,都会自动执行脚本,修改dropbear文件,开启ssh。 此步骤有两种方法,一种是在线获取脚本,一种离线手动创建脚本,二选一即可。

在线方法

sh
mkdir /data/auto_ssh && cd /data/auto_ssh
curl -O [文件下载链接]
chmod +x auto_ssh.sh
./auto_ssh.sh install

离线方法

sh
mkdir /data/auto_ssh && cd /data/auto_ssh
vi auto_ssh.sh

此时进入了vi编辑器,首先将下面脚本内容复制到剪切板:

复制好后,回到vi编辑界面,按下 i 进入编辑模式,然后按下 CTRL+SHIFT+V 粘贴完成后,按一下 ESC,再输入 :wq,回车即可。注意是英文的:

确认没有问题后,执行下面的指令:

sh
chmod +x auto_ssh.sh
./auto_ssh.sh install

步骤5: 硬固化SSH

通过MobaXterm连接路由器的ssh后,执行以下指令(执行后会自动重启):

sh
zz=$(dd if=/dev/zero bs=1 count=2 2>/dev/null) ; printf '\xA5\x5A%c%c' $zz $zz | mtd write - crash
reboot

等待路由器重启后,重新连接ssh,并执行以下指令(执行后会自动重启):

sh
nvram set ssh_en=1
nvram set telnet_en=1
nvram set uart_en=1
nvram set boot_wait=on
nvram commit
bdata set ssh_en=1
bdata set telnet_en=1
bdata set uart_en=1
bdata set boot_wait=on
bdata commit
reboot

等待路由器重启后,重新连接ssh,并执行以下指令(执行后会自动重启):

sh
mtd erase crash
reboot

等待路由器重启后,重新连接ssh,固化完成。

注意事项

每次升级固件或重置固件后,都需要先telnet,再在telnet中开启ssh。

具体方法为:

  1. 使用MobaXterm通过telnet连接路由器,用户名为 root,密码为初始密码,输入后即可登入路由器telnet后台。
  2. 通过telnet开启ssh,并修改root密码为admin:
sh
sed -i '/flg_ssh=`nvram get ssh_en`/{:loop; N; /\n.*channel=`\/sbin\/uci get \/usr\/share\/xiao ** \/xiao ** _version.version.CHANNEL`\n.*return 0\n.*fi/!b loop; d}' /etc/init.d/dropbear
/etc/init.d/dropbear restart
echo -e 'admin\nadmin' | passwd root
  1. 使用MobaXterm通过ssh连接路由器,用户名为 root,密码为 admin,输入后即可登入路由器ssh后台,登入后再做一遍步骤4软固化即可。
  2. 自定义密码:
sh
echo -e '你的密码\n你的密码' | passwd root
器,用户名为
2. 通过 telnet 开启 ssh,并修改 root 密码为 admin:

```sh
sed -i '/flg_ssh=`nvram get ssh_en`/{:loop; N; /\n.*channel=`\/sbin\/uci get \/usr\/share\/xiao ** \/xiao ** _version.version.CHANNEL`\n.*return 0\n.*fi/!b loop; d}' /etc/init.d/dropbear
/etc/init.d/dropbear restart
echo -e 'admin\nadmin' | passwd root
  1. 使用 MobaXterm 通过 ssh 连接路由器,用户名为 root,密码为 admin,输入后即可登入路由器 ssh 后台,登入后再做一遍步骤 4 软固化即可。
  2. 自定义密码:
sh
echo -e '你的密码\n你的密码' | passwd root
脚本收集
Meting-API Docker 部署指南

评论区

评论加载中...