PHP 执行命令时sudo权限的配置

1、先写一个PHP文件

<?php
system('whoami');

先看自己的apache2的用户是谁,下面是笔者的截图,笔者使用apche2的用户是www-data

深度截图20170301094406

2、配置超级用户

  • 执行命令
sudo visudo
  • 加入红框内配置

    深度截图20170301094731

自己网络上搜寻大部分答案,只有上半句,无下半句,切记要加上去,参考:让php以root权限执行exec() 或 shell_exec()

  • 重启apache2
sudo service apache2 restart

3、修改PHP代码

<php
system('sudo whoami');

可以看到现在的权限已经是root

深度截图20170301094953

接下来你就可以任意使用 sudo yourcommand

附:

也有C语言实现的方法,不过也要进行上诉配置,不然还是没办法。。。