ACLを使用するディレクトリでのみグループ+ rx権限を使用しますか?

ACLを使用するディレクトリでのみグループ+ rx権限を使用しますか?

acl非常に具体的な権限構造を設定するにはインストールが必要でした。グループメンバーは、ディレクトリ内のファイルを表示でき、サブディレクトリに移動できる必要があります。しかし、ファイルを読み取る権限があってはいけません!

私はこれを達成する方法がわからない。このコマンドはsetfacl -m d:g:mygroup:rx操作の一部を実行しますが、すべてのファイルを読み取ることができます。したがって、このルールをフォルダにのみ適用すると、他の(drwxrwx---)すべてのアイテムにアクセスできなくなります(rw-------)

ベストアンサー1

デフォルトの ACL を設定して、グループに「実行可能な場合は実行」(X) を付与しますが、読み取り権限を付与しないことがあります。

setfacl -R -d -m group:mygroup:X .

これにより、新しく作成されたファイルをグループから読み取ることができなくなりますが、グループはディレクトリを参照できます。ただし、グループはディレクトリの内容を一覧表示できません。私はこれがSolaris / Linux ACLを介して取得できる最も近いものだと思います。

このACLは必要なものよりも制限されているため、このACLを適用して後でディレクトリに読み取り権限を追加するのは安全です。自動的にできます。inotifyによるたとえば、次の incrontab を使用します。

/path/to/directory IN_CREATE /path/to/script $@

スクリプトに含まれる場所

#!/bin/sh
if [ -d "$1" ]; then setfacl -m group:mygroup:r -- "$1"; fi

別の方法は、異なる権限を持つディレクトリツリービューを作成することです。ファイルシステムバインディング。 Bindfsは、ディレクトリと一般ファイルに対するさまざまな権限をサポートしています。

bindfs -g mygroup -p gd=rx,gf= /path/to/original/root /path/to/mount/point

おすすめ記事