2011. 11. 28. 19:38 Log/Linux

ACL (Access Control List)

setfacl
Usage: setfacl [-bkndRLP] { -m|-M|-x|-X ... } file ...

주요옵션
-m : acl 설정
-x : acl 삭제
-b : 모든 acl 삭제
--mask : mask 재설정
-R : 하위디렉토리까지 포함.

[root@centos1 acl]# setfacl -m u:user1:rwx a.txt
[root@centos1 acl]# ls -l a.txt
-rw-rwxr--+ 1 root root 6 8월 5 08:50 a.txt ; acl 설정이 된 경우 퍼미션 맨끝에 '+' 문자가 보인다.
[root@centos1 acl]# getfacl a.txt ; acl 설정확인을 할 수 있다.
# file: a.txt
# owner: root
# group: root
user::rw-
user:user1:rwx
group::r--
mask::rwx
other::r--

[root@centos1 acl]# setfacl -x u:user1 a.txt ; acl 설정중 user1 권한 삭제
[root@centos1 acl]# setfacl -b a.txt ; 모든 acl 설정 삭제.

[root@centos1 acl]# setfacl -m u:user1:r-x,u:user2:rw a.txt
[root@centos1 acl]# ls -l a.txt
-rw-rwxr--+ 1 root root 6 8월 5 08:50 a.txt ; 파일의 그룹권한이 바뀐다.
[root@centos1 acl]#

[root@centos1 acl]# getfacl a.txt
# file: a.txt
# owner: root
# group: root
user::rw-
user:user1:r-x
user:user2:rw-
group::r--
mask::rwx ; mask 값은 파일그룹권한과 같다.
other::r--

[root@centos1 acl]#
[root@centos1 acl]# chmod 755 a.txt ; acl 설정이 된 파일의 퍼미션을 바꾸면...
[root@centos1 acl]# ls -l a.txt
-rwxr-xr-x+ 1 root root 6 8월 5 08:50 a.txt
[root@centos1 acl]# getfacl a.txt
# file: a.txt
# owner: root
# group: root
user::rwx
user:user1:r-x
user:user2:rw- #effective:r-- ; effective 권한이 실제권한이다.
group::r-- effective 권한은 설정권한과 umask 값의 교집합으로 결정된다.
mask::r-x
other::r-x

[root@centos1 acl]# setfacl -b a.txt
[root@centos1 acl]# setfacl -m u:user1:rwx,g:staff:r-x,g:root:rwx,m:r-x a.txt
[root@centos1 acl]# getfacl a.txt
# file: a.txt
# owner: root
# group: root
user::rwx
user:user1:rwx #effective:r-x
group::r--
group:root:rwx #effective:r-x
group:staff:r-x
mask::r-x
other::r-x
[root@centos1 acl]#

[root@centos1 acl]# mkdir d1
[root@centos1 acl]# setfacl -m default:u:user1:rw-,g:staff:rwx d1
default 옵션을 주면 d1 디렉토리내의 파일과 디렉토리는 acl권한이
자동으로 설정된다.
[root@centos1 acl]# getfacl d1
# file: d1
# owner: root
# group: root
user::rwx
group::r-x
group:staff:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:user1:rw-
default:group::r-x
default:mask::rwx
default:other::r-x
[root@centos1 acl]#

[root@centos1 d1]# echo "hello" > a.txt
[root@centos1 d1]# ls -l
합계 8
-rw-rw-r--+ 1 root root 6 8월 5 09:15 a.txt
[root@centos1 d1]# getfacl a.txt
# file: a.txt
# owner: root
# group: root
user::rw-
user:user1:rw-
group::r-x #effective:r--
mask::rw-
other::r--

[root@centos1 d1]#

===============================================
ACL 설정 예제.

/tmp/acl/a.txt

설정권한 effective 권한
user1:rwx r-x
acgroup1:r-x
acgroup2:rw- r--
-----------------------------------------
2. /tmp/acl/project 디렉토리에(Default ACL로 설정)
*.file 생성하였을때
설정권한 effective 권한
user1:rwx r--
*.Directory 생성하였을때
설정권한 effective 권한
user1:rwx r-x

'Log > Linux' 카테고리의 다른 글

OpenSSh 및 SELinux  (0) 2011.11.28
메일서비스(sendmail)  (0) 2011.11.28
samba 서비스  (0) 2011.11.28
IDS - snort 1  (0) 2011.11.28
tcpdump - packet capture / 분석  (0) 2011.11.28
Posted by logwatch

블로그 이미지
내가 나에게 확인 하는 블로그
logwatch

태그목록

공지사항

Yesterday
Today
Total

달력

 « |  » 2024.12
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31

최근에 올라온 글

최근에 달린 댓글

글 보관함