正如标题所说,我正在寻找一种方法来运行具有root权限的CGI脚本(在Ubuntu上运行在APACHE上)。
特别是,脚本的某些命令可以由当前用户(apache
)执行,但其他命令需要root权限(如iptables
)。
我也可以编写包含这些特权命令的“子脚本”,但仍然保留以root权限执行它们的问题。
我也很困惑用C或PERL或bash脚本语言编写CGI。有什么建议吗?
答案 0 :(得分:2)
最好的方法是将 sudo 用于此类脚本。在这种情况下,您必须指定哪些命令可以运行脚本。
在/ etc / sudoers:
wwwdata ALL=(ALL) /usr/local/bin/allowed-operation
然后在剧本中:
sudo /usr/local/bin/allowed-operation