小米路由器 4A 刷入lean 的 openwrt/lede
(博主已更换小米路由器 Pro,也就是 R3P)
本教程同时适用于 小米路由器 4A 以及其千兆版
Attention: 本教程莽夫(博主我)专用,因为没刷不死breed,直接刚,建议其他使用者还是安排一下breed
缘由
作为一只攻城狮,开发的时候经常要下一堆lib,然而很多依赖都在国外,虽然也有国内的源,但是也常用例外情况,因此下载依赖时比较慢;(所以,懂我意思吧)
然后我并不想在挂客户端,并且要局域网都能用,因此就产生了这个想法
路由器固件切换
1.无法切换固件?
咳咳...我特地查询了下,我的路由器是 “小米路由器4A(R4AC)” 并不支持切换固件,而且也没用 USB 插槽,于是我产生了拆开直接刷的冲动;实际上也拆了,但是发现不大好操作。
2.那是不可能的!
经过我仔细地搜索伟大的互联网,发现了一位 github 的大佬给出了解决方案(非常感谢这位大佬)
该解决方案是通过小米路由器登录后产生的 stock 值来进入路由器进行操作
3.打通路由器命令行通道
具体的操作请前往 https://github.com/acecilia/OpenWRTInvasion 查看
需要注意的是,使用该工具请在先在操作的设备上准备好 Python3 环境、telnet 以及 git ,
Windows 10 系统的话,可以直接打开 WSL(ubuntu 18.04 以上) 操作,如下
# 克隆仓库
git clone https://github.com/acecilia/OpenWRTInvasion.git
# 进入目录
cd OpenWRTInvasion
# 安装依赖
pip3 install -r requirements.txt
然后再执行
python3 remote_command_execution_vulnerability.py
根据提示,输入路由器 IP 地址(小米路由器默认一般是 192.168.31.1
)和登录后产生的 stock 值
4.链接到路由器命令行
上述操作完成后,可尝试执行如下指令
telnet 路由器 IP 地址
如果连接被拒绝,可多尝试几次,或者重启路由器并重复第3步
5.固件切换
进入到路由器命令行通道以后,执行如下
# 进入到临时目录
cd /tmp
# 下载固件
curl https://raw.githubusercontent.com/yeliulee/openwrt-ramips-mt76x8-xiaomi_mir4a/main/mt76x8/openwrt-ramips-mt76x8-xiaomi_mir4a-100m-squashfs-sysupgrade.bin --output firmware.bin
# 校验固件完整性 (具体看下面仓库)
./busybox sha256sum firmware.bin
# 如校验和一致,则刷入硬件
mtd -e OS1 -r write firmware.bin OS1
刷写过程中请勿触碰路由器或断电,以免变砖,刷写完成以后会重启
等待重启以后即可进入 web 管理界面,路由器默认信息如下
192.168.1.1 # 路由器地址
root # 用户名
password # 密码(与 ssh 密码相同,自行更改)
进入 WEB 管理界面以后
我编译固件的时候,选择的 luci 的 material 主题(官方默认主题比较辣眼),有其他需求的可自行编译固件
固件仓库
lean 的 openwrt/lede 项目仓库 (感谢大佬)
仓库地址 https://github.com/coolsnowwolf/lede (可自行根据该源码为其他硬件定制并自行编译固件)
本文中的主角,为 小米路由器 4A (R4AC) 刷入 lean 的 openwrt/lede ,仓库中仅包含编译结果(已内置必需组件);
仓库地址 https://github.com/yeliulee/openwrt-ramips-mt76x8-xiaomi_mir4a
本固件同时适用于 小米路由器 4A 以及其千兆版
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。
breed下不知道为啥只能刷进去initramfs-kernel,刷squashfs-sysupgrade会无限重启。。各个版本包括官方的squashfs-sysupgrade刷进去都会无限重启。。大佬能分享个编程器固件吗。。
emmm,我是自己编译的 🤣 ,而且,我没有刷 breed,直接刷的
curl报错说“curl: (7) Failed to connect to raw.githubusercontent.com port 443: Connection refused”查了一下好像是因为dns被污染了
github 国内污染严重,基本都要挂梯子访问...如果你要编译的话,建议去开台非大陆机子.
刷完重启之后电源黄灯闪烁,无法检测到wifi信号怎么办,4a千兆版
WiFi 名称就是 “openwrt”
如果要额外设置记得去路由器后台设置