两个 Linux 用户可以共享 .ssh 文件夹密钥来连接到 SSH 服务器吗

两个 Linux 用户可以共享 .ssh 文件夹密钥来连接到 SSH 服务器吗

我有两个linux用户

  • user1 - 身份验证密钥存储在的常规帐户/home/user1/.ssh/
  • user2 - 没有主目录的服务帐户

user2如何访问user1的密钥来连接到远程服务器?有什么方法可以使用两个用户之间的共享文件夹访问密钥吗?

答案1

没有主目录的服务帐户

真的吗?这很不寻常。 /etc/passwd 中没有主目录或者入口指向不存在的路径?

虽然服务帐户可以在没有主目录的情况下使用 ssh 密钥 (ssh -i /path/to/key user@host),但只需添加一个主目录,您的生活就会简单得多。

然后有很多方法,但我想我会为每个指向共享目录的用户使用 ~/.ssh/config :

host *
   user sshusername
   IdentityFile /path/to/id_ecdsa

答案2

这看起来是个坏主意:

建议每个用户都有自己的密钥,并且将相应的公钥放在目标 user@destination:.ssh/authorized_keys 文件中(使用正确的注释来记住它是谁的公钥):这样,如果“user2”离开公司可以删除公钥(通过删除公钥条目并删除私钥),而不会妨碍“user1”

但是,如果经过仔细考虑和询问公司中具有安全意识的人员后,仍然认为这是可行的方法,那么您可以简单地让管理员帐户在 user2/.ssh/ 内创建 user1 密钥的硬链接。 ..但我强烈建议不要这样做。

或者,如果“user2”具有对 ~user1/.ssh 目录及其内容的读取访问权限(为此使用适当的组?):只需执行以下操作:

ssh -i ~user1/.ssh/thekey  remoteuser@remotedestination

相关内容