小米ac2100路由器输入openwrt固件
2022年09月27日 收录于话题 #Openwrt #ac2100OpenWrt 可以被描述为一个嵌入式的 Linux 发行版。(主流路由器固件有 dd-wrt,tomato,openwrt,padavan四类)对比一个单一的、静态的系统,OpenWrt的包管理提供了一个完全可写的文件系统,从应用程序供应商提供的选择和配置,并允许您自定义的设备,以适应任何应用程序。
对于开发人员,OpenWrt 是使用框架来构建应用程序,而无需建立一个完整的固件来支持;对于用户来说,这意味着其拥有完全定制的能力,可以用前所未有的方式使用该设备。
固件下载
2021/9/8最新消息:
官网说明https://openwrt.org/toh/xiaomi/mi_router_ac2100
Openwrt官方已经从21.02.0版正式支持小米/红米AC2100。官网下载地址:
https://firmware-selector.openwrt.org/?version=21.02.1&target=ramips%2Fmt7621&id=xiaomi_mi-router-ac2100
需要文件
openwrt-ramips-mt7621-xiaomi_mi-router-ac2100-squashfs-kernel1.bin
openwrt-ramips-mt7621-xiaomi_mi-router-ac2100-squashfs-rootfs0.bin
openwrt-ramips-mt7621-xiaomi_mi-router-ac2100-squashfs-sysupgrade.bin
先刷入前面两个文件,之后用sysupgrade.bin更新一下即可。
开启ssh,并更改密码
利用官方固件的漏洞,通过Web注入漏洞开启SSH实现刷机
版本准备
带漏洞的官方固件,只有一个版本的固件有漏洞,版本号为AC2100 2.0.7*版本。
之后的版本漏洞已经修复,要刷机需要降级到带漏洞的版本(有人说是小米有意无意放出的那么一个版本,反正国际上一大堆玩小米路由的玩家)。
降级只需用官方更新方法手动刷入即可。带漏洞的版本在官方网站上下载:
红米RM2100:http://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/rm2100/miwifi_rm2100_firmware_d6234_2.0.7.bin
小米R2100:http://cdn.cnbj1.fds.api.mi-img.com/xiaoqiang/rom/r2100/miwifi_r2100_firmware_4b519_2.0.722.bin
漏洞注入:降级到漏洞版本后,通过下面web命令开启SSH
使用管理员密码登录,路由器的web界面
http://192.168.1.1/cgi-bin/luci/;stok=<STOK>/web/home#router
这里的关键是号,每台机器不同,甚至每次登录都不同,拷贝下来备用。
在浏览器地址栏中输入以下链接代码,注意替换掉部分:
http://192.168.1.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20nvram%20set%20ssh_en%3D1%3B%20nvram%20commit%3B%20sed%20-i%20's%2Fchannel%3D.*%2Fchannel%3D%5C%22debug%5C%22%2Fg'%20%2Fetc%2Finit.d%2Fdropbear%3B%20%2Fetc%2Finit.d%2Fdropbear%20start%3B
返回{“code”:0}即代表成功,如果返回401错误,原因可能是版本不正确或者值错误或者链接输入不完整等。
更改管理员root密码的方法:通过如下命令更改root密码为admin,在浏览器地址栏中输入以下链接代码,注意替换掉部分(有时stok值会发生改变,建议重新返回登录页面复制最新的stok值):
http://192.168.1.1/cgi-bin/luci/;stok=<STOK>/api/misystem/set_config_iotdev?bssid=Xiaomi&user_id=longdike&ssid=-h%3B%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B
登录SSH进行刷机:
重启后,通过winscp登录192.168.1.1用户为root密码为刚才改过的admin。(如不能sftp找台虚拟机用scp命令拷贝,能跟路由网络通即可)先把openwrt的两个rom文件(xxx-kernel1.bin和xxx-rootfs0.bin)上传到路由器tmp目录。
再用putty登录192.168.1.1进行刷机操作,输入如下命令进行刷机:
nvram set uart_en=1&&nvram set bootdelay=5&&nvram set flag_try_sys1_failed=1&&nvram commit
mtd write /tmp/xxx-kernel1.bin kernel1
mtd -r write /tmp/xxx-rootfs0.bin rootfs0
注意上面rom文件的文件名,把xxx替换成你自己用的rom文件名。
刷完后将重启,刷机大功告成,之后便是openwrt路由的设置了。
###安装后无法登录ui
家用拨号宽带
uci set network.wan.proto=pppoe //设置wan口类型为pppoe
uci set network.wan.username=SZ6800000712444
uci set network.wan.password=712G12444 //这两行设置就是宽带账号
uci commit //保存配置到 /etc/config/network 和 /etc/config/wireless
opkg update // 更新软件列表
opkg list-installed // 查看已安装软件
opkg install luci // 安装LUCI
opkg install luci-i18n-base-zh-cn // 支持中文
输入以下命令开启支持web服务的uhttpd,并设置其为自启动:
/etc/init.d/uhttpd enable # 开机自启动
/etc/init.d/uhttpd start # 启动uhttpd
这样就可以通过 lan口的ip登陆路由器的网页管理界面了。
echo "nameserver 114.114.114.114">/tmp/resolv.conf
rm -f /var/lock/opkg.lock
标签:bin,set,mi,ac2100,固件,openwrt From: https://www.cnblogs.com/cheyunhua/p/17764130.html