【问题标题】:How to block Particular Commands in Linux for Specific user? [closed]如何在 Linux 中为特定用户阻止特定命令? [关闭]
【发布时间】:2015-08-02 16:10:54
【问题描述】:

假设我在 ubuntu 中创建了一个新用户 TEST,我需要阻止除 cp、ssh、exit 之外的所有命令。请帮助我。我是 linux 新手。

【问题讨论】:

  • 你为什么要这样做?严重吗?
  • 如果您真的是 Linux 新手,并且需要一件严肃的事情,我建议您在部署解决方案之前了解更多有关 Linux 的信息。所以我建议放弃,或者以某种方式信任你的用户。

标签: linux unix ubuntu centos rhel


【解决方案1】:

我认为您需要创建一个新组,在其中设置您要使用的所有命令并将您的 TEST 用户添加到该组。

【讨论】:

  • 如果你不介意可以详细解释一下吗?
  • @user3226587:不值得努力。除非您对 Linux 有更多了解,否则您肯定会犯安全错误。
  • Basile 是对的,但这不是最简单的方法。去看看这个话题,和你的情况很接近:stackoverflow.com/questions/21498667/…
【解决方案2】:

或者,考虑使用一些受限shell,例如rbash,您可以将其设置为用户的登录和ssh shell(使用chsh 和/或配置他/她的~/.ssh/config);当然,适当地设置PATH,它可能包含一个~/bin/ 目录,其中包含指向/bin/cp/usr/bin/ssh 等的符号链接。您可能希望使~/bin/ 不被用户拥有且不可写。

要小心:如果您的用户比您有更多的经验,您可能会留下一些他/她可以利用的漏洞。通过至少明确禁止(用语言)事情,让它成为一个社会/合同问题。

您可能还想了解有关chroot 和/或setuid 的更多信息;另请参阅this answer 中的参考资料。

请注意,如果您的用户获得ssh,他很可能获得scp 并能够破解他的帐户(例如,通过将可执行文件添加到他的~/bin/ ....)

【讨论】:

    猜你喜欢
    • 2016-10-21
    • 2019-01-29
    • 2015-05-02
    • 1970-01-01
    • 2020-01-13
    • 2021-06-17
    • 2012-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多