小白在之前升级千兆以上宽带须知文章中曾提到,更换了运营商赠送的中兴 G7615V2 光猫。不过相比之前的光猫,无线网络偶尔会出现断流(刷短视频或者发送消息,有时还会卡顿一下),不清楚是不是个案。
正好家里的智能设备基本上都是小米的,索性就买了小米路由器 BE6500 Pro,到手后惯例将 SSH 解锁。
刷机
开始之前需要先刷入稳定版固件,这里推荐的固件为 v1.0.46 版本。如果路由器的固件低于这个版本,可直接在路由器管理页面中上传固件,手动升级。
而若是高于此版本,则需要使用官方的小米路由器修复工具完成降级。
按照软件提示进行刷机,不过软件最后提示路由器蓝灯闪烁,表示刷机成功,是与事实不符的。BE6500 Pro 白灯闪烁才是刷好了,断电重启路由器。
重启后,进入路由器管理页面(打不开的话多试几次,实在不行的话参考“降级后无法连接以太网”部分)。然后重新配置路由,注意不要勾选自动升级固件版本。
配置好以后可以看到版本号为 1.0.46,此时注意不要升级,完成 SSH 固化后再更新固件。
开启 SSH
打开登录管理页面,可以看到网址中 “stok=”后边的值,用其替换下面代码中的“210201.xyz”部分,然后使用命令行执行。
Windows 用户可使用“命令提示符”,macOS 用户可使用"终端 ",复制粘贴下方代码开启小米路由器 BE6500 Pro 的 SSH 功能。
一定要替换 stok 码,另外我们可能注意到,每次登录路由器后台的 stok 码是会改变的。
curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=210201.xyz/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20set%20ssh_en%3D1%0A" curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=210201.xyz/api/misystem/arn_switch -d "open=1&model=1&level=%0Anvram%20commit%0A" curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=210201.xyz/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" curl -X POST http://192.168.31.1/cgi-bin/luci/;stok=210201.xyz/api/misystem/arn_switch -d "open=1&model=1&level=%0A%2Fetc%2Finit.d%2Fdropbear%20start%0A"
返回 {"code":0} 说明开启成功。
通过 SSH 登录
登录工具的话,Windows 推荐使用 PuTTY,macOS 可以使用 Termius,使用 PuTTY 的话,同样可参考我们之前提供的教程。
小白使用的软件为 PuTTY,主机名称(或 IP 地址)就是192.168.31.1
,登录用户名默认为root
,密码可通过 https://miwifi.dev/ssh 网站来计算。
复制密码后,右键粘贴(粘贴后无提示),直接回车,出现“Are U OK”表示登录成功。
更改 SSH 登录密码,执行以下指令,修改之后用户名是:root
密码为:admin
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 'adminnadmin' | passwd root
固化 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
PS. 其中的https://cdn.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
可替换成https://fastly.jsdelivr.net/gh/lemoeo/AX6S@main/auto_ssh.sh
或者其他可连接镜像地址。
固化命令
zz=$(dd if=/dev/zero bs=1 count=2 2>/dev/null) ; printf 'xA5x5A%c%c' $zz $zz | mtd write - crash reboot
执行指令后路由器会重启,重启后用新密码重新连接 SSH,执行以下命令
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,再执行以下代码
mtd erase crash reboot
重启完成,就固化成功了。
升级固件
固化后,就可以放心大胆地升级固件了。固件升级完之后,如果 SSH 无法登录,请在工具选择 Telnet 登录,用户名为:root
密码为:admin
。如果路由器恢复了出厂设置,密码需要通过网站重新计算。
通过 Telnet 登录,开启 SSH,并修改 root 密码为 admin
sed -i '/flg_ssh=`nvram get ssh_en`/{:loop; N; /n.*channel=`/sbin/uci get /usr/share/xiaoqiang/xiaoqiang_version.version.CHANNEL`n.*return 0n.*fi/!b loop; d}' /etc/init.d/dropbear /etc/init.d/dropbear restart echo -e 'adminnadmin' | passwd root
重启后自动开启 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 uci set firewall.auto_ssh=include uci set firewall.auto_ssh.type='script' uci set firewall.auto_ssh.path='/data/auto_ssh/auto_ssh.sh' uci set firewall.auto_ssh.enabled='1' uci commit firewall
综上,其实操作并没有什么难度,只是步骤较多而已,按照介绍逐步进行即可。
资源下载
https://pan.quark.cn/s/b155941ddaec
https://drive.uc.cn/s/148a7aa21fb74
https://www.123pan.com/s/hieA-T0sxH
https://url26.ctfile.com/d/948726-67534243-fdf846?p=210201(访问密码:210201)
评论0