我正在编写一个PHP应用程序,我希望能够添加新的列表到我的Ubuntu服务器上运行的邮递员。 由于某种原因,邮递员的新build脚本需要root权限。 有什么办法,我可以得到新的列表,不需要sudo? 显然,我不能只是规避sudo,但有没有什么可能的方式来得到这个工作?
谢谢Daniel
我很困惑,你会怎么认为sudo是一个笨蛋。 你可以使用指定的具体命令,并没有密码将是必需的特定用户ID:
username all = (root) NOPASSWD: specific-command
如果单个或有限数量的命令不可用,则编写您想要的function并将其用作sudo命令。
你的另一种select是作为root用suid所需的特定命令。 但是,取决于您所处的环境可能会带来安全风险。
根特权?
至less在Debian上(Ubuntu是基于的)Mailman是默认运行的list用户和组,当我从shellpipe理列表时,我以list用户身份login。
我认为将你的Apache用户添加到list组应该足够了。
为了更好的安全性,你也可以使用类似suPHP的东西,并以列表用户的身份运行你的列表pipe理用户,并让其他脚本由其他用户运行。