以下のシェルを、apacheユーザでphpから実行しようとしております。
#php
lang
1<?php 2exec("/var/www/html/test.sh");
#test.sh
lang
1#!bin/sh 2cd /var/www/html 3sudo mkdir test
そして、apacheからsudoが使えるように、
以下の記述をvisudoで追加いたしました。
lang
1apache ALL=(ALL) NOPASSWD: /var/www/html/test.sh 2#Defaults requiretty 3Defaults visiblepw
しかし、
lang
1[sudo] password for apache:
と聞かれてしまいました。。。
NOPASSWORDによって、パスワード無しでsudoできるはずなのですが。
ヒントなど教えていただければ幸いです。
#補足
以下のように、apacheからすべてのコマンドをsudoで実行できるようにした場合、
test.shが正常に動き、sudo mkdirがうまくいきました。
ただ、セキュリティ上よろしくないと思いますので、
以下の解決策以外がないかと考えております。
lang
1apache ALL=(ALL) NOPASSWD: ALL
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/01/02 21:36