将多个ssh密钥上传到vps

时间:2017-04-15 09:04:17

标签: linux ssh vps ssh-keys

有关保护vps的Internet文档建议禁用SSH密码身份验证,而使用加密密钥对身份验证。例如,请参阅Linode's documentation

我想知道如果我上传到服务器的公钥停止工作并且我必须切换到另一台计算机的情况会发生什么:这是最糟糕的情况。

但是,我可能只想更换旧计算机。或者我可能想要调整我的硬盘大小并安装下一个LTS Ubuntu版本和前一个版本并移动我的所有数据而不是尝试冒险升级:我的新操作系统会生成/拥有不同的ssh密钥。

我可以做些什么来避免被锁定在我的服务器上?
据我了解,一旦禁用SSH密码验证并将公钥上传到服务器,就可以仅使用该密钥连接到服务器。不过我想知道:有没有办法上传多个公钥?如果可以,服务器将通过不同的公钥通过身份验证接受来自多台计算机的连接(虽然我看不到第二台计算机如何通过ssh连接上传其密钥)。

备份我的id_rsaid_rsa.pub文件是否切实可行?

1 个答案:

答案 0 :(得分:1)

您可以根据需要在VPS上为sshd添加任意数量的密钥:

  • 使用ssh-keygen生成一个并保存在某个地方
  • 将生成的密钥的公共部分(带有su .pub)复制到您的服务器
  • 将此公钥添加到~/.ssh/authorized_keys文件(或AuthorizedKeysFilesshd_config条目中指定的文件):cat key.pub >>~/.ssh/authorized_keys
  • 重新加载sshd(在我的Ubuntu上,它像sudo service ssh reload
  • 使用新密钥进行连接:ssh -i /path/to/private-key host@user