%20%E3%83%87%E3%82%A3%E3%83%AC%E3%82%AF%E3%83%88%E3%83%AA%E4%BB%A5%E4%B8%8B%E3%81%AE%E6%A8%A9%E9%99%90.png)
ディレクトリの権限/foo/bar/baz
が 700 ( rwx------
) に設定されており、そのディレクトリの所有者 (およびスーパーユーザー) 以外はアクセスできない場合、 の下にあるディレクトリとファイルの「グループ」権限と「その他」権限が何であるかは問題になりますか/foo/bar/baz
?
この質問をするきっかけとなったのは、ファイルが
/root/.bashrc
/root/.profile
新しくインストールされた Debian システムの のrw-r--r--
パーミッションは 644 ( ) です。私は 600 ( ) を期待していましたrw-------
。しかし、/root
自体のパーミッションが 700 であることに気付きました。これにより、ディレクトリのパーミッションが 700 になると、その下にあるすべての g および o パーミッションが無意味になるのではないかと考えました。
(答えが「いいえ」の場合、つまりコンテンツのg-およびo-権限がまだパス上のコンポーネントに700の権限があっても問題にならないのであれば、何か理由があるかどうか知りたいですない上記のファイルの権限を 600 に変更します。
答え1
はい、そうかもしれません。
下に他のユーザーが読み取り可能なファイルを作成し/foo/bar/baz
、アクセス可能なパスでこのファイルへのハードリンクを作成すると、 の権限に関係なく、他のユーザーがそのファイルを読み取ることができます/foo/bar/baz
。
答え2
ディレクトリが の場合700
、所有者 (およびルート) だけがアクセスできます。
つまり、他のユーザーはそのディレクトリ内のファイルを表示できず、変更することもできません。
そうです、おそらくそのディレクトリ内のすべてのファイルを または600
または400
に変更できるでしょう700
が、なぜわざわざそうするのでしょうか? 誰かが root の を読み取ることができる (ただし、書き込みはできない) ことや、root がホーム ディレクトリの権限を に変更することが問題になるのでしょ.bashrc
う.profile
か777
?
ベストプラクティスとして、root のファイルは.bashrc
、可能な限りデフォルトに近づける必要があります。root として作業しているときに予期せぬ事態は避けたいものですし、これらのファイルに秘密を保存するのは愚かなことです。.profile