大家好,自从去年买了小米万兆的首发之后,这万兆就让我挺纠结的。虽然有着强大的硬件,但是功能太少,也不能刷第三方。我对路由器的要求其实挺简单的,能挂个插件就行了。但是没有SSH和残废的docker明显无法满足我的需求,所以只能软路由继续做主路由,然后这个万兆做一个大号AP使用。就在前两天,小米万兆的SSH终于被破解了,那这款路由器也即将迎来新生。这期就教大家怎么给万兆路由器开SSH。

第二步,根据提示安装docker以及第三方管理软件。

安装完成后点击管理docker,打开第三方docker的控制面板,登录用户名和密码都是admin,登录即可。

打开存储管理,看右侧的卷,没有就新建一个。然后点击详情,看一下USB-后面的字符,记录下来,后面有用。

镜像管理,点击拉取,拉取nginx:alpine-slim镜像

点击新拉取的镜像的右侧绿色运行按钮。选择简单模式,容器名称随意。目录挂载写/mnt/usb-******/mi_docker/../../..:/real_root。星号替换成刚刚你记录下来的字符。

容器管理=>选择刚才创建的容器,进入终端。输入以下命令

chroot /real_root

cd /etc/init.d

vi dropbear

使用Ctrl+E,滚轮,以及方向键移动光标,到start_service()。按i进入编辑模式,给start_service内从flg_ssh开始到fi结束的五行分别添加#注释掉,按ESC退出编辑,输入:wq回车退出并保存

退出后输入命令

/etc/init.d/dropbear start

然后就可以使用SSH工具连接SSH了。

我这里用xshell为例,来对SSH进行半固化操作。因为这个SSH是临时的,重启后会消失,所以需要半固化。如果要固化,可以参考AX9000的固化过程,但是也要先做半固化。

在https://miwifi.dev/ssh输入路由器的SN可以得到SSH密码,SN可以看路由器屁股,也可以进小米路由器后台看。

连接SSH后分别输入以下命令,一个命令一个回车。

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

然输入

vi auto_ssh.sh

按键盘上的ins按键进入编辑模式,把以下内容复制到文件内。

#!/bin/sh

host_key=/etc/dropbear/dropbear_rsa_host_key

host_key_bk=/data/auto_ssh/dropbear_rsa_host_key

# 如果存在备份的SSH密钥,将备份的密钥链接到dropbear使用的密钥

if [ -f $host_key_bk ]; then

ln -sf $host_key_bk $host_key

fi

# 当前固件为稳定版时,需要执行下面命令开启SSH

channel=`/sbin/uci get /usr/share/xiaoqiang/xiaoqiang_version.version.CHANNEL`

if [ "$channel" = "release" ]; then

sed -i 's/channel=.*/channel="debug"/g' /etc/init.d/dropbear

/etc/init.d/dropbear restart

fi

# 备份SSH密钥

if [ ! -s $host_key_bk ]; then

i=0

while [ $i -le 30 ]

do

if [ -s $host_key ]; then

cp -f $host_key $host_key_bk 2>/dev/null

break

fi

let i++

sleep 1s

done

fi

复制完成后按ESC退出编辑模式,输入:wq退出编辑保存,再依次输入以下命令。

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

到这里,SSH的半固化就基本完成了,重启SSH也不会消失,安装自己喜欢的插件吧。目前SC已经可以用了,lucky也可以,具体怎么安装我就不教了,不作死。

有了SSH之后,第三方固件也是指日可待,四核A73+双万兆+2GB内存也可以得到充分发挥,期待这款路由器未来的玩法!

谢谢大家,我们下期再见。

复制这条信息,59嘻不小以时这你都时看生是微 https://m.tb.cn/h.ULm832t CZ0001 ,到【手机淘宝app】即可查看

关注B站@电脑吧评测室