我从网上的无数来源了解到(粗略地),为了在没有密码的情况下登录远程服务器:生成一个 ssh 密钥,将 pub 版本放在远程系统上的authorized_keys中;将私有版本放在本地 ~/.ssh/ 目录中;chmod 它到 0600 然后噗,你就进去了。虽然这基本上是正确的,但我发现密钥(对)必须命名为 id_rsa (id_rsa.pub) 或 id_dsa (id_dsa.pub) 以便 SSH 将其提供给远程服务器。
让我退后一点。SurnameG
我在本地 Mac 上有一个登录名。我在远程系统(其他服务器)上有一个 SurnameG 帐户。
我将内容复制~/.ssh/surnameg.pub
到该系统的/home/surnameg/.ssh/authorized_keys。我已经-i
使用 Mac 上的 ssh 选项进行了测试,效果很好。
我有一个~/.ssh/id_rsa
(我生成的用于github.com)。
当然,我什至还有一些其他密钥,当我尝试通过以下方式登录otherserver.com~/.ssh/surnameg
时,这些密钥没有被“尝试” :
ssh 1.2.3.4
Run Code Online (Sandbox Code Playgroud)
在这里,我尝试使用SurnameG
(当前本地登录用户)登录到我在otherserverSurnameG
上的帐户。我希望 openssh 在尝试连接时提供,但它没有 - 让我们仔细看看详细选项:~/.ssh/surnameg
BOX:~ SurnameG$ ssh -v 1.2.3.4
OpenSSH_5.9p1, OpenSSL 0.9.8y 5 Feb 2013
debug1: Reading configuration data /Users/SurnameG/.ssh/config
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config …
Run Code Online (Sandbox Code Playgroud)