ACL(access control list)
[ACL]
- 접근 제어 목록
- 기존 리눅스 권한 할당의 한계를 벗어나 3명 이상의 사용자에게 따로따로 권한을 할당 하기 위해서 도입
setfacl
- acl 설정
- 형식
setfacl [옵션] <u:사용자명:권한> <파일/디렉토리>
<g:그룹명:권한>
<o::권한>
<m::권한> 파일/디렉토리 -> mask 설정
<d::권한> 디렉토리 -> 디렉토리만 가능, 하위 디렉토리까지 권한 변경</d::권한>
* 옵션
-m : acl 설정 및 수정
-x : acl 삭제
-b : acl 초기화
getfacl
- acl 설정 확인
- 형식
getfacl 파일/디렉토리
acl 실습 시나리오
user_a, user_b, user_c 만들고 진행
/test 디렉토리 생성후 하위 디렉토리 testA ,B 생성
user_a는 testA에만 접근 및 읽기 가능
user_b는 testB에만 접근 및 읽기 가능
user_c는 두 디렉토리 모두 접근 및 읽기 쓰기 가능
user_d는 두 디렉토리 모두 접근 및 읽기 가능
user_a로 접속 후 테스트 했을 때 acl 설정이 잘 된것을 확인할 수 있음, 다른 계정도 마찬가지로 테스트 진행
참고)
mask는 사용자 및 그룹 권한보다 우선시 되기 때문에
잠시 모든 사용자의 디렉토리 접근을 막아야 하는 경우 mask 값을 변경함으로써 한번에 작업할 수 있다
사용자 계정 설정을 변경하지 않았음에도 모든 권한을 가지고 있던 user_c 조차 디렉토리에 접급할 수 없는 것을 확인