apacheからwebインタフェースを介して他ユーザプロセスでコマンドを実行する方法の覚書。
/etc/sudoers
# Disable "ssh hostname sudo
# You have to run "ssh -t hostname sudo
#
#Defaults requiretty ←コメントアウト
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
apache ALL=(ALL) NOPASSWD:ALL ←追加
PHPなら下記コマンドで、ユーザ名で指定したユーザがコマンドを実行する。
exec('sudo -u ユーザ名 コマンド', 返却値);
ちなみに、apacheが他ユーザのコマンドを実行できてしまうので、セキュリティ上問題は大いにあると思われる。
mail
コメントする