如果仅为root用户设置,ssh-keygen -t rsa是否有效
即,如果本地系统上的用户名是钠,并且我使用上述命令生成密钥,并且如果我将密钥放在/root/.ssh authorized_keys中,则在远程系统上生成密钥,这是有效的.
但是在远程系统上,如果密钥放在/home/natrium/.ssh authorized_keys中
这仍然提示输入密码.这是预期的行为,或者在上述过程中有些不对劲
谢谢..
解决方法
检查远程系统的权限:
$chmod 700 ~/.ssh $chmod 600 ~/.ssh/authorized_keys
有一个工具可以安装在您的dist(ubuntu / debian有它)中调用:ssh-copy-id,它将为您执行此操作:
$ssh-copy-id <remote>
如果这不起作用,请使用选项“-v”尝试ssh以查看更详细的消息.
长版:
#From client to server client$scp ~/.ssh/id_rsa.pub remote_server.org: # next,setup the public key on server server$mkdir ~/.ssh server$chmod 700 ~/.ssh server$cat ~/id_rsa.pub >> ~/.ssh/authorized_keys server$chmod 600 ~/.ssh/authorized_keys server$rm ~/id_rsa.pub