首先需要注意的是,不用于其他版本的 linux,OpenWrt 所使用的 SSH server 是 Dropbear,它可以支持 RSA Keys,但是验证路径位于/etc/dropbear/authorized_keys
操作时只需要注意公钥的放置路径即可。
这里记录下我的操作步骤:
在本机 linux 下:
生成密钥:
ssh-keygen
接下来需要输入存放路径时,输入
~/.ssh/openwrt_rsa # 随自己喜好命名
配置~/.ssh/config
文件,添加如下内容
# route
Host openwrt
HostName 192.168.2.1
IdentityFile ~/.ssh/openwrt_rsa
User root
将公钥上传到 openwrt 相应目录下
scp ~/.ssh/openwrt_rsa.pub root@192.168.2.1:/etc/dropbear/authorized_keys"
也可以使用如下命令(两者选其一):
ssh root@192.168.1.1 "tee -a /etc/dropbear/authorized_keys" < ~/.ssh/openwrt_rsa.pub
登陆路由器,设置权限
ssh openwrt
chmod 700 /etc/dropbear
chmod 600 /etc/dropbear/authorized_keys
此时就可以通过 ssh ss
直接无密码直接登陆路由器了。
Enjow ~