RHCSA 준비/02. 고급 권한 관리

2.3 접근 제어 리스트(ACL) 설정 (setfacl, getfacl)

Jaden Park 2021. 5. 21. 20:09

setfacl

setfacl [option] ENTRY:NAME:PERMS file-name

Option

  • -m : 파일에 ACL을 추가하거나 추가되어 있는 ACL 변경 시 사용
[root@centOS8 ~]# setfacl -m u:user01:rwx /dirA
[root@centOS8 ~]# setfacl -m m::r-- /dirA
[root@centOS8 ~]# setfacl -m d:u:user01:rwx acl
  • -x : 특정 권한을 제거
[root@centOS8 ~]# setfacl -x u:user01 /dirA
  • -k : 기본 ACL 제거
[root@centOS8 ~]# setfacl -k /dirA
  • -b : 모든 ACL 제거
[root@centOS8 ~]# setfacl -b /dirA
  • -R : 재귀적으로 설정
    • ACL이 설정되지 않은 디렉토리와 그 아래의 파일들도 ACL이 설정되지 않았을 때 디렉토리를 포함한 하위 파일까지 ACL을 적용할 때 사용
[root@centOS8 ~]# setfacl -Rm u:user01:rwx /dirA
[root@centOS8 ~]# setfacl -Rb /dirA

텍스트 파일의 경우

  • 불필요한 실행권한을 가지고 있으면 스크립트로 실행되어 시스템에 문제를 발생시킬 수 있음
  • rwX 권한지정으로 해결
  • X(대문자)를 사용하게 되면 디렉토리에는 실행 권한이 부여되며 텍스트 파일에는 실행 권한이 부여되지 않음
[root@centOS8 ~]# setfacl -Rm u:user01:rwX /dirA

ENTRY

ENTRY
사용자 u 또는 user
사용자 그룹 g 또는 group
마스크 m 또는 mask
기타 사용자 o 또는 other
기본 ACL d 또는 default

NAME

사용자일 경우

  • NAME에는 사용자 이름 또는 UID를 입력
  • PERMS에는 권한을 입력

그룹일 경우

  • NAME에 그룹 이름 또는 GID를 입력
  • 마스크나 기타 사용자가 지정될 때 NAME 부분 생략