コマンドラインから継承された権限を明示的な権限に変換する

コマンドラインから継承された権限を明示的な権限に変換する

CIFS/SAMBA ネットワーク共有名があります。公開_共有TrueNASスケール(Debianベース)は、ローカルネットワーク上の誰もがファイルやフォルダを削除するためのフルアクセス権を持つ共有領域です。このネットワーク共有には、さまざまなオペレーティングシステム、ツール、仮想マシンを起動するためのISOイメージなどのすべての実行可能インストールプログラムを含むダウンロードというフォルダがあります。以下に示すように、ツリーにディレクトリ構造がリストされています。

Public_Share
    Downloads
        Autoruns
        ISO Images
        ProcessMonitor
        Rufus

新しいファイル/ディレクトリに対する完全な権限とデフォルトの権限を持つようにネットワーク共有でPOSIX ACLを有効にしようとしましたが、明示的に設定しました。読むそして実装する権限のみ(書き込み権限なし)ダウンロード管理者以外のユーザーがその内容を削除できないように、ディレクトリとサブディレクトリを削除します。私が探しているのは、明示的な権限を定義できることだと思います。これにより、親から権限を分離して変更できます。その他削除するクラス書く許可する。

TrueNAS CLIからダウンロードディレクトリには現在、次のACLがあります。

root@FS-Home[~]# getfacl /mnt/pool0/public_dataset/Downloads
getfacl: Removing leading '/' from absolute path names
# file: mnt/pool0/public_dataset/Downloads
# owner: root
# group: root
user::rwx
group::rwx
group:builtin_administrators:rwx
mask::rwx
other::rwx
default:user::rwx
default:group::rwx
default:group:builtin_administrators:rwx
default:mask::rwx
default:other::rwx

Microsoft Windowファイルエクスプローラで、[次へ]をクリックして親ディレクトリ(ネットワーク共有)から継承を削除/ブロックできます。継承を無効にするボタン。 ここに画像の説明を入力してください。

次にクリック継承された権限をそのオブジェクトの明示的な権限に変換するオプション。

ここに画像の説明を入力してください。 コマンドラインでネットワーク共有全体に必要な権限と新しいファイル/ディレクトリのデフォルト権限を設定できますが、残念ながら、コマンドラインからダウンロード権限を明示的な権限に変換する方法が見つかりません。

# Public_Share
    # clear ACLs
        setfacl -R -b /mnt/pool0/public_dataset

    # Set default UNIX permissions
        chown -R root:root /mnt/pool0/public_dataset
        chmod -R 0777 /mnt/pool0/public_dataset

    # Allow built-in administrators full permissions and add full permissions to default permissions for new files/directories
        setfacl -R -m g:builtin_administrators:rwx /mnt/pool0/public_dataset
        setfacl -d -R -m group:builtin_administrators:rwx /mnt/pool0/public_dataset

どのようにこれを達成できるかについてのアイデアはありますか?

予想される外観は次のとおりです。

root@FS-Home[~]# getfacl /mnt/pool0/public_dataset/Downloads
getfacl: Removing leading '/' from absolute path names
# file: mnt/pool0/public_dataset/Downloads
# owner: root
# group: root
user::rwx
user:root:rwx
group::rwx
group:root:rwx
group:builtin_administrators:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:root:rwx
default:group::rwx
default:group:root:rwx
default:group:builtin_administrators:rwx
default:mask::rwx
default:other::r-x

ここに画像の説明を入力してください。

ベストアンサー1

私はいくつかのコマンドで同じ結果が得られていると思います。

書き込み権限を明示的に変更するようです。ダウンロードディレクトリに対する拒否は、親ディレクトリに書き込み権限が与えられたときに、ディレクトリ全体がネットワーク共有から権限の継承を停止するように強制するようです。本質的に私自身への書き込みアクセスを拒否しています。その他許可クラス。

setfacl -R -m other:r-x /mnt/pool0/public_dataset/Downloads
setfacl -d -R -m other:r-x /mnt/pool0/public_dataset/Downloads

おすすめ記事