web-dev-qa-db-ja.com

特定のフォルダへの読み取り専用アクセスを許可しますか?

ユーザーに読み取り専用のアクセス権を与えたいのですが、アクセス権を与えた正確なフォルダのみをユーザーに見せたいです。たとえば、彼/彼女がすべてのサーバーを移動したり、すべてのユーザーのフォルダーを閲覧したりするべきではありません。それでは、まず特定のユーザーに特定のフォルダーへのアクセスを許可し、ホームフォルダーへのシンボリックリンクを配置するにはどうすればよいでしょうか。したがって、必要なフォルダに直接移動できますが、上下に移動できませんか?

12
Anarkie

必要なディレクトリ権限を設定する必要があります。ディレクトリの場合:

  • read:そのディレクトリ内のファイルとサブディレクトリの表示を許可
  • write:そのディレクトリにファイルとサブディレクトリを作成することを許可
  • 実行:ディレクトリへの入力が許可されます。

ファイルの場合、状況は似ていますが、明らかであるため、自分で処理できます。

これらの権限の数値:

  • read-4
  • 書き込み-2
  • execute-1

権限を編集するには、chmodを使用します。使用法:chmod xyz <file or directory>

  • x-所有者権限の合計
  • y-所有者グループ権限の合計
  • z-rest users/groups権限の合計

例:

$ chmod -R 664 /home/jack/

ジャックとジャックのグループは、/ home/jackおよびallへのread + writeアクセス権を持ち、そのサブディレクトリになります。残りは読み取りアクセスのみを持ちます。ここでの-Rオプションは、権限を再帰的に設定するために使用されます。

その他の例:

$ chmod 700 /home/jack/video/

ジャックに/home/jack/videodirectoryへのフルアクセスを付与します。所有者と所有グループの変更については、chownchgrpも参照してください。

10
milos

また、chrootの設定に必要な情報も読みません。親ディレクトリを上に移動しないようにするには、厳密な権限を割り当てます。

$ mkdir --parent 1/2/3
$ ls 1
2
$ chmod 100 1
$ ls 1
ls: cannot open directory 1: Permission denied
$ ls 1/2
3

ユーザーに/ home/1へのアクセスを許可したいが、/ homeにある他の資料が表示されないようユーザーに制限したい場合は、ルートハンドが所有する/ homeに権限111を与えます。したがって、ユーザーは/ home/2が存在するかどうかを知ることはありません。