我有三台电脑:Windows 台式机、Linux 笔记本和 Macbook。我使用 SSH 从其中任何一台电脑连接到我的服务器。要连接到远程服务器,我使用 SSH 密钥。
在这种情况下,您的工作方法是什么?您是为每台机器创建单独的 SSH 密钥,还是在每台机器上使用一对密钥。如果答案是第二个,那么您将它们保存在哪里以及如何将它们部署到您拥有的新笔记本电脑/计算机上。
答案1
您可以在多个设备中使用同一个私钥吗?
是的。
您可以安装和使用相同私钥的设备数量没有技术限制。
您是否应该重复使用私钥或为每个设备生成一个新的密钥对?
尽管我认为您需要进行身份验证来证明自己的身份和你的身份与你当前使用的设备无关为你使用的每个系统设置新的私钥可能是一个好策略。例如,这可以帮助你将工作系统的访问与其他活动分开,并防止交叉使用“工作”笔记本电脑进行私人项目并从家庭 PC 登录工作。
使用来自多个设备的相同私钥在易用性方面具有很大的优势,在新系统上添加一次私钥,即可轻松访问每个远程系统。当某个系统可能崩溃时,这也是一种方便的备份。
私钥存储的地方越多,泄露的风险就越高。使用的密钥越少,密钥泄露的影响就越大。
您可以通过使用密码保护您的私钥来最大程度地降低这种风险。(无论如何您都应该这样做。)
到复制共享私钥从工作站或笔记本电脑到另一个:
当您可以在新工作站上(临时)运行 ssh 服务器时:
由于没有特别要求保持公钥私密:通过任何方式将公钥发送到新工作站,将其添加到文件中~/.authorized_keys
,然后使用私钥从现有工作站进行身份验证,通过 ssh 将私钥复制到新工作站(并可选择再次禁用 sshd)。受密码保护的私钥复制到 USB 拇指驱动器(或类似的可移动媒体)然后擦除。
使用时每个设备有单独的私钥,但您使用所有设备向相同的远程系统进行身份验证:
- 通过任何方式将每个工作站的公钥发送给其他工作站。(再次注意,没有特别要求将公钥保密。)
- 使用现有工作站上的受信任私钥复制并将新公钥添加到所有远程系统(例如
ssh-copy-id -i new_key.pub
)
(我使用的所有系统都允许我在单个帐户中使用多个公钥,但这可能并非普遍如此) - 在新系统上设置身份验证时,请添加您正在使用的所有私钥的公钥,而不仅仅是与您当前正在使用的工作站相关联的公钥。