共享 SSH 密钥以登录?

5 ssh scp sftp centos key-authentication

我有点迷茫或困惑。

  1. 我有一些安全的服务器,里面~/.ssh/authorized_keys有一个密钥可以从我的桌面(mac book)远程登录这些服务器

  2. 现在那个安全服务器需要 SFTP/SCP 到一些第三方服务器

他们为我提供了 SSH ip、用户名、密码,但我需要使用密钥登录。他们让我分享钥匙。

现在很困惑我必须与他们分享哪个键?id_rsa.pub或钥匙来自~/.ssh/authorized_keys

注意:如果我将我的 id_rsa.pub 密钥分享给第三方,他们可以使用它来破解第 1 点中的安全服务器吗?

ilk*_*chu 18

SSH 密钥有两部分,秘密/私有密钥(通常在 中~/.ssh/id_rsa)和公共密钥 ( ~/.ssh/id_rsa.pub)。密钥可用于证明您是谁(或至少您持有该密钥),而公钥可用于检查密钥。

永远不会将密钥传递给任何其他方,因为这将使他们能够冒充您。

至于您在远程服务器上安装(或发送以安装)哪个公钥,取决于您:这取决于您要使用哪个私钥登录那里。

如果您的 Macbook 上有私钥,并想使用它登录,请发送与该私钥对应的公钥。这可能是您的第一台服务器authorized_keys或 Mac 中的那个id_rsa.pub。如果要从第一台服务器登录,则发送该服务器密钥的公钥,即机器中的公钥id_rsa.pub

如果您想使用这两个密钥登录,您需要authorized_keys在目标服务器上安排这两个密钥。


如果您愿意,您可以在同一系统上创建多个私钥,并为不同的远程系统使用不同的私钥。这只是需要一些簿记才能知道您在何处使用了哪个密钥,以及 SSH 客户端的一些配置,以便它知道尝试使用所有密钥。(如果您有很多密钥,您可能需要为每个主机配置它。)


公钥( id_rsa.pub) 传递给第三方没有风险。事实上,这正是您需要做的,才能让他们通过您的私钥识别您的身份。

  • 好的!!!!这意味着我可以安全地共享我的 `id_rsa.pub` 密钥。因为没有人拥有我的 `id_rsa` 私钥 (3认同)