pipe理公共SSH密钥以访问以非root用户身份运行的应用程序

我们有一个服务器应用程序,在独立的机器上运行几个独立的实例。 我们目前只能通过Telnet访问它们(仅从本地networking内部访问,但仍然相当开放),并试图用embedded式SSH服务器替代它。 我们已经使用Apache sshd添加了SSH访问,但正在努力想出一个安全/实用的方法来pipe理密钥。

  • 所有服务器都以相同(非根)用户的身份运行,并且可以访问共享文件系统(以及他们自己的本地驱动器)。
  • 有许多人拥有服务器应用程序的pipe理权限,但不是主要的networking基础设施(没有root访问权限,但对服务器运行的用户是su访问权限)
    • 这些人应该有SSH访问所有的服务器
  • 每个服务器都有没有pipe理员权限的人员,他们应该能够通过SSH访问该服务器,但不能访问其他服务器。
  • 每个用户都应该拥有自己的密钥

是否有一个标准的方式来处理对没有root权限的应用程序的SSH访问?

目前的思路是与个人服务器的服务器pipe理密钥和子目录具有共同的目录,但是find正确的权限级别来防止写入访问,但是防止覆盖其他人的密钥是有挑战性的。 如果可能,我们宁愿不必通过系统pipe理员以root身份进行添加/删除。