ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • CentOS7 acl : setfacl, getfacl
    공부합시다!/LInux 2021. 12. 26. 17:15
    728x90

    2021년도 이제 딱 5일 남았습니다.

    크리스마스 잘 들 보내셨죠? 

    오늘은 acl에 대해서 포스팅 합니다.

     

    1. chmod 로는 사용자별로 권한을 할당하는데 한계가 있습니다.

    쉽게 생각해서 특정 파일에 대해서 사용자 a,b,c,d별로 각각 다른 권한을 설정해야 한다면?

    자세한 옵션들은 여러분이 좋아라하는 google을 검색해 보시면 있습니다.

     

    2. 저는 이런 문제를 한번 내볼까 합니다.

     2.1. 최상위 디렉토리에 회사 디렉토리를 생성합니다. gogle로

     사용자 a,b는 각각 admin 부서(gogle내에 부서디렉토리 생성)의 팀원과 팀장

     사용자 c,d는 각각 sales 부서(gogle내에 부서디렉토리 생성)팀원과 팀장.

     팀원은 본인 부서 디렉토리만 접근이 가능하고 읽기와 실행이 가능,

     팀장은 본인 부서 디렉토리는 모든 권한, 다른 부서 디렉토리는 읽기및실행만 가능하다면

     2.2. tech 부서(gogle내에 디렉토리 생성)는 user:rwx, group:rw, other:r 권한을 상속,

     2.3. fin 부서(gogle내에 디렉토리 생성)는 어떤 경우라도 사용자는 읽기만 가능하게 설정합니다.

     

    3. 풀이

    계정 생성

     3.1. 최상위 디렉토리에 gogle 디렉토리 생성

     # mkdir /gogle

     # mkidr /gogle/admin /gogle/sales

     3.2. other의 권한이 영향을 미치지 않도록 권한 설정

     # chmod 750 /gogle/admin

     # chmod 750 /gogle/sales

     3.3. acl 설정(a,b 사용자)

     # setfacl -m u:a:rx /gogle/admin

     # setfacl -m u:b:rwx /gogle/admin

     # setfacl -m u:b:rx /gogle/sales

     3.4. acl 설정(c,d 사용자)

     # setfacl -m u:c:rx /gogle/sales

     # setfacl -m u:d:rwx /gogle/sales

     # setfacl -m u:d:rx /gogle/sales

    acl 설정

     3.5. tech 설정

     # mkdir /gogle/tech

     # setfacl -m d:u::rwx,d:g::rw,d:o::r /gogle/tech

    권한 상속 설정 및 확인

     3.6. fin 설정

     # mkdir /gogle/fin

     # setfacl -m m::r /gogle/fin

    mask 설정 및 확인

     

    4. Test

     4.1. 사용자 a,b,c,d로 로그인 su - 사용자명

     4.2 a,c는 본인 소속 디렉토리만 접근 가능하며 ls 명령어 실행가능

     4.3. b,c는 본인 소속 디렉토리에서 파일 생성 및 ls 명령어 실행가능

     4.4. 다른 부서 디렉토리에서는 ls 명령어만 실행 가능

     4.5. # mkdir /gogle/tech/test1 /gogle/tech/test2 생성 후 getfacl로 권한 확인

     4.6. # getfacl /gogle/fin mask값이 r확인, 다른 user의 effective가 r 여부 확인

     4.7. # setfacl -x u:a: /gogle/admin  사용자 a 권한 삭제 확인

    사용자 a acl 삭제

     4.8. # setfacl -b /gogle/sales 모든 acl 삭제 확인 

    acl 삭제 및 확인

     

    Test까지 모두 마쳤으면 정상적으로 설정된 것입니다.

    Have a nice day!

    728x90
Designed by Tistory.