多个系统的 SSH 授权密钥

Amr*_*ngh 4 ssh

我在某处读到要通过 SSH 访问远程机器,我们需要将~/.ssh/id_rsa.pub本地机器复制到~/.ssh/authorized_keys远程机器。我这样做了,我可以通过 ssh 访问远程机器。

我希望可以从多个服务器访问远程机器,例如:机器 A 可以访问机器 B,还有另一台机器 C 也可以访问机器 B。

我将~/.ssh/id_rsa.pub机器 A复制到~/.ssh/authorized_keys机器 B,我可以访问机器 B。

但我也想从机器 C 访问机器 B 那我该怎么办?我的意思是,我应该在哪里将~/.ssh/id_rsa.pub机器 C复制到机器 B 以便我可以从机器 C 访问机器 B?

slh*_*hck 9

authorized_keys远程主机上的文件可以包含多个公钥。只需附加它们 - 确保每个键都有一个新行。

为了简化这个过程,有ssh-copy-id(1).

ssh-copy-id user@machine-B
Run Code Online (Sandbox Code Playgroud)

您可以在机器 C 上执行上述命令。它将默认公钥复制到机器 B 并authorized_keys自动将其附加到。如果需要,您还可以使用该-i选项指定要复制的另一个公钥。


这是手册中的参考:

用户通过运行创建他/她的密钥对ssh-keygen(1)。这会将私钥存储~/.ssh/id_rsa.pub在用户主目录中的 [...] (协议 2 RSA)中。然后用户应该将公钥复制到~/.ssh/authorized_keys他/她在远程机器上的主目录中。

authorized_keys文件[...]每行有一个关键,但线条可以很长。此后,用户无需提供密码即可登录。