un*x環境でのchmod/chgrpの挙動についての質問です.GNU fileutilsを使用すると仮定します.


(1) chmod 606 などのパーミッションの設定をcgi設置などの説明で見かけますが,otherに権限を与えてかつgroupを0にする理由ってなんでしょうか.
groupにあてはまるローカルユーザは0が適用されてcd/lsできなくなるが,グループに所属していない(普通の)UAが外部からアクセスするぶんには実行でき,参照もできるという動作になるんでしょうか?
manを読んだんですが,ugoのどれが当てはまった時に優先されるかがよくわかりませんでした.otherというのは/etc/passwdに登録されていないユーザ全て,ということになるんでしょうか.
例えば,意味がないかとは思いますが chmod 007 などとした場合のオーナーユーザ, グループユーザ,その他の動作はどうなるんでしょう.

(2) chgrp,newgrp,gpasswdによるアクセス制御の実例を解説したURLを教えて下さい.
manを読むとroot以外のユーザをグループ管理者にする?という意味に見えるんですが…

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/04/21 16:42:56
  • 終了:2006/04/22 18:12:35

ベストアンサー

id:ttamo No.1

たも回答回数175ベストアンサー獲得回数292006/04/21 23:07:39

ポイント100pt

ずいぶんたくさんの質問ですね。(笑)

できるだけ実際に試しましたが、間違っていたらすみません。

http://www.bookshelf.jp/cgi-bin/goto.cgi?file=fileutils-ja&n...

(1) chmod 606 などのパーミッションの設定をcgi設置などの説明で見かけますが,otherに権限を与えてかつgroupを0にする理由ってなんでしょうか.

CGI 設置でそういう説明が多いのは、group がどうでもいいからだと思います。普通に作成したファイルの所有 group は自分しかメンバーでないから、group に権限を与えても与えなくても関係ないということでしょう。おそらく。


groupにあてはまるローカルユーザは0が適用されてcd/lsできなくなるが,グループに所属していない(普通の)UAが外部からアクセスするぶんには実行でき,参照もできるという動作になるんでしょうか?

はい、そんな感じです。オーナー (user) でない group メンバーはそのファイルを読み書き不可能になり、user でも group でもないユーザ (others) は読み書きできますね。

「外部から」という場合には apache を想定なさっているのかもしれませんが、その場合は apache がどういう権限で動いているかによって異なります。

manを読んだんですが,ugoのどれが当てはまった時に優先されるかがよくわかりませんでした.

実験してみたところ、u,g,o の順になるようです。すなわち、所有者には u の部分だけが影響します。所有者以外で group の人は、others の権限がどうなっていても関係なく group のアクセス権が適用されるようです。ですから場合によっては others よりも制限が厳しくなりますね。

otherというのは/etc/passwdに登録されていないユーザ全て,ということになるんでしょうか.

いいえ、others というのは、そのファイルの所有者 (user) でも所有グループ (group) メンバーでもないユーザです。/etc/passwd には書かれている必要があります。

/etc/passwd に書かれていないユーザがシステムにいるという場合、そのシステムは完全にイカレていると思います。

例えば,意味がないかとは思いますが chmod 007 などとした場合のオーナーユーザ, グループユーザ,その他の動作はどうなるんでしょう.

オーナーは(一応)読み書きできなくて、グループユーザ(非オーナ)は完全に読み書きできなくて、その他のユーザは読み書きと実行が可能です。

ただし引き続き、オーナーは権限を変えたりすることができるため、実際には「読み書きできない」といっても「ポカミス防止」程度です。

(2) chgrp,newgrp,gpasswdによるアクセス制御の実例を解説したURLを教えて下さい.

manを読むとroot以外のユーザをグループ管理者にする?という意味に見えるんですが?

chgrp でファイルの所有グループを変えます。

newgrp は su みたいなものです。

実際に使っている画面があるのは

http://x68000.q-e-d.net/~68user/unix/pickup?chmod

http://www.linuxworld.jp/command/ (の 107, 110, 116)

あたりなどです。

id:clock9

緻密な回答ありがとうございます.基本に立ち返ろうと思ったらあちこちよくわかってない項目がでてきてごちゃごちゃになってしまって.Linuxworldの記事は未見でした.

一応理解できたと思います.

2006/04/22 18:12:06

その他の回答(1件)

id:ttamo No.1

たも回答回数175ベストアンサー獲得回数292006/04/21 23:07:39ここでベストアンサー

ポイント100pt

ずいぶんたくさんの質問ですね。(笑)

できるだけ実際に試しましたが、間違っていたらすみません。

http://www.bookshelf.jp/cgi-bin/goto.cgi?file=fileutils-ja&n...

(1) chmod 606 などのパーミッションの設定をcgi設置などの説明で見かけますが,otherに権限を与えてかつgroupを0にする理由ってなんでしょうか.

CGI 設置でそういう説明が多いのは、group がどうでもいいからだと思います。普通に作成したファイルの所有 group は自分しかメンバーでないから、group に権限を与えても与えなくても関係ないということでしょう。おそらく。


groupにあてはまるローカルユーザは0が適用されてcd/lsできなくなるが,グループに所属していない(普通の)UAが外部からアクセスするぶんには実行でき,参照もできるという動作になるんでしょうか?

はい、そんな感じです。オーナー (user) でない group メンバーはそのファイルを読み書き不可能になり、user でも group でもないユーザ (others) は読み書きできますね。

「外部から」という場合には apache を想定なさっているのかもしれませんが、その場合は apache がどういう権限で動いているかによって異なります。

manを読んだんですが,ugoのどれが当てはまった時に優先されるかがよくわかりませんでした.

実験してみたところ、u,g,o の順になるようです。すなわち、所有者には u の部分だけが影響します。所有者以外で group の人は、others の権限がどうなっていても関係なく group のアクセス権が適用されるようです。ですから場合によっては others よりも制限が厳しくなりますね。

otherというのは/etc/passwdに登録されていないユーザ全て,ということになるんでしょうか.

いいえ、others というのは、そのファイルの所有者 (user) でも所有グループ (group) メンバーでもないユーザです。/etc/passwd には書かれている必要があります。

/etc/passwd に書かれていないユーザがシステムにいるという場合、そのシステムは完全にイカレていると思います。

例えば,意味がないかとは思いますが chmod 007 などとした場合のオーナーユーザ, グループユーザ,その他の動作はどうなるんでしょう.

オーナーは(一応)読み書きできなくて、グループユーザ(非オーナ)は完全に読み書きできなくて、その他のユーザは読み書きと実行が可能です。

ただし引き続き、オーナーは権限を変えたりすることができるため、実際には「読み書きできない」といっても「ポカミス防止」程度です。

(2) chgrp,newgrp,gpasswdによるアクセス制御の実例を解説したURLを教えて下さい.

manを読むとroot以外のユーザをグループ管理者にする?という意味に見えるんですが?

chgrp でファイルの所有グループを変えます。

newgrp は su みたいなものです。

実際に使っている画面があるのは

http://x68000.q-e-d.net/~68user/unix/pickup?chmod

http://www.linuxworld.jp/command/ (の 107, 110, 116)

あたりなどです。

id:clock9

緻密な回答ありがとうございます.基本に立ち返ろうと思ったらあちこちよくわかってない項目がでてきてごちゃごちゃになってしまって.Linuxworldの記事は未見でした.

一応理解できたと思います.

2006/04/22 18:12:06
id:houndyz No.2

houndyz回答回数1ベストアンサー獲得回数02006/04/22 02:29:20

ポイント10pt

http://www.e-provider.jp/server/cgi.html

レンタルサーバーなどで運用される手法ですね。

複数の人にサーバーを開放する際、各ユーザー間のアクセスは排他的に、Webサーバー等のデーモンからは全てのユーザー情報にアクセスできるようにする手法です。

otherはu,gに該当しないユーザーということであり、passwdに含まれないユーザーという概念はありません。

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません