使用apache/php以root用户身份运行shell脚本

使用apache/php以root用户身份运行shell脚本,php,shell,permissions,root,Php,Shell,Permissions,Root,我想使用shell脚本来更改目录的权限,该脚本由a执行,因此它在apache用户下运行。 不幸的是,有些目录的权限设置为root 有没有办法将这个脚本运行为根>代码>或者有其他的选择我可以考虑吗? < p>你找一个工具叫做 Sudo:但是最有可能的是,不去做SUDO,你应该重新考虑你的应用程序架构,因为一旦你的HTTP被破坏了,攻击者可以轻松获得根权限。我最近发布了一个项目,该项目允许PHP获取真实的Bash shell并与之交互。在这里获取: 下载后,您只需使用以下代码: $shell

我想使用shell脚本来更改目录的权限,该脚本由a执行,因此它在
apache
用户下运行。 不幸的是,有些目录的权限设置为
root


有没有办法将这个脚本运行为<代码>根>代码>或者有其他的选择我可以考虑吗?

< p>你找一个工具叫做<代码> Sudo:但是最有可能的是,不去做SUDO,你应该重新考虑你的应用程序架构,因为一旦你的HTTP被破坏了,攻击者可以轻松获得根权限。

我最近发布了一个项目,该项目允许PHP获取真实的Bash shell并与之交互。在这里获取:

下载后,您只需使用以下代码:

    $shell    = \MTS\Factories::getDevices()->getLocalHost()->getShell('bash', true);
    $return1  = $shell->exeCmd("/path/to/script");
    //the return will be a string containing the return of the script
    echo $return1;

或者您可以简单地绕过脚本,直接在PHP中通过shell发出原始命令。这种方法允许您处理异常

嗯,我决定使用cgi脚本suid。谢谢你的答复。