ssh-keygen 仅适用于 root 吗?

Hul*_*ulk 7 linux ssh

如果只为 root 用户设置,ssh-keygen -t rsa 是否有效

即,如果本地系统上的用户名是 sodium 并且我使用上述命令生成密钥,并且在远程系统上如果我将密钥放在 /root/.ssh authorized_keys 中,则此方法有效。

但是在远程系统上,如果密钥放在 /home/natrium/.ssh authorized_keys

这仍然提示输入密码。这是预期的行为还是上述过程中的某些问题

谢谢..

rkt*_*hkr 5

检查远程系统上的权限:

$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)

有一个工具可以安装在你的 dist(ubuntu/debian 有)中,叫做:ssh-copy-id,它会为你做这件事:

$ ssh-copy-id <remote>
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,请尝试使用选项“-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
Run Code Online (Sandbox Code Playgroud)