[PHP-users 23364]Re: ImageMagickの利用とパーミッション

Hideo NAKAMITSU nomo @ bluecoara.net
2004年 9月 23日 (木) 14:47:37 JST


中満です.

On Thu, 23 Sep 2004 14:21:19 +0900
<alpha1280 @ yahoo.co.jp> wrote:

> また、Web公開ルートディレクトリのパーミッションを777にすると画像ファイルを
> 書込めるのですが、画像ファイルのパーミッションが644のため、user1からのファイ
>> 削除が出来なくなってしまいます。
-- snip --
> そこで、どのように設定するのが、セキュリティ的にも、利便性的にも一番適切だと
> 考えられるのか、アドバイスをいただければと思います

・system関数 + sudoを利用する
・system関数 + suexec(Apache付属)を利用する
   もしくは似たようなsuidラッパーを作る
・PHPをCGI+Suexecとして利用する
・画像保存の部分だけCGI + Suexecにする
・metuxmpm or perusermpmを使う
・mod_suid2 or mod_becomeを使う

いろいろあります.

system関数で実行されるコマンド"のみ"一般ユーザ権限で
実行させたいのであれば,手軽なのはApacheのsuexec
コマンドを利用する方法ですかね.

Apacheのコンパイルオプションにも依存しますが,
system("/usr/local/apache2/bin/suexec user1 group1 ./mkimg.sh");
とすることでmkimg.shはuser1:group1権限で実行されます.

もしApacheを再構築しても良い & 動作するのであれば,
個人的にmetuxmpmがオススメです.


PHP-users メーリングリストの案内