web-dev-qa-db-ja.com

権限、所有者、グループ継承?

ディレクトリのネストに関する制限を理解していません。たとえば、/var/www/folder/index.htmlディレクトリ。

  • すべてのディレクトリとファイルにはどのような許可、所有者、グループが必要ですか?
  • 継承のようなものはありますか?つまり、外側のディレクトリのアクセス許可、所有者、グループは、内側のディレクトリとファイルに影響しますか?

ここでのすべての回答は、1つの個別のディレクトリとその中のファイルに関してのみ許可を説明しています。誰も継承に注意を払いません。

たとえば、/var/www/folderディレクトリとそのすべてのサブディレクトリとファイルを提供するNginxサーバーをセットアップしたいです。許可、所有者、グループについてどう考えるべきですか?

  • /var-許可は何ですか?所有者およびグループとは何ですか?
  • /var/www-許可は何ですか?所有者およびグループとは何ですか?
  • /var/www/folder1-許可は何ですか?所有者およびグループとは何ですか?
  • /var/www/folder/folder2/-許可は何ですか?所有者およびグループとは何ですか?
  • /var/www/folder/folder2/index.html-許可は何ですか?所有者およびグループとは何ですか?
3
Green

ただのリマインダー:

Ubuntuは、デフォルトのパーミッション755のフォルダーとデフォルトのパーミッション644のファイルを作成します。umaskで遊んで、このデフォルト値を変更できます。したがって、一般に、ファイルは親のアクセス許可を継承しません。代わりに、新しく作成されたファイル/ディレクトリにはデフォルトのアクセス許可があります。


質問に戻ります。

許可と混同されています。許可はあなたが何をしたいのか、どのレベルのセキュリティを使用したいかに関連していることを知ってほしいので、これはユーザー自身に関連しており、誰もあなたの質問に答えることができません!!

また、フォルダーitslefのアクセス許可または内部のファイルを区別する必要があります。たとえば、/ varのアクセス許可を要求します。では、/ varとはどういう意味ですか?つまり、ディレクトリ自体またはインクルードファイルを意味します。前に言ったことを説明するために例として取り上げましょう。/varに含まれるものを見てみましょう。

$ ls -l /var
total 128
drwxr-xr-x   2 root root      4096 Jul 17 08:18 backups
drwxr-xr-x  27 root root      4096 Jun  2 13:01 cache
drwxrwsrwt   2 root whoopsie  4096 Jul 24  2014 crash
drwxr-xr-x   2 root root      4096 May 20  2014 games
drwxr-xr-x 107 root root      4096 Jul 14 12:25 lib
drwxrwsr-x   2 root staff     4096 Apr 19  2012 local
lrwxrwxrwx   1 root root         9 May 22 12:52 lock -> /run/lock
drwxr-xr-x  31 root root     12288 Jul 23 08:02 log
drwxrwsr-x   2 root mail      4096 Apr  7  2014 mail
drwxr-xr-x   3 root root      4096 Jun 20  2014 NX
drwxr-xr-x   2 root root      4096 Apr  7  2014 opt
-rw-r--r--   1 root root     65408 Jul  2 10:27 _r_udev_201310127.shm
lrwxrwxrwx   1 root root         4 May 22 12:52 run -> /run
drwxr-xr-x  14 root root      4096 Jun 17 20:29 spool
drwxrwxrwt   3 root root      4096 Jul 23 08:24 tmp
drwxrwxrwx   8 root root      4096 Jun  4 13:16 www
drwxr-xr-x   3 root root      4096 Jun 13 09:10 yp

上記のサンプルリストにあるように、グループがルートではないcrash、local、mailなどのディレクトリがあります!!どうして?前に言ったことは、これが使用に関連しているからです。

そのため、一般的には、可能な限りセキュリティを確保して作業を許可する権限を使用するだけです。

許可の詳細については、私の答えをご覧ください https://askubuntu.com/a/638799/150504 .

3
Maythux

ls -lを実行して、特定のディレクトリ内のすべてのファイルとディレクトリの権限、所有者、およびグループを一覧表示します。

ls -l /var
ls -l /var/www
ls -l /var/www/folder1
ls -l /var/www/folder/folder2

index.htmlは最後のディレクトリのリストされたコンテンツに含まれるため、コマンドは不要です。

ただし、そのファイルの所有権と許可を知りたい場合:

ls -l /var/www/folder/folder2/index.html

ファイルのアクセス許可は、ファイルの次の形式でリストされます。

-rwxrwxrwxは、すべてのユーザーの読み取り、書き込み、実行の許可を示します。

ディレクトリの場合:

drwxrwxrwx

最初のrwxは、ファイルの所有者の読み取り、書き込み、実行の許可を示します。

次の3文字のrwxは、ファイルに対してリストされているグループ内のすべてのユーザーの読み取り、書き込み、実行の許可を示します。

最後の3文字のrwxは、すべてのユーザーの読み取り、書き込み、実行の許可を示します。

一緒に、-rwxrwxrwx、各グループに3文字の文字の3つのグループがあります。

次のコマンドexampleは、ファイルの所有者に完全な権限を許可し、グループの他のメンバーに対してのみ読み取りを許可し、他のユーザー(-rwxr--r--)に対してのみ読み取りを許可します。

chmod 744 /var/www/folder/folder2/index.html

または、特定のディレクトリ内のすべてのファイルとディレクトリにアクセス許可を適用する場合は、-Rフラグを使用して、ディレクトリ全体にアクセス許可を再帰的に適用します。

chmod -R 744 /var/www/folder/folder2

または、含まれるすべてのファイルにアクセス許可を適用し、すべてのサブディレクトリに再帰的に適用するには:

chmod -R 744 /var/www/folder/folder2/*

番号7rwxと一致します。

番号6rw-と一致し、実行の許可を許可しません。

番号5r-xと一致し、書き込み許可を許可しません。

番号4は、r--読み取り専用と一致します。

番号3-wxと一致し、読み取り許可を許可しません。

番号2-w-と一致し、書き込み専用です。

番号1--xと一致し、実行専用です。

一般的な組み合わせの1つは664で、ファイルの所有者とグループメンバーに読み取りと書き込みを許可し、他のすべてのユーザーに対してのみ読み取りを許可し、ファイルを実行する権限はありません:-rw-rw-r--

2
mchid