我创build了一个RSA密钥,但SSH不断询问密码

在我的Mac上,我使用ssh-keygen -t rsa创build了一个RSA密钥,并将其保存为目标服务器(Ubuntu)上的.ssh/authorized_keys

我把这个放在服务器的/etc/ssh/sshd_config

 PubkeyAuthentication yes RSAAuthentication yes 

并重新启动SSH。 但是,它忽略了关键。 怎么了?

您的密钥应该转到Mac上的.ssh/id_rsa ,Mac上的id_rsa.pub应该添加到服务器上的.ssh/authorized_keys文件中。

您应该也可以在服务器上使用chmod -R go-wr ~/.ssh

OpenSSH教程介绍了如何解决这个问题。

很可能,您的/home/<user>~/.ssh/authorized_keys权限是OpenSSH标准打开的。 您可以通过发出以下命令来摆脱此问题:

 chmod go-w ~/ chmod 700 ~/.ssh chmod 600 ~/.ssh/authorized_keys 

你想连接到你的Ubuntu服务器而不input密码?

当你在你的mac上生成一个新的rsa密钥对时,你将得到一个私钥( id_rsa )和一个公钥( id_rsa.pub )。 你会在~/.ssh/默认情况下find它们。

login到你的Ubuntu服务器,并将id_rsa.pub的内容粘贴到~/.ssh/authorized_keys 。 在此之后,您应该能够连接没有密码。 在标准的ubuntu系统上,你根本不需要触摸sshd_config