假设我在ubuntu中创建了一个新用户TEST,我需要阻止除cp,ssh,exit之外的所有命令。请帮助我。我是linux新手。
答案 0 :(得分:1)
或者,考虑使用一些受限制的shell ,例如rbash,您可以将其设置为用户的登录名& ssh shell(使用chsh
和/或配置他/她的~/.ssh/config
);当然正确设置PATH
,它可能包含一个~/bin/
目录,其中包含/bin/cp
,/usr/bin/ssh
等的符号链接。您可能想要~/bin/
不属于用户且不可写的。
要小心:如果您的用户比您的实验更多,您可能会留下他/她可以利用的漏洞。通过至少明确禁止(在单词中)事物,使其成为社会/合同问题。
您可能还想了解有关chroot和/或setuid的更多信息;另见this answer中的参考文献。
请注意,如果您的用户获得ssh
,他可能会获得scp
并且能够破解他的帐户(例如,通过将可执行文件添加到他的~/bin/
....)
答案 1 :(得分:0)
我认为您需要创建一个新组,在其中设置要使用的所有命令,并将TEST用户添加到该组。