openwrt 一般采用dropbear 作为ssh 客户端/服务端。 但一般都是使用password 的形式登录ssh. 我们使用public/private key 的形式来跳过需要password的验证。
1. 客户端
使用如下命令,生成public keys1
dropbearkey -y -f /etc/dropbear/dropbear_rsa_host_key
2. 服务端
dropbear 与openssh 有点区别在于,authorized_keys 文件并不在~/.ssh/authorized_keys 文件中, 而是在/etc/dropbear/authorized_keys
之后重启服务端dropbear service1
/etc/init.d/dropbear restart
dropbear 的配置如下:
3. 使用
在客服端使用如下命令登陆服务端1
ssh -i /etc/dropbear/dropbear_rsa_host_key root@172.28.52.151 -p 6350
需要使用 “-i”选项指明identify 文件, “-p 6350” 是指明端口号
当然我们可以不指明-i option 指定文件,直接登录。
作如下步骤:1
cp /etc/dropbear/dropbear_rsa_host_key ~/.ssh/id_dropbear
使用如下命令直接登陆:1
ssh 172.28.52.151 -l root -p 6350