ACL [ setfacl / getfacl ]
ACL ( Access Control List )
ACL은 파일과 디렉터리의 확장 속성 중에 하나입니다.
setfacl명령을 통해 파일의 소유자나 그룹을 더 만들고, 다양한 Permission을 줄 수 있습니다.
getfacl명령을 통해 추가된 Permission을 확인할 수 있습니다.
이전의 chmod명령의 Permission정책보다 많고, 다양한 권한에 대해 수행할 수 있습니다.
# getfacl [옵션] [파일 / 디렉터리]
File / Dir 등 추가적인 Permission을 확인할 때 사용합니다.
→ 옵션
-d 기본 정보에 대해 확인
-R 디렉터리인 경우 하위 디렉터리의 내용까지 확인 가능
※ getfacl은 옵션을 거의 사용하지 않습니다.
<예제 1>
getfacl 명령을 통해 permission을 확인합니다.
# setfacl [옵션] [정책] [파일 / 디렉터리]
File / Dir 등 추가적인 Permission을 설정할 때 사용합니다.
→ 옵션-m (modify)의 약자로 권한을 수정할 때
-x 권한을 삭제할 때
-R 디렉터리인 경우 하위 디렉터리의 내용까지 권한을 변경
-b 권한 및 mask 등 지정한 권한을 전부 제거 (초기화)
→ 정책
[entry종류(u,g,o)]:[entry]:[권한]
u:[UID]:[권한] * u를 user라고 쓸 수 있다.
g:[GID]:[권한] * g를 group이라고 쓸 수 있다.
o:[권한] * o를 other이라고 쓸 수 있다.
[실습 문제]
NAVER 사원 (N-user)들만 사용할 수 있는 디렉터리 (N01~N10) 생성해준다.
NAVER 인턴 사원(I-user)이 맛보기로 NAVER에 소속되어 있는 네이버 사원(N-user)들만 모든 권한이 허가가 되어 있는 N01 ~ N10 디렉터리 중 N01 디렉터리만 인턴 사원(I-user)에게 모든 권한을 허가하려고 한다.
+------------------------------------------+
사원 그룹 : NAVER
사원 계정 : N-user
(N-user는 NAVER 그룹에 소속되어 있다.)
인턴 계정 : I-user
+------------------------------------------+
N01 ~ N10 디렉터리는 NAVER 그룹에 속한 사용자만 권한을 가집니다.
디렉터리 N01 ~ N10을 확인해줍니다.
N01 ~ N10 디렉터리는 NAVER 그룹에 속한 사용자만 모든 권한을 가지게 하기 위해서
소유권과 허가권을 변경해줍니다.
소유권 변경 명령어 → # chown [소유계정]:[소유그룹][파일]
허가권 변경 명령어 → # chmod
NAVER 그룹에 소속되어있지 않은 인턴사원 I-user계정으로 테스트해봅니다.
N01 디렉터리의 ACL을 확인해봅니다.
# setfacl을 이용해서 권한을 수정해줍니다.
+------------------------------------------+
# setfacl [옵션] [정책] [파일 / 디렉터리]
-m (modify)의 약자로 권한을 수정할 때
u:[UID]:[권한] * u를 user라고 쓸 수 있다.
+------------------------------------------+
I-user 계정으로 다시 한번 테스트해줍니다.
N01을 제외한 다른 디렉터리는 당연히 접근이 불가능합니다.
아래와 같이 ACL이 설정되어있는 파일은 +표시가 보입니다.
'서버 > Linux' 카테고리의 다른 글
[Linux] 프로세스 (1) (0) | 2017.10.11 |
---|---|
[Linux] sudo (Substitute User DO) (0) | 2017.10.11 |
[Linux] 사용자 패스워드 관리 (chage) & 파일속성설정 (0) | 2017.10.11 |
[Linux] UMASK & 특수 허가권 (SetUID, SetGID, StickyBit) (0) | 2017.10.11 |
[Linux] 파일의 권한 (소유권 & 허가권) (0) | 2017.10.11 |