turbolinux server7.0でapacheの設定をしているんですが、ユーザwebuserのホームディレクトリにpubulic_htmlを作成し,適当なindex.htmlを置きました。
/home/webuser/public_htm/index.html
です。
srm.confに
UserDir public_html
を追加すると
http://ホスト名/~webuser/index.html
でアクセスできますよね。
(ここまではよくすることですよね)
ここから質問なんですが、
/home/webuser
フォルダのアクセス権に
その他 → “入る"のアクセス権をチェックしないとブラウザからアクセス権なしのエラーが返ってきます。
他人へは
/home/webuser/public_htm/以下のみにアクセス権を与えたいのに、/home/webuser/の段階で“入る"のアクセス権の許可をしないといけないんでしょうか?
NTや2000ならこんなこと無いのに・・・
これってLinuxの仕様ですか?
※ちなみに“入る”のアクセス権の意味を正確に理解できていません。(Linuxは初心者です)
No.1
- 回答日時:
そりゃそうでしょう。
ディレクトリは階層構造になってるんですから。
/home/webuserに入れないってことは、
そこから下の階層には一切、入れません。
例えば会社という組織を考えると、「企画部第一庶務課」という
部屋に行きたい人は、その会社のビルの入り口の立ち入り許可を
もらって、さらに企画部のフロアの立ち入り許可をもらって、
としないと、その課まではたどり着けないでしょう。窓から
縄梯子でも下ろさない限り。
このケースでも縄梯子を下ろす手があると言えばあるんですけどね。
早速のご回答ありがとうございます。
やっぱりそうなんですか。
これだと、NT、2000に比べるとアクセス権のしくみは非常にシンプルですね。
その代わり、複雑なアクセス制御は基本的にはできないということでいいのでしょうか?
No.2
- 回答日時:
基本的に上位ディレクトリにアクセス権が無ければ、いくら下位ディレクトリにアクセス権があってもアクセスできないのは、普通だと思いますよ。
apacheは通常[nobody]ユーザとして動いているのでアクセス権的には「その他」に分類されます。
> NTや2000ならこんなこと無いのに・・・
Win2kでもNTFSを使っていれば同じことです。
"入る"のアクセス権はディレクトリに対しては「サブディレクトリへの移動の権利」を表しており、ファイルに対しては「そのファイルを実行する権利」を意味しています。
この回答への補足
ありがとうございます。
ただ
>> NTや2000ならこんなこと無いのに・・・
>Win2kでもNTFSを使っていれば同じことです。
の部分は納得行かないです。
NTやW2Kの場合、以下のように
folder_Aを作成してAdministratorのみフルコン設定
folder_Aのサブディレクトリにfolder_BをEveryoneフルコン設定
folder_Bの中にindex.htmlを作成
folder_BをIISで公開
IISではfolder_BにAnonymous接続許可する
これだと、ブラウザからは誰でも接続できます。
だから,NTやW2Kとは考え方が異なると思うのですが・・・。(少なくともブラウザからのアクセスに関しては)
No.3
- 回答日時:
IISはいじったことが無いし今後もいじるつもりも全く無いので推測ですが、
問題はサーバ(IIS or apache)の実行ユーザの問題ではないですか?
> folder_Aを作成してAdministratorのみフルコン設定
というのは、他のユーザは全て読み取り禁止ってことですよね。
Administratorのみフルコンで後は読取りのみとかではないですね?
(そうじゃないと、/home/webuserが他者に読み取り許可を
与えていない設定になっていることと比較する意味が無い)
IISの実行ユーザがAdministratorsグループのメンバー(または
Administrator自身)であるために、Administratorしか
読めないフォルダが読めてるだけじゃないですか?
もちろん、apacheの実行ユーザを管理者(root)にすれば、どの
ディレクトリでも読めるのでこの問題は発生しません。ただ、全く
推奨できる設定ではないです。万一セキュリティホールによって
apacheが乗っ取られた場合、apacheがroot権限を持っていれば
システム領域の破壊が簡単にできてしまいます。こういうことを
防ぐために、apacheはデフォルトで単なる一ユーザよりもさらに
制限されたユーザ(nobody)で実行されるようになっています。
IISでも同じことが言える、というかセキュリティホールの発見
頻度から見てさらに危険で、IISをAdministratorsグループで
実行するのは致命的でしょう。
> これだと、ブラウザからは誰でも接続できます。
認証はまた別の問題で、FTP認証はFTPサーバがやります。HTTPの
認証はapacheがやりますが、それはLinuxのユーザとは全く独立で、
ファイルのアクセス権とは無関係です。
この回答への補足
> >folder_Aを作成してAdministratorのみフルコン設定
>というのは、他のユーザは全て読み取り禁止ってことですよね。
もちろんそうです。
IISの実行ユーザはデフォルトでは“system”アカウントを使用します。ただ、このIISの実行ユーザの変化によってクライアントからアクセスができたりできなかったりする事はないと思います。
LINUXの場合、apacheの実行ユーザを管理者(root)にした場合、どのユーザ(ブラウザ)からも全てのディレクトリにアクセスできるのですか?できるとすれば根本的にIIS(NT)とApache(linux)は考え方が異なるという事になると思います。
No.4
- 回答日時:
> このIISの実行ユーザの変化によってクライアントからアクセスが
> できたりできなかったりする事はない
ほんとうにそうですか?それはIISを自分のユーザアカウントで
実行してもAdministratorしかアクセスできないフォルダが
公開されてしまうということですよ。これは重大なセキュリティ設計上の
欠陥ですから、さすがにあの会社でもそれはないと思うんですがねぇ。
もしそうなら、Apacheはデフォルトではそうなっていないので、
この点は違いますね。ただ、Linuxでもそのようなアプリケーションを
つくることは可能です。
あと、先程の最後にも書きましたが、ApacheはHTTPのサーバなので、
クライアントがどのユーザか、ということは関知しません。これは、
HTTPに関して言えば、IISも同じはずです。だってユーザ名を
送るようになってない同じブラウザでIISにもApacheにも接続できるん
ですから。
例えばwww.goo.ne.jpに接続してユーザ名を聞かれないのは、
anonymousログインをしているのではなく、そもそもログインという
行為がないのです。
ただ、一部のホームページにユーザ認証がかかっていることがありますが、
これはシステムに存在するユーザアカウントとは独立のパスワードデータ
ベースを使って認証が行われます。したがって、ディレクトリの所有者とは
関わりがなく、相変わらず実行ユーザであるnobodyがアクセスできる
とこしかアクセスできません。
IISで、HTTPでのユーザ認証にOSに登録されてるのと同じアカウントが
使われるのか、という点は知りません。
クライアントのユーザ名が重要になるのは、FTPのときです。これは
Linuxでは全く別のプログラムで管理されています。したがって、
相違点の2つ目としては、apacheはIISのようにHTTPとFTPを一緒に
サービスするということはしない、ということですね。
あと、もちろん、DocumentRoot(このディレクトリより下の
ディレクトリだけを公開する)は設定するので、実行ユーザを
rootにしたとしても、DocumentRoot以下が全て見えるというだけで、
それより上の階層のディレクトリは見えません。
非常に詳しくありがとうございました。
IISではDocumentRoot以外を公開する場合、
まず、公開するディレクトリを選択します。
で、そのディレクトリにAliasをつけます。
次に、そのディレクトリはanonymous接続許可するかどうかを選択します。
■anonymous許可とした場合
IISはそのフォルダのアクセス権でIUSR_SEVERNAMEアカウントに読み込み権限があるか調べます。あった場合、全てのユーザは認証なしでアクセスが可能となります。
■anonymous許可しないとした場合
IISはそのフォルダのアクセス権を調べます。クライアントがネットワークにログインしたとき(起動したとき)のID/PWが、アクセスされるフォルダに設定されたアクセス権と一致しておればパススルーでアクセスできます。もし、一致しなければ認証画面が出てきます。
この流れからみて、ApacheとIISはどう考えても仕様が異なると思います。
正直言ってIISよりApacheのほうが自然なアクセス制御だと思いますし、シンプルですね。
No.5ベストアンサー
- 回答日時:
どうやらIISはカレントディレクトリのパーミッションしか見ていない様子ですね。
失礼しました、、、というより非常にびっくりでした、、、
ただ、基本的には上位ディレクトリにアクセス権が無ければ下位ディレクトリに移動できないのが普通のアクセスコントロールに対する考え方だと思います。
これは「Linuxの仕様」というよりも「UNIX一般のアクセスコントロールの考え方」といったほうが正しいでしょう。
NTFS+IISならディレクトリ名さえ分かっていれば(既知ならば)、途中のディレクトリのアクセス権に関らず、目的のファイルにアクセスできるという事を意味します。かなり危険な気がしますよ。
(注:もちろん対象のファイルにアクセス権が無ければ開けませんが、そのディレクトリには移動可能です)
個人的に言えば「IISの挙動の方が非常に変」といった所でしょうか、、、
IISは、通常[IUSR_XXXX]というアカウントでアクセスしています。もし、アクセス権が無いディレクトリ/ファイルへアクセスしようとした際は、クライアント側のブラウザがIEなら、パスワード入力ダイアログボックスを開いてきます(ApacheのBasic認証のようなダイアログボックスです)。このダイアログボックスにNT/W2k上(IIS上)の実在するアカウント名を入力すれば、今度はその入力されたユーザ権限でアクセスするという奇妙な仕様になっています。
> できるとすれば根本的にIIS(NT)とApache(linux)は
> 考え方が異なるという事になると思います。
そうですね。両者は明らかにアクセス権に対する考え方は異なりますね。
まぁ、この件は良い悪いの問題では無いので「どちらの挙動が普通か?」と問われれば「UNIXの挙動の方が普通だ」という回答をします。
そうですよね。
やっぱりIISとApacheは考え方違いますよね。
なんかホッしました。
今思うのは、apache(UNIX)の考え方のほうがシンプルで管理しやすいということです。IISアクセス権の考え方はMSの共有フォルダの考え方を引きずっているからでしょうか。(きっとそうでしょうね)
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Power User と Administrator ...
-
アプリケーションソフトをユー...
-
usermodのオプションについて
-
自分以外のレジストリーを参照...
-
win11 共有と保護
-
管理者のみ
-
Proxy Errorってどう対処したら...
-
パラメータが不足しています ...
-
「プロキシサーバーをバイパス...
-
LinuxでのDNSキャッシュ表示
-
ファイルシステムがFAT32でファ...
-
会社で禁止されているWEBページ...
-
Linuxでroot宛てメールの転送
-
IPアドレス(数列)だけでWEBサ...
-
LinkStationへのアクセスログ...
-
グローバルIPアドレス指定のWeb...
-
「marunouchi.tokyo.ocn.ne.jp...
-
ダウンローダー、プロキシの事...
-
Yahoo! Japan(以下、Yahoo!)に...
-
19インチラック設置について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Power User と Administrator ...
-
自分以外のレジストリーを参照...
-
アプリケーションソフトをユー...
-
ユーザ名と同じグループがなぜ必要
-
Debugger users,Administrators...
-
サービスの再起動が、権限の問...
-
プロファイルが保存されていな...
-
所有者は違うがグループが同じ...
-
バックグラウンドでの処理について
-
ftpにてホームディレクトリ...
-
MacOS9で起動パスワードを設定...
-
win11 共有と保護
-
ユーザー権限でシャットダウン...
-
HTTP 401.1エラー 権限があり...
-
ユーザ権限(Guests、Users、Ad...
-
Admini権限でiTune取得
-
レジストリPoliciesのアクセス権
-
apacheでCGIの置き場所
-
Sambaサーバーに接続できない
-
パーミッション 777 or 755?
おすすめ情報