默认可以在管理界面直接添加公钥,但是像我这种特殊状况,在GUI后台发现无法修改,因此要手动增加。(后知后觉,可能是手贱误删了/root/.ssh,苦笑)
主要分两步,第一步是生成密钥对
#用dropbearkey生成密钥对
path=/etc/dropbear #生成私钥的地方,可随意填写
dropbearkey -t rsa -f ${path}/key_dropbear -s 2048
#保存公钥到~/.ssh/authorized_keys
dropbearkey -t rsa -f $path/$name -s 2048 -y | sed -n 2p > ~/.ssh/authorized_keys
#转换私钥成可以读取的文件
dropbearconvert dropbear openssh ${path}/key_dropbear ${path}/key_openssh
#打印私钥
cat ${path}/key_openssh #把私钥复制到记事本备用
进行第二步之前建议备份S50dropbear,并设置定时20分钟还原,以免设置错误导致无法登录:
cp /etc/init.d/S50dropbear /etc/
echo "*/20 * * * * cp /etc/init.d/S50dropbear /etc/" >> /etc/cron/crontabs/root
第二步是修改/etc/init.d/S50dropbear的第10行
添加-p +要开启的ssh端口 ,-s是禁止密码登录
Snipaste_2020-04-28_20-48-16.png
所有步骤完成后,记得保留好私钥,然后输入reboot
重启
最后使用密钥登录:在ssh管理界面,端口输入刚设置的,然后把保留的私钥添加到相应的位置保存登录即可。