332 :
名無しさん@お腹いっぱい。 :
02/09/04 18:03 suexecでうまくCGIが動きません。 trussでみるとどうもsetgidでエラーが起きてるようです。 suexecを有効にさせるにはどうすればよいでしょうか。
334 :
名無しさん@お腹いっぱい。 :02/09/05 23:10
error_logみるんでわかるならtrussは使わん。。
マニュアルぐらい嫁
>>334 error_log や suEXEC のログを見て、何がわからないのか書け。
337 :
名無しさん@お腹いっぱい。 :02/09/07 00:28
だからsetgidでエラー。もちろん、グループは存在しているものです。
339 :
名無しさん@お腹いっぱい。 :02/09/07 07:55
もしかして、NFSだとうまく動作しない?
マニュアル嫁っつってんだろがヴォゲ
341 :
名無しさん@お腹いっぱい。 :02/09/07 14:32
PHP 4.2.3 Released
342 :
名無しさん@お腹いっぱい。 :02/09/07 14:41
マニュアルには書いてないだろう。 わからないんだったら、えらそうにいうな。
343 :
名無しさん@お腹いっぱい。 :02/09/07 14:47
補足するとマニュアルに記述されているセキュリティは守ってる。 trussの結果や、ソースでもやはりsetgidコールでエラーがでてる。 setgidがわかっていないといわれればそれまでだが。 えらそうにいうんだったら、解決方法はしってるんだろうな!
> 補足するとマニュアルに記述されているセキュリティは守ってる。 馬鹿にしているわけでは無いがshell上でidやってもらえないかな? それと、ファイル所有者がWEB上の実行者と同一であるかの確認をお願い.
つーか、ls -l の結果もはって。
>343 >setgidコールでエラーがでてる エラーにも種類があるだろヴォケ エラーの種類はログに出るだろヴォケ
347 :
名無しさん@お腹いっぱい。 :02/09/07 16:46
>>344-345 ありがとう。君の言いたいことはよくわかるよ。多分、それは問題ない。
そのマシンは今手元にないんだ。スマンね。
正直これだけの情報じゃ、特定できないのはわかってるよ。
でも、同じところで悩んだ人がいたら、ヒントくれるかなって思って
書き込んでみた。
>>346 自分でソース読めと言ったわりには、よくそんなこといえるね。
君のレベルは痛いほどわかったよ。
>>343 逆ギレかよ(w
質問する香具師の態度には見えんな。ウセロ
349 :
名無しさん@お腹いっぱい。 :02/09/07 17:03
俺の書き方も悪かったんだが、 「どうせsetgidビットが立ってるファイルを実行させてるんだろう」 という推測から 「マニュアル嫁」 とあおったんだと思う。 俺が苦労してるのに、素人と思われてあおられたのが癪だった。 「それで解決するなら質問しないよ」とね。 気を悪くさせたら、スマン。 もし、このあたりで悩んだ人がいたら、ヒントだけでも教えてくれ。
>>347 =349
質問する方がそう思ってても回答する側がそれを理解できるようにしないと
"質問する前にもっと努力しろ"ってなるんじゃない?
351 :
名無しさん@お腹いっぱい。 :02/09/07 17:17
反省してます。。
352 :
名無しさん@お腹いっぱい。 :02/09/07 17:30
エラーが出てるソースはここ。 /* * Change UID/GID here so that the following tests work over NFS. * * Initialize the group access list for the target user, * and setgid() to the target group. If unsuccessful, error out. */ if (((setgid(gid)) != 0) || (initgroups(actual_uname, gid) != 0)) { log_err("emerg: failed to setgid (%ld: %s)\n", gid, cmd); exit(109); }
ソース読んで欲しいの?(w setgid が効かない状況って普通に考えてマニュアルに 書いてあるような状況しかないんじゃない? 俺学生時代ISPのサポセンやってたけど自称「素人じゃない」人で ほんとに素人じゃない人はエラー内容や自分でやった事の正確な報告と 現時点での予想はちゃんとやってたね。 例えばソース出す時はsuexec.cみたいな、そのものズバリ なファイルでもファイル名ぐらい出すのを忘れないし、 最低でもprintfに書き加えてデバッグ結果ぐらい出すからね。 >setgidがわかっていないといわれればそれまでだが。 setgid()なんて*BSDのjmanにだって載ってる関数だから UNIX素人の俺的には素人馬鹿にされるとむかつくわ。
354 :
名無しさん@お腹いっぱい。 :02/09/08 00:27
読んでほしいってほどのソースではないでしょう。一目瞭然。 setgid()のマニュアルには存在してないグループでエラーしかない。 グループが存在してるのにエラーになってる。 理由を教えて!
355 :
名無しさん@お腹いっぱい。 :02/09/08 00:49
いちおうFreeBSDのmanからコピペしたもの。この条件以外でエラーが 出るのか? ホント? ---------- エラー 本関数は次の場合に失敗します: [EPERM] ユーザがスーパユーザでない場合、または指定された uid がその実 ID、実効 ID、または退避 ID でない場合。
356 :
名無しさん@お腹いっぱい。 :02/09/08 01:03
>>355 正確にはsetgidだから
ユーザーがスーパー・ユーザー(super-user)でなく、 gid が呼び出したプロセスの実効グループID または保存セットグループID と一致しない。
なんだけどね。
少なくともそのgidは実際に存在している。
しいてあげるなら、httpdがwwwで動いていることだが。。
これがだめなら、suexecは成り立たないだろうし。
だから、困ってるんだよね。。
俺は素人じゃない、って言い張る奴に限ってアホが多い 煽りじゃなくて、統計的に意見出してるだけよ。
なんか原因が分かったような気がするけどあえて言わない
一見だからえらそうにはいえんが、A or B のところで エラーが出てるのに、なんでAでエラーが起きたという ケースだけしか考えないの? Bは絶対にtrueだっていう保証があれば別ですが。
*BSDなMLでたまに見る言葉 > 言われた事が出来ないヒトにはまともなアドバイスがつかなくなりますよ. >356 > しいてあげるなら、httpdがwwwで動いていることだが。 Apacheの親をwwwで動かしてるとでも言いたいの?
>Bは絶対にtrueだっていう保証があれば別ですが。 それこそ、ソース見れとしか言えないよね。 それと捨てハンでもかまわないけど何か名乗ってくれないかな.
>>358 335はいいとして、340は単なる煽りだろ。
どう考えても「意見」とは思えんが。
359も完全な煽りと思うけど。
>>360 ,362
trussではsetgidでエラー。initgroupsまでいってないとおもわれ。
>>361 suexecはhttpリクエストを受けた子プロセスじゃなくて
親プロセスが実行してるってわけか。
これ正しい?
359 に1票。
こっそり訊いてみるけどOSは何? >363
だから、マニュアル嫁って何回言わせる気だよヴォケ setgidのエラーになる条件を調べたのかよヴォケ
ところで332君は何でこのスレみてますか。ブラウザ? 君が単なる煽りだろうけどといったレスの名前欄あたりごにょごにょ っと調べてみると吉。その点navi2chは便利だ。 と気づいてないようなのでヒントを出してみるテスト。
はじめから本文に書けよ。
それじゃ面白く無いじゃん
はじめから本文には書きませんよって本文にかいてあるじゃない(わら
なるほど。 suexecはそういう仕組みか。。。 いろいろパーミションいじったからそうかもしれない。 マニュアルには書いてないけどね。