在多台计算机上使用 SSH 密钥

dem*_*mas 8 ssh

我有三台电脑:Windows 台式机、Linux 笔记本和 Macbook。我从任何一台计算机上使用 SSH 连接到我的服务器。为了连接到远程服务器,我使用 SSH 密钥。

在这种情况下你的工作方法是什么?您是为每台计算机创建单独的 SSH 密钥还是在每台计算机上使用一对密钥。如果答案是第二个,您将它们保存在哪里以及如何将它们部署在您拥有的新笔记本电脑/计算机上。

HBr*_*ijn 8

您可以在多个设备上使用相同的私钥吗?

是的。

对于可以安装和使用相同私钥的设备数量没有技术限制。

您应该重复使用私钥还是为每个设备生成新的密钥对?

尽管我认为您进行身份验证是为了证明您的身份,并且您的身份与您当前使用的设备无关,但为您使用的每个系统设置新的私钥可能是一个不错的策略。例如,这可以帮助您将工作系统的访问与其他活动分开,并防止交叉使用“工作”笔记本电脑执行您的私人项目并从家庭电脑登录工作。

在多个设备上使用相同的私钥在易用性方面具有很大的优势,在新系统上添加私钥一次,您就可以访问每个远程系统,而无需进一步努力。当一个系统可能崩溃时,它也是一种方便的备份。

存储私钥的位置越多,泄露的风险就越高。您使用的密钥越少,泄露的密钥可能产生的影响就越大。

您主要通过使用密码保护您的私钥来减轻这种风险。(无论如何你都应该这样做。)

要将共享私钥从工作站或笔记本电脑复制到另一个工作站或笔记本电脑:

  • 当您可以(临时)在新工作站上运行 ssh 服务器时:
    由于没有特殊要求将公钥保密:通过任何方式将公钥发送到新工作站,将其添加到文件中~/.authorized_keys,然后使用私钥要从现有工作站进行身份验证,请通过 ssh 将私钥复制到新工作站(并且可以选择再次禁用 sshd)。

  • 将受密码保护的私钥复制到 USB 拇指驱动器(或类似的可移动介质),然后将其擦除。

当为每个设备使用单独的私钥,但您使用所有设备对同一远程系统进行身份验证时:

  • 通过任何方式将每个工作站的公钥发送给其他工作站。(再次注意,没有特殊要求将公钥保密。)
  • 使用现有工作站上的受信任私钥将新公钥复制并添加到所有远程系统(例如ssh-copy-id -i new_key.pub
    (我使用的所有系统都允许我通过一个帐户使用多个公钥,但这可能并不普遍但情况)
  • 在新系统上设置身份验证时,请添加您正在使用的所有私钥的公钥,而不仅仅是与您当前使用的工作站关联的公钥。