允许用户在 Unix 上以另一个用户身份运行 /bin/cp

允许用户在 Unix 上以另一个用户身份运行 /bin/cp

我有一个用户遇到了这个问题:

Sorry, user myuser is not allowed to execute '/bin/cp /tmp/tempfile /applications/tomcat/instance/webapps/' as tomcat on myserver.on.our.network.

运行以下命令时:

sudo -u tomcat cp /tmp/tempfile /applications/tomcat/instance/webapps/

我应该进行哪些更改(我假设使用 visudo)才能允许用户以用户身份执行/bin/cptomcat该用户是该组的成员tomcat

提前致谢

富有的

答案1

myuser        ALL = (tomcat) /bin/cp

非常简单。您可以允许 tomcat 组的所有成员执行此操作,方法是:

%tomcat       ALL = (tomcat) /bin/cp

那里ALL指的是所讨论的主机;如果您在多个主机上使用此 sudoers 文件,则可能不合适,但如果此 sudoers 文件特定于该主机,则它足够安全,并可以避免机器认为其主机名是什么的问题。

答案2

/tmp/tempfile 文件中的权限和所有者是什么?您应该有权修改非我创建的文件(由于 /tmp 限制)

相关内容