【发布时间】:2018-06-15 22:17:45
【问题描述】:
我需要通过 PHP 的 exec 函数从命令行运行一个 cPanel 脚本(其他 cPanel 选项不可行)。命令大致是:
uapi --user=[user] Email suspend_incoming email=[user]%40[domain].[tld]
我收到以下错误:
setuids 失败:尝试将 setuid 设置为具有 RUID *** 的普通用户
这反过来又让我意识到运行 PHP 的用户确实没有有权执行导致我转到this thread 的命令。 然而正如你不应该公然将 CHMOD 文件设置为 777 我不想在从命令行使用 sudo 或 PHP 的 exec 脚本时盲目地为此用户启用所有命令。
当使用sudo 通过编辑sudoers 文件时,我如何仅允许该用户执行uapi 命令(也是多个特定命令)?
【问题讨论】:
-
这里有什么帮助吗? unix.stackexchange.com/questions/18830/…。请注意,如果您授予 PHP 用户执行此命令的权限,它将在系统范围内通过服务器上的任何脚本可用(假设它以同一用户身份执行)。