【发布时间】:2015-05-16 22:36:13
【问题描述】:
我想限制用户 B 在我的服务器上可以执行的操作。更准确地说,我希望他只能运行用户 A 可以运行的特定命令/脚本(并且必须以用户 A 的身份运行)。
如何让用户 B 以用户 A 的身份只执行这个脚本?
我发现使用 sudo 提到的内容,用户 B 无权访问。我可以更改脚本的权限,以便 B 可以作为 A 运行它吗?
【问题讨论】:
-
这不是一个真正的编程问题,您可能会在unix.stackexchange.com 获得更好的问题答案。
-
如果您是该服务器的管理员,您可以配置
sudo以允许B 以A 身份运行脚本。 -
如果您非常小心,您可以让用户 A 创建一个 SUID(设置用户 ID)程序,该程序 (1) 验证它是否由用户 B 运行,如果是其他人尝试则退出运行它,并且 (2) 安排运行完成这项工作的原始脚本。不过,你必须非常小心——这不适合胆小的人。例如,如果可以说服脚本启动
vim之类的编辑器,那么用户B 可以获得具有用户A 权限的shell,然后几乎可以执行A 作为A 可以做的任何事情。范围越小在脚本的作用中,这种技术越安全。
标签: shell permissions sudo