将多个 ssh 密钥上传到 vps

Upload multiple ssh keys to a vps

关于保护 vps 的 Internet 文档建议禁用 SSH 密码身份验证并改用加密密钥对身份验证。例如参见 [​​=13=].

我想知道万一我上传到服务器的 public 密钥的计算机停止工作而我不得不切换到另一台计算机时会发生什么情况:这是最糟糕的情况。

但是,我可能只是想用一台新电脑更换我的旧电脑。或者我可能会想调整我的硬盘大小并安装下一个 LTS Ubuntu 版本和前一个版本并移动我的所有数据而不是尝试冒险升级:我的新 OS 会 generate/have不过,不同的 ssh 密钥。

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

备份我的 id_rsaid_rsa.pub 文件的替代方案是否可行?

您可以根据需要向 VPS 上的 sshd 添加任意数量的键:

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