我使用 bash shell 创建了一个用户名——一个包含所有可用命令的普通 shell——但我打算将此 shell 用于备份服务,它应该只允许 rsync 命令。因此,我试图限制这个 shell 只执行 rsync 命令。我怎样才能用 .bash_profile.bashrc 做到这一点?

附加信息:此 shell 仅用于备份文件和文件夹。我使用 rsync 键将另一个 shell 连接到 ssh

最佳答案

你不能 - 不能只使用这些文件。为什么不给他们另一个 shell ,选择更少?
rssh 就是为此目的而设计的。

rssh 相对于authorized_keys 限制的优势(并非所有都适用于您或您很感兴趣):

  • 可用于控制多个用户
  • 限制是从外部而不是从用户的个人配置内部应用的 - 出错的可能性较小,允许他们更好地访问
  • 使 chroot 用户更容易
  • rssh 不是通用 shell ,因此即使配置错误,提供给用户的范围也远小于 bash + authorized_keys 配置错误。
  • 关于linux - 限制 shell 命令,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12929391/

    10-16 20:19