将 Linux 用户限制为文件夹和文件



我有一个文件,我希望普通用户能够运行。例如

./file 参数 1 参数 2 论证3

但是,我想限制用户,以便这是他唯一能做的事情。我不希望他能够访问任何其他文件夹或文件,基本上运行该文件,仅此而已。我听说过 rbash,但不确定安全性等。

如果有帮助,我可以将文件放在每个用户的主目录中。

如果您只是在寻找一种安全的方式来为用户提供要执行的程序,那么默认情况下Unix和Linux已经提供了此功能。

只需将可执行文件放在用户的主目录中(让用户成为文件的"所有者")。

Unix/Linux用户(以及代表该用户执行的任何程序)无法访问其他用户的目录/文件(特别是,他/她无法访问属于"root"的内容)。

对于大多数应用程序,这种方法通常被认为是安全的。

如果你的需求落后于这条线,你可以使用 chroot 来"监禁"你的可执行程序。看这里:

http://en.wikipedia.org/wiki/Chroot

这种技术通常用于监禁在机器上运行的可能危险的程序,同时暴露在网络上(例如HTTP或FTP服务器)。

困难的部分是,您必须确保文件系统资源(file/dir)的权限签名以 0 结尾(例如 750),这意味着读取、写入、执行永远不会被允许other(不是所有者或属于与该文件系统元素关联的组的人)。 然后,您将添加不属于任何组的用户,并使他成为其主目录中该文件的所有者。

如果有更好的方法,我想知道。

相关内容

  • 没有找到相关文章

最新更新