6.5. POSIX アクセス制御リスト
基本的な Linux ファイルシステムのパーミッションは、所有ユーザー、所有しているグループのメンバー、その他のすべてのユーザーの 3 つのユーザータイプに基づいて割り当てられます。POSIX アクセス制御リスト (ACL) は、管理者が、自分のユーザーおよびグループだけでなく、任意のユーザーおよびグループに基づいてファイルおよびディレクトリーのアクセス権限も設定できるようにすることで、このシステムの制限を回避します。
本セクションでは、アクセス制御リストを表示して設定する方法、およびこの機能を Red Hat Gluster Storage ボリュームで有効にする方法を説明します。ACL の仕組みの詳細については、『Red Hat Enterprise Linux 7 システム管理者のガイド』を参照してください。https://access.redhat.com/documentation/ja-JP/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/ch-Access_Control_Lists.html
6.5.1. setfacl で ACL の設定 リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
setfacl コマンドを使用すると、指定したファイルまたはディレクトリーの ACL を変更できます。
-m サブコマンドでファイルのアクセスルールを追加するか、-x サブコマンドでファイルのアクセスルールを削除できます。基本的な構文は以下のとおりです。
setfacl subcommand access_rule file_path
# setfacl subcommand access_rule file_path
アクセスルールの構文は、ルールに従う必要があるロールによって異なります。
u:で始まるユーザーのルールsetfacl -m u:user:perms file_path
# setfacl -m u:user:perms file_pathCopy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、setfacl -m u:fred:rw /mnt/data は、ユーザーfredに、/mnt/dataディレクトリーへの read および write アクセスを付与します。setfacl -x u::w /works_in_progress/my_presentation.txt は、すべてのユーザーが/works_in_progress/my_presentation.txtファイルに書き込むのを防ぎます(これらは POSIX が制御されるためです)。- グループのルールは
gで始まります。 setfacl -m g:group:perms file_path
# setfacl -m g:group:perms file_pathCopy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、setfacl -m g:admins:rwx /etc/fstab は、adminsグループのユーザーに、/etc/fstabファイルへの読み取り、書き込み、実行の権限を付与します。setfacl -x g:newbies:x /mnt/harmful_script.sh が、newbiesグループのユーザーが/mnt/harmful_script.shの実行を阻止します。o:で始まるその他のユーザーのルールsetfacl -m o:perms file_path
# setfacl -m o:perms file_pathCopy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、setfacl -m o:r /mnt/data/public は、/mnt/data/public directory内のファイルを読み込むユーザー名またはグループパーミッションに関する特定のルールがないユーザーを許可します。- 実効権限マスクを使用して最大アクセスレベルを設定するルールでは、
mから始まります。 setfacl -m m:mask file_path
# setfacl -m m:mask file_pathCopy to Clipboard Copied! Toggle word wrap Toggle overflow たとえば、setfacl -m m:r-x /mount/harmless_script.sh は、すべてのユーザーが/mount/harmless_script.shファイルへの読み取りおよび実行アクセスを許可します。
d: をルールの先頭に追加するか、-R オプションでルールを再帰的にして、ディレクトリーのデフォルト ACL を設定できます。たとえば、setfacl -Rm d:g:admins:rwx /etc は adminが 、setfacl が実行される際に /etc ディレクトリーで作成されたファイルへのアクセス権限を付与します。