Computer Science/OS

[OS] 리눅스 / 허가권, 소유권, 특수 권한

Bay Im 2024. 9. 3. 20:26
  • 허가권
    • 접근 권한
  • 소유권
    • 파일, 디렉터리 소유
  • 허가권/소유권 확인 명령어
    • ls
    • ls -l
  • 예시
    • ls -l 파일명. txt ⇒
      • 허가궝(사용자 그룹 그외사용자) 사용자 그룹
      • -rwxrw-rw-. root root
  • ls -l 명령 사용시 나오는 첫번째 항목(-)의 첫번째 알파벳 종류
    • s: 소켓
    • b: 블록형 장치 (디스크)
    • c: 문자형 장치 (입출력)
    • d: 디렉터리
    • l: 기호(심볼릭)링크
    • p: 파이프파일
    • -: 일반적인 파일
  • 권한 표시
    • r: 읽기
    • w: 쓰기, 디렉터리는 생성, 삭제 권한
    • x: 실행, 디렉터리는 내부 접근 권한
  • chmod
    • 허가권 설정 명령
    • 문자, 숫자 모드 가능
    • 권한
      • r, w, x
      • u: 소유자
      • g: 그룹
      • o: 다른 사용자
      • a: 모두
    • 옵션
      • -R: 하위 디렉터리 포함 모든 디렉터리 내부 파일 접근권한 변경
      • -c: 변경된 정보 출력
      • -f. —silent: 중요한 메시지 아니면 출력하지 않음
      • —version: 버전 정보 출력
    • 숫자모드
      • r= 4, w= 2, x= 1
      • 위의 숫자로 +, - 로 조합한다.
        • 예로 755는 소유자는 모든 권한 가짐, 그룹은 읽기와 실행, 다른 사용자는 읽기와 실행 권한
  • chown
    • 소유권 변경
    • chown 파일소유자: 그룹 형태, : 대신 점도(.) 가능
    • 옵션
      • -R: 하위 포함 모든 디렉터리 접근 변경
      • -c: 변경된 정보 출력
      • -f, —silent: 중요 메시지 아니면 출력하지 않음
      • —version: 버전 출력
  • chgrp
    • 특정 사용자가 여러 그룹에 속한 경우 본인 그룹내에서 소유권 변경
    • 옵션
      • -R: 하위 포함 모든 디렉터리
      • -c: 변경된 정보 출력
      • -f, —silient: 중요 메시지 아니면 미출력
      • -h: 심볼릭 링크 파일의 그룹 소유권 변경
      • —version: 버전 출력
  • umask
    • 파일, 디렉터리 생성시 부여되는 기본 허가권 값을 지정하는 명령
    • 파일 생성시 666, 디렉터리는 777에서 설정한 umask 값을 뺀 값을 기본 허가권으로 지정
      • ex) 666-(umask 값인) 002 = 775는 사용자는 rwx, 그룹은 rwx, 다른 사용자는 rx 권한으로 설정된다.
    • 옵션
      • -S: umask 값을 문자료 표기
    • 기타
      • 기본적인 umask 값은 022 또는 002
      • 가장 안전한 umask 값은 077 (갚이 높을수록!)
  • 명령문 기초
    • mkdir 파일명
      • 디렉터리 만들기
    • touch 파일명.txt
      • 파일 생성
    • ls -l
      • 자세히 표시
  • 특수 권한
    • Set-UID (4000)
      • 파일을 실행하는 동안 실행시킨 사용자 권한이 아닌 해당 파일의 소유자 권한으로 인식
      • rwx→ rws
        • 실행 파일에 주로 사용
        • 설정하면 x 자리에 s로 표시된다
      • rwx→ rwS
        • 만약 실행 권한이 없는 파일에 부여하면 대문자 S로 표시된다.
    • Set-GID (2000)
      • 이 권한이 설정된 디렉터리에 파일, 디렉터리 생성시 디렉터리 소유 권한으로 만들어진다.
      • rwxrwsrwx
        • 이 권한 표시는 그룹 소유권 자리에 s로 나타난다.
      • rwxrwSrwx
        • 실행 권한이 없으면 대문자 S로 표시
    • Sticky-Bit (1000, 공유모드)
      • 공유 디렉터리로 사용
      • /tmp 디렉터리(임시저장)에 기본 설정
      • 생성에 제한없지만, 삭제는 본인 생성 외 불가
      • other, group 계층에 설정, 두가지 모두면 other 우선
      • drwxrwxrwt
        • 설정시 other 계층 x자리에 t로 표시
      • drwxrwx—T
        • ls -l로 조회했을때 그룹 공유 모드면 대문자 T, 모든 사용자가 접근 가능시 t로 표기
    • 기타
      • Set-UID 설정시 변경된 패스워드는 /etc/shadow 에 기록
      • 위의 3가지 특수권한도 chmod 사용
      • 문자 모드인 경우 Set-UID, Set-GID는 s 사용, Sticky-Bit는 t 사용
      • 숫자 모드인 경우 UID는 4000, GID는 2000, Sticky-Bit는 1000
728x90

'Computer Science > OS' 카테고리의 다른 글

[OS] 리눅스 / 에디터  (0) 2024.09.04
[OS] 리눅스 / 프로세스, 스케줄링  (0) 2024.09.04
[OS] 리눅스 / 셸  (0) 2024.09.04
[OS] 리눅스 / 파일 시스템, 쿼터  (0) 2024.09.03
[OS] 리눅스 / 디렉터리  (0) 2024.09.03