- A+
进入路由复制串号,替换下面的小写stok等号右边的大写<STOK>,带符号一起替换,不要说误人子弟,细心的复制串号就可对比发现
开ssh命令:
http://192.168.31.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
改密码命令(必须改密码,不改密码无法连接ssh):改密码为admin
http://192.168.31.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
改成一行
http://192.168.31.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%20echo%20-e%20'admin%5Cnadmin'%20%7C%20passwd%20root%3B
红米ax5 1.0.26 固件下载
升级后防止ssh失效方法:
在 /etc/firewall.user 文件中,添加一句 source /etc/basic_settings/basefile.sh
虽然可以直接写脚本,但毕竟这里是写防火墙规则的地方,为了看起来美观,只source一个脚本,把主要命令写在别的地方。
- echo -e "\nsource /etc/basic_settings/basefile.sh" >> /etc/firewall.user
创建 basic_settings 文件夹、basefile.sh 文件、my_script.sh 文件
- mkdir /etc/basic_settings
- touch /etc/basic_settings/basefile.sh
- touch /etc/basic_settings/my_script.sh
- chmod 755 /etc/basic_settings/basefile.sh
- chmod 755 /etc/basic_settings/my_script.sh
编辑 /etc/basic_settings/basefile.sh 填写以下内容
- echo "source /etc/basic_settings/my_script.sh; exit 0" > /etc/rc.local
编辑 /etc/basic_settings/my_script.sh 填写以下内容
- ver_flag="$(uci -c /usr/share/xiaoqiang get xiaoqiang_version.version.CHANNEL)"
- if [ "$(nvram get ssh_en)" != "1" -o "$ver_flag" == "release" ]; then
- echo "$(date) : 本次开机ssh_en被关闭或者版本标记被重置,您可能进行了固件升级。" >> /tmp/my_log.txt
- nvram set ssh_en=1
- nvram commit
- uci -c /usr/share/xiaoqiang set xiaoqiang_version.version.CHANNEL='stable'
- uci -c /usr/share/xiaoqiang commit xiaoqiang_version.version
- echo "$(date) :已重新开启ssh_en,并设置版本标记为stable。" >> /tmp/my_log.txt
- /etc/init.d/dropbear enabled
- if [ $? == "1" ]; then
- echo "$(date) :dropbear开机自启动被关闭,现重新开启。" >> /tmp/my_log.txt
- /etc/init.d/dropbear enable
- fi
- /etc/init.d/dropbear restart
- echo -e "admin\nadmin" | passwd root
- echo "$(date) :已将root密码重置为 admin" >> /tmp/my_log.txt
- fi
来源:关于小米路由器升级系统保留SSH的简单方法(RedmiAX5实验)_锦夏挽秋的博客-CSDN博客_小米路由器ssh