NAS

小米AX7000路由器解锁ssh并固化ssh

Jonty
2023-11-02 / 4 评论 / 544 阅读 / 正在检测是否收录...

前言

小米AX7000,带四个2.5G Wan/Lan口;
小米AX7000解锁ssh后,暂无openwrt固件可刷。
cezUkJeeHzmJA.jpg

姐妹篇:全网首发-小米AX6000路由器解锁ssh并固化ssh+2.5G有线mesh组网+公网访问路由后台+红米AX6/小米AX6/AX3600/AX6000/AX9000全系列适用

1.准备工作

1.小米AX7000;
2.一个大于32G的U盘(需要格式化为EXT4格式)

2.解锁SSH

视频教程:

可以参照B站视频

文字教程:

  1. 准备一个U盘,要求分区为EXT4格式且可用空间大于32GB。

推荐下载 DiskGenius 进行操作,如图。
2023-11-02_175728.png

  1. 存储功能→Docker→安装Docker。(路由器需要联网)
    进入路由器后台192.168.31.1安装docker
    2023-11-02_180008.png

点击管理Docker,默认用户名密码 admin ,登录。

2023-11-02_180155.png

  1. 点击存储管理,如果下面的列表为空,则创建一个卷。点击卷右侧的详情,挂载点应该为/mnt/usb- XXXXXXX/ mi_docker/lib/docker/volumes/………… 记住这个usb-XXXXXX ,例如usb-aabbccdd。
    2023-11-02_180309.png
  2. 点击镜像管理,点击拉取,拉取nginx:alpine-slim镜像。

2023-11-02_181007.png
2023-11-02_181048.png

  1. 点击新拉取的镜像的右侧绿色运行按钮,选择 简单模式 ,容器名称随意。目录挂载写/mnt/usb-XXXXXX/mi_docker/../../..:/real_root点击运行。(这里的XXXX要换成之前获取到的。)
    2023-11-02_181212.png

2023-11-02_181515.png

  1. 点击容器管理,选择刚才创建的容器,进入终端。
    2023-11-02_181613.png
  2. 输入以下指令:

    chroot /real_root
    sed -i '/flg_ssh=`nvram get ssh_en`/{:loop; N; /\n.*channel=`\/sbin\/uci get \/usr\/share\/xiaoqiang\/xiaoqiang_version.version.CHANNEL`\n.*return 0\n.*fi/!b loop; d}' /etc/init.d/dropbear
    /etc/init.d/dropbear start

    2023-11-02_181918.png

通过putty等工具连接路由器的ssh,进行后面的步骤
解锁SSH到这就大功告成了!

3.软固化SSH

1.获取路由器root密码

输入SN:

初始密码:

2.通过putty连接路由器的ssh后,执行以下指令:

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

3.路由器重启后,dropbear文件会恢复成未修改以前的样子,因此要添加一个自启脚本,路由器每次启动,都会自动执行脚本,修改dropbear文件,开启ssh。

4.硬固化SSH

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

zz=$(dd if=/dev/zero bs=1 count=2 2>/dev/null) ; printf '\xA5\x5A%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,固化完成。

5.提升Docker权限

连接ssh后,执行以下指令(执行后会自动重启)

sed -i "s/authorization_plugins .*/authorization_plugins ''/g" /etc/config/mi_docker
reboot

注意事项

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

使用putty通过telnet连接路由器,用户名为root,密码为初始密码,输入后即可登入路由器telnet后台。

通过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 0\n.*fi/!b loop; d}' /etc/init.d/dropbear
/etc/init.d/dropbear restart
echo -e 'admin\nadmin' | passwd root

通过ssh连接路由器,用户名为root,密码为admin,输入后即可登入路由器ssh后台,登入后再做一遍第三步软固化即可。


本文共 781 个字数,平均阅读时长 ≈ 2分钟
1

打赏

海报

正在生成.....

评论 (4)

取消
  1. 头像
    匿名 Lv.3
    中国上海市嘉定区 ·Windows 10 · Google Chrome
    沙发

    画图

    回复 删除 垃圾
  2. 头像
    123 Lv.1
    中国四川省 ·MacOS · Google Chrome
    板凳

    画图

    回复 删除 垃圾
  3. 头像
    jiyouzhan Lv.1
    中国江西省 ·Windows 7 · FireFox
    地毯

    这篇文章写得深入浅出,让我这个小白也看懂了!

    回复 删除 垃圾
  4. 头像
    spyyt Lv.1
    日本 ·Windows 10 · Google Chrome
    第4楼

    大佬,在离线安装那一步,输入:wq后为什么没有回到上一层,求助,谢谢

    回复 删除 垃圾