前言
在我们使用路由器,会有把想要的路由器修改为openwrt后使用,今天这里分享了一下小米mini,但是总体小米路由器基本都是一样的操作,先进行回退某个可以支持ssh的版本,再使用注入命令,最后烧录breed和openwrt,而像tpink有些直接就可以烧录breed。
作者:良知犹存
转载授权以及围观:欢迎关注微信公众号:羽林君
或者添加作者个人微信:become_me
小米mini路由器
小米路由器 mini是小米公司于2014年4月23日发布的路由器,mini搭载MT7620A处理器,配备USB 2.0接口,可以接上移动硬盘。
刷入openwrt
替换路由器版本到可以ssh版本
首先路由器默认是没有ssh权限的,第一件是我们要把我们的路由器版本通过手动升级升级到特定版本,路由器固件集合网站:https://mirom.ezbox.idv.tw/en/miwifi/R1CM/roms-developer/ ,大家可以这里下载。
升级的版本是:小米WiFi路由器 2.7.11固件 : miwifi_r1cm_firmware_b9d56_2.7.11.bin
获得ssh 烧录breed
升级之后进行,在对应版本就可以获得ssh权限,我们可以用使用系统格式为FAT或FAT32的U盘,把刚才ssh固件替换修改名字进去获取ssh权限
下面来自其他记录,可以使用u盘工具:
此外还可以网页进行操作获得ssh权限:
和小米其他路由器操作方式类似,例如ac2100的ssh方式,也是类似的操作
下面看一下mini的操作方式:
- 1.打开浏览器,在地址栏中输入小米mini的 IP 地址,回车,输入你设置的管理密码,登录进去。此时地址栏中的网址会变成这种形式:
http://192.168.31.1/cgi-bin/luci/;stok=《你的stok》/web/home#router
- 2.将地址栏中的网址替换为下面,然后回车:
http://192.168.31.1/cgi-bin/luci/;stok=《你的stok》/api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3Bnvram%20set%20ssh%5Fen%3D1%3B%20nvram%20commit
看到网页中出现“{“msg”:“未能连接到指定WiFi(Probe timeout)”“code”:1616}”的字样,表示该命令执行成功。
- 3.继续将网址替换成下面,然后回车:’
http://192.168.31.1/cgi-bin/luci/;stok=《你的stok》/api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3Bsed%20%2Di%20%22%3Ax%3AN%3As%2Fif%20%5C%5B%2E%2A%5C%3B%20then%5Cn%2E%2Areturn%200%5Cn%2E%2Afi%2F%23tb%2F%3Bb%20x%22%20%2Fetc%2Finit.d%2Fdropbear
你会看到标签页上有一个小圆圈在转,后面显示“正在等待” 字样,表示命令正在发送,请等待!
过一会儿,标签页的转动的圆圈会变成网页图标,文字会变成路由器的 IP 地址。
网页中出现“{“msg”:“未能连接到指定WiFi(Probe timeout)”“code”:1616}”的字样,表示该命令执行成功。
- 4.继续将网址替换成下面,然后回车:
http://192.168.31.1/cgi-bin/luci/;stok=《你的stok》/api/xqnetwork/set_wifi_ap?ssid=tianbao&encryption=NONE&enctype=NONE&channel=1%3B%2Fetc%2Finit.d%2Fdropbear%20start
判断命令执行成功的方式同第2、3步相同。
- 5.继续将网址替换成下面,然后回车:
http://192.168.31.1/cgi-bin/luci/;stok=《你的stok》/api/xqsystem/set_name_password?oldPwd=《你当前的后台管理密码》&newPwd=《新密码》
网页中出现“{“code”:0}”的字样,表示修改密码成功!
然后就可以使用ssh登陆。root-《新密码》
这个时候我们可以看到,ssh成功登录
此时,我们可以进去查看空间分配情况
我们需要动的空间是Bootloader和OS1,用来刷boot和openwrt,Bootloader很明显,OS1的区域需要自己验证出来,我们先烧录一个Breed不死固件,我们就可以随意烧录了。
开始刷Breed不死固件,此处https://breed.hackpascal.net/下载:
进行安装
拷贝安装:
scp breed-mt7620-xiaomi-mini.bin root@192.168.31.1:/tmp
mtd -r write breed-mt7620-xiaomi-mini.bin Bootloader
Breed烧录结束我们开始进行烧录openwrt
烧录openwrt
进入Breed界面烧录:
- (1)断开小米路由器的电源,用牙签等尖锐物按下路由器 reset 按钮后重新接入电源;
- (2)等到 mini 路由器的灯开始闪烁或 ping 通时即表明进入 Web 刷机模式,松开 reset 键。
这时在电脑上输入 192.168.1.1,就进入不死 Breed 的控制台了。
进入bootloader模式
下载对应的openwrt固件,https://downloads.openwrt.org/releases/22.03.4/targets/ramips/mt7620/
进入固件更新:
直接用ssh拷贝到路由器进行手动命令mtd进行openwrt烧录
因为我们替换的路由器固件有ssh权限,我们直接把下载好的openwrt固件拷贝到路由器进行mtd烧录,执行如下命令:
scp openwrt-22.03.4-ramips-mt7620-xiaomi_miwifi-mini-squashfs-sysupgrade.bin root@192.168.31.1:/tmp
mtd -r write openwrt-22.03.4-ramips-mt7620-xiaomi_miwifi-mini-squashfs-sysupgrade.bin OS1
重启即可看到openwrt正常运行。
手动命令的部分,我们再补充一些信息:
此处手动命令等烧录成openwrt后我们重新看一下分区:
openwrt的分区和原本固件对比,固件分区发生了变化,这个时候breed烧录命令就得还区域了,mtd -r write /tmp/breed-mt7620-xiaomi-mini.bin u-boot
,这个时候openwrt的sysupgrade.bin烧录区域也得对应着修改 mtd -r write openwrt-22.03.4-ramips-mt7620-xiaomi_miwifi-mini-squashfs-sysupgrade.bin firmware
结语
这就是我自己在openwrt操作的小记录。如果大家有更好的想法,也欢迎大家加我好友交流分享哈。
作者:良知犹存,白天努力工作,晚上原创公号号主。公众号内容除了技术还有些人生感悟,一个认真输出内容的职场老司机,也是一个技术之外丰富生活的人,摄影、音乐 and 篮球。关注我,与我一起同行。
‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧
推荐阅读
【1】jetson nano开发使用的基础详细分享
【2】Linux开发coredump文件分析实战分享
【3】CPU中的程序是怎么运行起来的 必读
【4】cartographer环境建立以及建图测试
【5】设计模式之简单工厂模式、工厂模式、抽象工厂模式的对比
本公众号全部原创干货已整理成一个目录,回复[ 资源 ]即可获得。