ユーザーアクセス個人ディレクトリ

ユーザーアクセス個人ディレクトリ

User1持っていなければならない書き込みアクセスファイルをダウンロードするには「人」到着ディレクトリ/bucketに対するその他の操作は許可されていません。

User2必要読み取り権限アーカイブ「人」存在するディレクトリ/bucketとインポートファイル「人」User2サーバーに入ります。

/bucket上記のユーザーのルートディレクトリ権限とユーザー権限を設定するには?

答え1

「ルートディレクトリ」が何を意味するのかを明確にすることはできますか?また、Linuxディストリビューションを指定していないので、私のコマンドはUbuntuに基づいています。

ACL がない場合、オプションは制限されます。私はこれらのユーザーが/ bucketディレクトリを所有したくないと仮定します。グループを作成し(例では「Readers」と呼ばれます)、User2を「Readers」グループに追加します。

addgroup readers
adduser User2 readers

/bucket ディレクトリのグループ所有権を「読者」に付与します。

chgrp readers /bucket

これで、読者グループに/ bucketディレクトリへの読み取りアクセスを許可し、「other」が書き込みアクセスのみ(読み取り不可)になるように設定できるようになりました。また、書き込み権限を持つ人が他のユーザーのファイルを削除するのを防ぐために固定ビットを設定しました。

chmod 1753 /bucket

完了したら、権限は次のようになります。

drwxr-x-wt 1 root   readers     0 Feb 26 17:08 bucket

これはrootに完全な権限を与えます。読者は読むことはできますが、書き込むことはできません。

より詳細な制御(ユーザーごとの権限など)が必要な場合は、ACLの使用を検討できます。 ACLを使用するために上記のプロセスを少し変更します。

まず、両方のユーザーを含むグループを作成します。私の例では、このグループを「bucket-users」と呼びます。

addgroup bucket-users
adduser User1 bucket-users
adduser User2 bucket-users

次に、バケットユーザーグループを提供します。完全に制御する/バケットディレクトリ。 User1 がディレクトリに入れていないファイルを削除しないようにするには、固定ビットが再び必要です。

chmod 1770 /bucket

完了したら、権限は次のようになります。

drwxrwx--T  1 root    bucket-users 0 Feb 26 17:08 bucket

次に、setfaclコマンドを使用してこれらのユーザーの権限をさらに制限します。

setfacl -m "u:User1:-wx" /bucket
setfacl -m "u:User2:r-x" /bucket

その後、getfacl コマンドを使用してこれらの権限を確認できます。

$ getfacl bucket
# file: bucket
# owner: root
# group: bucket-users
# flags: --t
user::rwx
user:User1:-wx
user:User2:r-x
group::r-x
mask::rwx
other::---

関連情報