准备

  • 红米AX6000,固件本版1.0.67

    image-20240824140209297

  • SSH连接工具

  • 开启Telnet(windows默认未开启)

本记录适用于固件本版1.0.67,如果不是,就需要通过小米路由器官方修复工具进行降级,手动降级至1.0.67版固件。因为后续安装插件操作的前提是需要开启SSH,其他的固件版本不确定能否解锁SSH。

1、获取token

进入路由器后台界面,地址:http://192.168.31.1。登录后地址栏上 stok= 后面的部分就是token。将 token 复制下来,后面需要用到。

image-20240824135602932

http://192.168.31.1/cgi-bin/luci/;stok={token}/web/home#router

2、开启telnet

开启开发者模式

将下面的 {token} 替换后,粘贴到浏览器中访问,更改路由器的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

相当于执行zz=$(dd if=/dev/zero bs=1 count=2 2>/dev/null) ; printf '\xA5\x5A%c%c' $zz $zz | mtd write - crash ;,也就是将 \xA5\x5A\x00\x00 写入crash分区

浏览器返回 "code":0,表示成功:

image-20240824140627035

通过浏览器重启路由器

替换token后在浏览器上访问,路由器会重启,请等待重启完成:

http://192.168.31.1/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20

相当于执行 reboot

浏览器返回 {"code":0},表示执行成功。

设置Bdata永久开启telnet

待路由器重启完成后,重新登录进入路由器管理后台,获取新的token。

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

相当于执行 bdata set telnet_en=1 ; bdata set ssh_en=1 ; bdata set uart_en=1 ; bdata commit ;

  • bdata set telnet_en=1: 启用telnet服务。
  • bdata set ssh_en=1: 启用SSH服务。
  • bdata set uart_en=1: 启用UART服务。
  • bdata commit: 提交之前的设置更改。

再次重启路由器

上面设置完成({"code":0})后再次重启路由器:

http://192.168.31.1/cgi-bin/luci/;stok={token}/api/misystem/set_sys_time?timezone=%20%27%20%3b%20reboot%20%3b%20

3、开启路由器SSH

使用Telnet连接路由器

路由器重启完成后,windows系统中通过cmd窗口执行:telnet 192.168.31.1(端口默认23,无用户名密码),连接连接路由器。看到Are you ok的界面,就证明连接成功:

image-20240824141630154

连上telnet后依次运行下面命令。

永久开启并固化SSH

执行下面命令永久开启 SSH 端口:

echo -e 'admin\nadmin' | passwd root
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
mkdir /data/auto_ssh
cd /data/auto_ssh
curl -O https://fastly.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
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
mtd erase crash
reboot

以下是这段命令的解释,执行上面命令后不需要执行下面命令了。

  • 修改root密码,将root密码修改为admin

    echo -e 'admin\nadmin' | passwd root
    
  • 固化SSH

    nvram set ssh_en=1
    nvram set telnet_en=1
    nvram set uart_en=1
    nvram set boot_wait=on
    nvram commit
    
    • ssh_en=1 启用 SSH;telnet_en=1 启用 Telnet
    • uart_en=1 启用串口通信
    • boot_wait=on 用于在路由器启动时提供一个时间窗口,允许用户通过特定方式(如串口连接或网络)中断正常的启动流程

    固化SSH之后,以后升级路由器固件SSH也会保留不会被恢复。

  • 永久开启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
    
    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
    
  • 修改时区设置

    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
    
  • 关闭开发/调试模式

    mtd erase crash
    
  • 重启路由器

    reboot
    

4、SSH连接设备

  • 主机名:192.168.31.1
  • 端口:22(默认)
  • 用户名:root
  • 密码:admin

需要电脑连上Redmi AX6000的WIFI

image-20240824142543791

5、安装ShellClash面板

通过SSH进入路由器后,依次执行下面命令。

在SSH工具中使用 Backspace 退格键可能会失效,出现 ^H 的情况。这个时候可以试下 Shift + BackspaceCtrl + Backspace进行删除。

安装clash

这一步需要路由器已连上网络。

sh -c "$(curl -kfsSl https://cdn.jsdelivr.net/gh/juewuy/ShellClash@master/install.sh)" && source /etc/profile &> /dev/nul

备用安装源:

  • export url='https://raw.fastgit.org/juewuy/ShellClash/master' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null
  • export url='https://raw.githubusercontent.com/juewuy/ShellClash/master' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null
  • export url='https://fastly.jsdelivr.net/gh/juewuy/ShellClash@master' && sh -c "$(curl -kfsSl $url/install.sh)" && source /etc/profile &> /dev/null

下面是安装过程:

root@XiaoQiang:~# sh -c "$(curl -kfsSl https://cdn.jsdelivr.net/gh/juewuy/ShellClash@master/install.sh)" && source 
/etc/profile &> /dev/nul
***********************************************
**                 欢迎使用                  **
**                ShellCrash                 **
**                             by  Juewuy    **
***********************************************
-----------------------------------------------
请选择想要安装的版本:
 1 公测版(推荐)
 2 稳定版
 3 开发版
-----------------------------------------------
请输入相应数字 > 1
最新版本:1.9.1beta13
-----------------------------------------------
如遇问题请加TG群反馈: t.me/ShellClash 
支持各种基于openwrt的路由器设备
支持Debian、Centos等标准Linux系统
-----------------------------------------------
注意:安装ShellCrash至少需要预留约1MB的磁盘空间
检测到当前设备为小米官方系统,请选择安装位置
 1 安装到 /data 目录(推荐,支持软固化功能)
 2 安装到 /userdisk 目录(推荐,支持软固化功能)
 3 安装到自定义目录(不推荐,不明勿用!)
 0 退出安装
-----------------------------------------------
请输入相应数字 > 1
目标目录/data空间剩余:38.1M
确认安装?(1/0) > 1
-----------------------------------------------
开始从服务器获取安装文件!
-----------------------------------------------
############################################################################################################ 100.0%
-----------------------------------------------
开始解压文件!
-----------------------------------------------
ShellCrash 已经安装成功!
-----------------------------------------------
输入 crash 命令即可管理!!!
-----------------------------------------------
root@XiaoQiang:~# crash

安装完成。

配置ShellClash

输入 clashclash 命令执行面板管理程序。

root@XiaoQiang:~# crash
-----------------------------------------------
欢迎使用ShellCrash!        版本:1.9.1beta13
Clash服务没有运行(纯净模式),未设置开机启动!
TG频道:https://t.me/ShellClash
-----------------------------------------------
-----------------------------------------------
 欢迎使用ShellCrash新手引导! 
-----------------------------------------------
请先选择你的使用环境: 
(你之后依然可以在设置中更改各种配置)
-----------------------------------------------
 1 路由设备配置局域网透明代理
 2 Linux设备仅配置本机代理
-----------------------------------------------
请输入对应数字 > 1

选项 1 全局代理:

选项 2 本机代理:

-----------------------------------------------
启用推荐的自动任务配置?这包括:
-----------------------------------------------
每隔10分钟自动保存面板配置
服务启动后自动同步ntp时间
在每周3的3点整更新订阅并重启服务
-----------------------------------------------
是否启用?(1/0) > 1
任务【运行时每10分钟自动保存面板配置】添加成功!
任务【服务启动后自动同步ntp时间】添加成功!
任务【在每周3的3点整更新订阅并重启服务】添加成功!
-----------------------------------------------
检测到为小米路由设备,启用软固化可防止路由升级后丢失SSH
是否启用软固化功能?(1/0) > 0                
-----------------------------------------------
是否导入配置文件?(这是运行前的最后一步)
你必须拥有一份配置文件才能运行服务!
-----------------------------------------------
现在开始导入?(1/0) > 1
-----------------------------------------------
 ShellCrash配置文件管理
-----------------------------------------------
 1 在线生成配置文件
 2 在线获取完配置文件
 3 本地生成providers配置文件
 4 本地上传完整配置文件
 5 设置自动更新
 6 自定义配置文件
 7 更新配置文件
 8 还原配置文件
-----------------------------------------------
请输入对应数字 > 2
-----------------------------------------------
此功能可能会导致一些bug!!!
强烈建议你使用在线生成配置文件功能!
继续后如出现任何问题,请务必自行解决,一切提问恕不受理!
-----------------------------------------------
我确认遇到问题可以自行解决[1/0] > 1
-----------------------------------------------
仅限导入完整的配置文件链接!!!
-----------------------------------------------
有流媒体需求,请使用6-1在线生成配置文件功能!!!
如不了解机制,请使用6-1在线生成配置文件功能!!!
如遇任何问题,请使用6-1在线生成配置文件功能!!!
此功能可能会导致部分节点无法连接或者规则覆盖不完整!!!
-----------------------------------------------
0 返回上级菜单
-----------------------------------------------
请输入完整链接 > https://xxxvpn.xx/****************/config.yaml

输入完整链接时,右键粘贴服务商提供的配置文件链接并按回车执行命令

-----------------------------------------------
链接地址为:https://xxxvpn.xx/****************/config.yaml
可以手动复制该链接到浏览器打开并查看数据是否正常!
############################################### 100.0%
已成功获取配置文件!
-----------------------------------------------
很好!现在只需要执行启动就可以愉快的使用了!
-----------------------------------------------
立即启动服务?(1/0) > 1
-----------------------------------------------
未找到【clash】核心,正在下载!
############################################### 100.0%
服务已启动!
请使用 http://192.168.31.1:9999/ui 管理内置规则
-----------------------------------------------
欢迎使用ShellCrash!        版本:1.9.1beta13
Clash服务正在运行(Redir模式),已设置开机启动!
当前内存占用:21224 kB,已运行:00小时00分00秒
TG频道:https://t.me/ShellClash
-----------------------------------------------
 1 启动/重启服务
 2 内核功能设置
 3 停止内核服务
 4 内核启动设置
 5 配置自动任务
 6 导入配置文件
 7 内核进阶设置
 8 其他工具
 9 更新/卸载
-----------------------------------------------
 0 退出脚本
请输入对应数字 > 9  
-----------------------------------------------
欢迎使用更新功能:
-----------------------------------------------
当前目录(/data/ShellCrash)剩余空间:34.5M
-----------------------------------------------
 1 更新管理脚本    1.9.1beta13 > 1.9.1beta13 
 2 切换内核文件    v1.7.1 > v1.7.1
 3 更新数据库文件    > 20240629
 4 安装本地Dashboard面板
 5 安装/更新本地根证书文件
 6 查看PAC自动代理配置
-----------------------------------------------
 7 切换安装源及安装版本
 8 配置自动更新
 9 卸载ShellCrash
-----------------------------------------------
99 鸣谢!
-----------------------------------------------
 0 返回上级菜单
-----------------------------------------------
请输入对应数字 > 4
-----------------------------------------------
安装本地版dashboard管理面板
打开管理面板的速度更快且更稳定
-----------------------------------------------
请选择面板安装类型:
-----------------------------------------------
 1 安装Yacd面板(约1.1mb)
 2 安装Yacd-Meta魔改面板(约1.5mb)
 3 安装MetaXD面板(约1.5mb)
 4 安装基础面板(约500kb)
 5 安装Meta基础面板(约800kb)
 9 卸载本地面板
 0 返回上级菜单
请输入对应数字 > 1
-----------------------------------------------
请选择面板安装目录:
-----------------------------------------------
 1 在/data/ShellCrash/ui目录安装
 2 在/www/clash目录安装
-----------------------------------------------
 0 返回上级菜单
请输入对应数字 > 1
-----------------------------------------------
正在连接服务器获取安装文件…………
############################################### 100.0%
下载成功,正在解压文件!
-----------------------------------------------
面板安装成功!

参考


YOLO