OS/Linux

[리눅스] 소유권 및 허가권 관리

SE.NE.CE 2020. 12. 21. 01:47
728x90
728x90

 - 소유권(ownership)

  ·개체에 대한 소유자와 소유그룹
  ·Linux 시스템의 모든 개체(파일)는 소유자와 소속그룹이 지정되어 있음
  ·파일 생성 시 파일을 생성한 계정이 파일의 소유자가 됨
  ·파일 생성 시 파일을 생성한 계정의 기본 그룹이 파일의 소유 그룹이 됨
  ·소유자, 소유그룹 확인 방법: ls -l <파일명>

소유자: root , 소유 그룹: root

- 명령어 chown

  ·개체의 소유자 및 소속그룹 변경
  ·계정명/그룹을 UID/GID로 사용 가능
  ·chown [옵션] <계정명> <파일명>
  ·chown [옵션] :<그룹명> <파일명>
  ·chown [옵션] <계정명>:<그룹명> <파일명>
  ·옵션 [-R] : 하위 디렉터리 및 파일 전체의 소유권 변경

 - 명령어 chgrp

  ·개체의 소속그룹 변경
  ·chgrp [옵션] <gid 또는 그룹명> <파일명>
  ·옵션 [-R] : 하위 디렉터리 및 파일 전체의 소유권 변경

 - 허가권(Permission)

  ·멀티 유저 환경에서 개체에 접근할 수 있는 자격
  ·개체를 읽거나 쓰거나 실행하는 행위
  ·사용자(user), 사용그룹(group), 나머지 사용자(other) 단위로 권한을 부여함

  · r: 읽기  w: 쓰기  x: 실행
  ·소유자, 소유그룹 확인 방법: ls -l <파일명>
  · 

 - 명령어 chmod

  ·개체의 허가권 변경
  ·상대모드 또는 절대모드로 허가권을 지정함
  ·chmod <상대모드 또는 절대모드 허가권> <파일명>
  ·소유권  [u]: user  [g]: group  [o]: other  [a]:all

 
 ·상대모드: <소유권><연산자><허가권> 으로 표현
 
>연산자  [+]: 권한 추가  [-]: 권한 삭제  [=]: 권한 지정
  >허가권  [r]: 읽기  [w]: 쓰기  [x]: 실행  [s]: 소유자, 소속그룹만 실행
  ex) (초기 상태 rw-r--r-- 기준) [chmod a+x file] 결과: rwxr-xr-x

 
 ·절대모드: 권한을 숫자 형태로 표현
  >user/group/other : rwx/rwx/rwx    r=4, w=2, x=1
  ex) rw-r--r-- =  420/400/400 = 4+2 / 4 / 4 = 644
      chmod 644 = rw-r--r--

 - Umask

  ·리눅스 시스템에서 자원을 생성할 때 설정되는 기본 권한을 통합 관리하기 위해 사용
  ·디렉터리는 777 권한, 파일은 666 권한에서 umask값을 뺀 값이 기본 권한으로 설정됨
  >파일은 기본 실행 권한을 빼고 설정됨
  ex) 디렉터리 기본 권한 = 디렉터리 최고 권한(777) - Umask(022) = 755
       파일 기본 권한 = 파일 최고권한(666) - Umask(022) = 644

 - 특수 권한(Special Permission)

  ·시스템 관리의 효율성을 높이기 위해 사용하는 특별한 권한
  ·보안의 취약점이 될 수 있으므로 꼭 필요한 경우가 아니면 사용하지 않는 것이 좋음

 
 ·Setuid = (절대모드)4000 = (상대모드)u+s
  >파일을 실행하는 동안 해당 파일의 소유주의 권한으로 실행
  >실행 파일에만 설정 가능함
  >소유자의 허가권에서 실행 권한이 x가 아닌 s로 표시됨  ex) rwsr--r--

 
 ·Setgid = (절대모드)2000 = (상대모드)g+s
  >파일을 실행하는 동안 해당 파일의 소속 그룹 권한으로 실행
  >파일 및 디렉터리에서 설정 가능함
  >소속 그룹의 허가권에서 실행 권한이 x가 아닌 s로 표시됨  ex) rwxr-sr--

 
 ·Sticky bit = (절대모드)1000 = (상대모드)o+s
  >모든 소유권에 모든 허가권을 부여하지만 삭제는 소유주만 가능함
  >디렉터리에서 설정 가능함
  >나머지 사용자의 허가권에서 실행 권한이 x가 아닌 t로 표시됨 ex) rwxr-xr-t
  
>/tmp, /var/tmp 디렉터리에 적용되어 있음

- 확장 권한(ACL)

  ·기본적인 소유권과 허가권 외의 세부설정이 필요한 경우 사용되는 permission
  ·파일 및 디렉터리의 세부 정보 중에서 권한 정보(rw-r--r--.)의 마지막 10번째 값으로 권한 ACL 설정 부여 확인함
  · [.]: 권한 ACL이 설정되어있지 않았음   [+]: 권한 ACL이 설정되어 있음

 - 명령어 getfacl

  ·파일 및 디렉터리에 설정된 권한 ACL확인
  ·getfacl [옵션] <파일명>

 - 명령어 setfacl

  ·파일 및 디렉터리에 설정된 권한 ACL설정
  ·setfacl [옵션] [정책] <파일명>

 - 명령어 lsattr

  ·파일에 설정된 속성 확인
  ·lsattr [옵션] <파일명>

 - 명령어 chattr

  ·파일에 설정된 속성 확인
  ·chatter [옵션] [mode] <파일명>

728x90
728x90