允许/拒绝每个用户的应用程序 Linux

允许/拒绝每个用户的应用程序 Linux

是否有一种方法(如果需要的话)在 Linux Mint 上为一个或多个应用程序组/用户建立白名单,以便可以打开它们?例如:用户 1 和用户 2 只能打开 Firefox,而用户 3 可以打开 Firefox 和 libre office。除用户 4 之外,其他所有用户都受到限制,用户 4 可以打开并执行任何他想做的事情。

答案1

控制谁可以运行给定可执行文件的经典方法foo是这样的:

  1. 使chown可执行foo文件属于foo组。
  2. 设置权限后chmod只有所有者和组可以执行该文件。
  3. 按照您的意愿将用户分配到组。

如果您需要对系统中的许多(所有?)可执行文件执行此操作,这不是一个好的解决方案。如果您想将给定用户限制为一组狭窄的可能命令,那么您应该研究以下主题受限外壳

我已经发现屬於。看起来很有希望(虽然我自己从未使用过它):

bdsh 是一个 shell,您可以在其中将命令列入白名单,并且只有这些命令可以执行。

可能存在一些其他(较新的?)类似的解决方案。


编辑:也读过如何限制Linux中的用户命令在 Stack Overflow 上。

答案2

未经测试但可能的解决方案:

  1. 删除 /usr/bin 上一般用户的“可执行”位(可能还有其他用户)(这可以防止他们读取 /usr/bin 中的任何内容)
  2. 在 /usr/bin 中创建一个包含授权应用程序硬链接的目录
  3. 设置 PATH 指向它

相关内容