Top過去ログ目次掲示板

作成日:2006年01月19日 作成:おやじ
掲示板で過去に質問された内容です。

No.5537 Apacheの起動ユーザ


No.5537 投稿時間:2006年01月19日(Thu) 19:53 投稿者名:ath URL:
タイトル:Apacheの起動ユーザ

Vine linux 3.2, apache2,proftpdを使用しています。

今はapacheの稼働するuser,groupはapache,apache(ディフォルト)で行っています。
proftpdでファイルを転送するために、ユーザーhogeのホームディレクトリ
/home/hoge/www をルートディレクトリとして公開。
ftpでhogeでログイン→アップロード→見れる
のですが、cgiなどはもちろんapache権限で実行されるため
cgiによって作成されたファイルをhogeが削除できません。
当たり前といえば当たり前なのですが、どうすればこの問題を解決できますか?

apacheをnobody:nobodyで起動させればと思いましたが、皆さんが実際に
どうやっているのかが気になりましたので質問させてもらいました。
皆さんがやっている方法などを教えてください。


No.5539 投稿時間:2006年01月19日(Thu) 22:52 投稿者名:おやじ URL:
タイトル:おやじの環境では、SuexecUserGroupで何も問題ありません

> Vine linux 3.2, apache2,proftpdを使用しています。
>
> 今はapacheの稼働するuser,groupはapache,apache(ディフォルト)で行っています。
> proftpdでファイルを転送するために、ユーザーhogeのホームディレクトリ
> /home/hoge/www をルートディレクトリとして公開。
> ftpでhogeでログイン→アップロード→見れる
> のですが、cgiなどはもちろんapache権限で実行されるため
> cgiによって作成されたファイルをhogeが削除できません。
> 当たり前といえば当たり前なのですが、どうすればこの問題を解決できますか?
>
> apacheをnobody:nobodyで起動させればと思いましたが、皆さんが実際に
> どうやっているのかが気になりましたので質問させてもらいました。

Vine linux 3.2がSuEXECになっているか知りませんが、おやじの場合はバーチャルホストでSuEXECで動かしているので、SuexecUserGroup で一般ユーザ(FTPと同じユーザ。例えば、hogehoge:users)にして動かしています。そのため、メインホストは確かにapache:apacheですが、この場合、hogehoge:usersで動作するので何も問題はありません。SuexecUserGroup については下記を参照ください。

http://www.aconus.com/~oyaji/suse/apache_virtual_suse.htm

後は、削除するCGIを作るとか、SSHでログインして消すとか?ですかね?


No.5543 投稿時間:2006年01月20日(Fri) 09:42 投稿者名:祇園 URL:
タイトル:Re: Apacheの起動ユーザ

Vineのapacheはsuexecは付いていません。むしろこれが普通です。
他人にサイト開放しCGIも許可するならsuexecが必須になります。
athさんが用意したCGIだけしか使わせなければあえてsuexecをつける必要はありません。

> cgiによって作成されたファイルをhogeが削除できません。
> 当たり前といえば当たり前なのですが、どうすればこの問題を解決できますか?

削除できますよ。削除権限が無いからでしょう。Unixではファイル削除権限はファイルの書込み許可でなくディレクトリーの書込み許可です。
多くのレンタルサーバーのように、ファイルは666ディレクトリーは777で行えば良いと思います。



掲示板▲頁先頭