在 OSX 中,ssh-keygen 创建密钥,但会话将无法连接

在 OSX 中,ssh-keygen 创建密钥,但会话将无法连接

我制作了一个密钥,但当我尝试设置到本地主机的无密码登录时,它会将我注销:

$ rsa-keygen -t rsa
$ cat id_rsa.pub > authorized_keys
$ ssh localhost

The authenticity of host 'localhost (::1)' can't be established.
RSA key fingerprint is bb:a6:5e:46:c9:b5:e9:46:bd:43:c1:6e:cd:3b:e5:ea.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (RSA) to the list of known hosts.
Connection closed by ::1

当我尝试使用主机名登录时也会发生同样的情况。我缺少什么?

答案1

您可以在调用 ssh-keygen 命令后尝试使用以下命令:

ssh-copy-id -i id_rsa.pub localhost

它应该将您的公钥复制到远程主机(这里是您自己的计算机,因为您使用的是本地主机)并在正确的文件中激活它。

笔记:有时,对于旧版本的 sshd(SSH 服务器进程),该文件名为authorized_key,请检查 sshd 手册页以获取确切的名称。

答案2

如果您手动提供 SSH 密钥,它可以工作吗?

ssh localhost -i id_rsa

如果是这样,问题很可能是您的 SSH 代理没有注册您的新密钥

相关内容