ACLをサポートしているか確認するには&color(magenta){''tune2fs''};を使う
#code(nonumber){{
[root@smb ~]# tune2fs -l /dev/sda3|grep "mount options"
Default mount options:    user_xattr acl
[root@smb ~]#
}}
な感じで。

***実践 [#x2a13c1a]
とあるフォルダ(root,root所有権)に、crystal グループの所属の方がフォルダを作れるようにするには
#code(nonumber){{
[root@smb ~]# ls -ld /export/share
drwxr-xr-x 2 root root 4096 10月 17 13:41 2014 /export/share
[root@smb ~]#
[root@smb ~]# setfacl -m group:crystal:rwx /export/share

[root@smb ~]# ls -ld /export/share
drwxrwxr-x+ 2 root root 4096 10月 17 13:41 2014 /export/share
[root@smb ~]#

[root@smb ~]# getfacl /export/share
getfacl: Removing leading '/' from absolute path names
# file: export/share
# owner: root
# group: root
user::rwx
group::r-x
group:crystal:rwx
mask::rwx
other::r-x

[root@smb ~]#
}}
とします。これで crystal グループに所属しているユーザは、/export/share に書込みができます。

その配下のフォルダにも同じACLを渡すなら
#code(nonumber){{
[root@smb ~]# setfacl -Rm group:crystal:rwx /export/share
}}
とします。

ですが、これは現在存在するフォルダに対して有効であって、今後新規に作られるフォルダにはこのACLは引き継がれない。
そのようにさせるには
#code(nonumber){{
[root@smb ~]# setfacl -Rdm group:crystal:rwx /export/share
}}
とします。

***apache [#c46a1f2f]
セキュリティーには十分に気をつけないといけないが、/data領域にwebアプリがアクセスしてその結果を返すなら
#code(nonumber){{
setfacl -Rm group:apache:rw /data       <-- 既存フォルダへのACL対応
setfacl -Rdm group:apache:rw /data      <-- 今後の既定としてのACL対応
setfacl -Rm group:apache:rx /data       <-- 既存フォルダへのACL対応
setfacl -Rdm group:apache:rx /data      <-- 今後の既定としてのACL対応
}}
とするべきかと


***secound group [#o91b9c8f]
プライマリなグループではなく、サブグループをあてても同様の効果はでます。
#code(nonumber){{
[illya@c ~]$ id
uid=1002(illya) gid=2000(fate) groups=2000(fate),2002(supervisors),3000(domain users)
[illya@c ~]$
}}
として、/data(root:root所有)に GID:3000の「domain users」グループを割り当ててみる
#code(nonumber){{
[root@c ~]# setfacl -m g:domain\ users:rwx /data
[root@c ~]# cd /
[root@c /]# getfacl data
# file: data
# owner: root
# group: root
user::rwx
group::rwx
group:domain\040users:rwx         <-- 「domain users」を割り当てる
mask::rwx
other::r-x

[root@c /]#
}}
その後、ユーザがフォルダを作ってみると
#code(nonumber){{
[illya@c ~]$ mkdir /data/sample
[illya@c ~]$ ls -ld /data/sample
drwxr-xr-x 2 illya fate 6  5月 13 04:27 /data/sample
[illya@c ~]$
}}
となる。フォルダを作ったら、その配下のフォルダにも上位と同じ権限を付与したい場合にはsetfaclに「-m」を加える

&color(white,blue){留意};
自分が持っているgroupは、「id」コマンドで確認できる。
定義したのに、掲示されない場合は、一度ログアウトして再ログインする。
&color(red){*};&size(10){「id <user>」で表示されてもaclでは見えないみたい。「id」で表示されないとだめみたい};
#code(nonumber){{
[illya@c ~]$ id
uid=1002(illya) gid=2000(fate) groups=2000(fate),2002(supervisors),3000(domain users)
[illya@c ~]$
}}
samba ADでユーザを管理しているのなら、「ADUC」からプライマリ、サブグループの定義が可能で、
「所属するグループ」にて行う。
&ref(2018y05m13d_043100025.png,nolink);
1

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS