如何安全地存储其他人的ssh密钥?

时间:2019-06-24 17:35:35

标签: security ssh public-key-encryption

这实际上不是编程问题,但请听我说。我正在构建一个部署工具,因此其他人可以使用我的应用程序将他们自己的应用程序部署到他们自己的服务器上。 (就像forge.laravel.com一样)

以下是此特定问题的用例

  1. 我需要存储用户的每个公共ssh密钥,因为我需要将此密钥插入每个已配置的服务器中。这样,用户无需任何手动授权即可通过ssh登录到服务器。
  2. 此外,我需要将我的应用程序ssh密钥(即服务器的公共密钥)授权到客户服务器中,以便我可以代表他们在用户服务器上执行命令。
  3. 我需要在新配置的客户服务器上生成一个新密钥,并在客户的github / gitlab中对其进行授权,这样,当我从服务器推送/拉出时,不需要输入任何用户名或密码。
  4. li>

提到这个问题,我在哪里/如何(安全地)存储这些密钥?我可以将它们存储在服务器的特定目录中吗?这使我认为我的服务器可以成为黑客的主要目标,因为如果他们能够进行黑客攻击,它将为众多服务器打开大门。

我可以采取哪些步骤来使此设置更安全?

考虑用例2,如果我为单独的客户生成单独的密钥,这会有什么不同?

0 个答案:

没有答案