Keep going

접근 권한 본문

School/리눅스 시스템

접근 권한

코딩천재홍 2021. 4. 9. 16:30

File Permissions

  • 다른 사용자의 비밀 내용 숨기기
  • 중요한 내용 보호
  • 유효하지 않은 사용자의 시스템 프로그램 실행 방지

 

Process permission

  • 프로세스의 사용자/그룹 접근 권한을 결정

 

File access permissions

  • -r : 사용자가 파일을 읽을 수 있다.
  • -w : 사용자가 파일을 쓸 수 있다.
  • -x : 사용자가 파일을 실행하고 디렉토리에 들어갈 수 있다.

 

File access categories

  • 파일을 소유하고 있는 사용자에 대한 권한 
  • 이 파일을 소유하고 있는 그룹에 대한 권한
  • 이 파일을 소유하는 사용자, 그룹 외에 모든 사람들에 대한 권한

 

Change access permission

  • chmod command를 사용하여 파일의 permission을 변경 가능
  • chmod ### [file/directory name]
  • # 표현법
    • Octet value (0~7)
    • r =4, w=2, x=1
  • 파일 소유자나 root 만 접근 권한을 바꿀 수 있다.

 

Octal 표기법

  • 0 : ---  no permissions
  • 1 : --x  execute permissions
  • 2 : -w-  write permission 
  • 3 : -wx  write and execute
  • 4 : r--  read permission
  • 5 : r-x read and execute permissions
  • 6 : rw- read and write permissions
  • 7 : rwx : read,write, execution permissions

 

chmod의 또 다른 방법

  • +, - ,= 이용
  • user (u), group (g), others(o), all(a)
    • chmod +r test.txt - read permission을 모두에게 추가

 

Change ownership

  • chown [owner] [file/directory name]
  • 소유권 root만 바꿀 수 있다.

 

Change group ownership

  • chgrp [group] [file/directory name]
  • 그룹의 사용자와 루트만 그룹 소유권을 바꿀 수 있다.

 

Recursive modification

  • subdirectory와 파일 내부 permission/ownership을 변경하기위해 -R 옵션을 사용한다.
  • chgrp -R tester d1 : d1 아래에 있는 모든 파일과 디렉토리를 tester로 소유권 바꿔준다.
  • -r 옵션을 쓸 때 디렉토리에만 영향을 주고 싶다면 r,w,x를 대문자로 쓰면 된다.
    • 실행 가능함 permission은 위험할 수 있다. 불안정한 코드들이 있는 파일이 있을 수 있기 때문에 주의해야 한다.

 

Special file permission

  • Setuid 
    • 소유자만 접근 가능한 파일에 일반 유저가 접근이 필요할 때 그 권한을 잠시 빌리는 것
    • setuid 권한이 있는 파일에서 실행되는 프로세스는 파일 소유자의 권한을 획득
    • 일반적으로 루트 관리자의 권한을 획득해 루트 소유의 파일을 접근하는것에 사용
    • chmod u+s
      • euid : 프로그램을 돌릴 때 어떤 권한으로 돌아가느냐 나타냄
  • Setgid
    • 소유 그룹만 접근 가능한 파일에 일반 유저가 접근이 필요할 때 그 권한을 잠시 빌리는 것
    • 디렉토리에 setgid 권한이 있는 경우, 디렉토리 내에서 작성된 파일은 디렉토리에 대한 동일한 그룹 소유권과 setgid 권한을 획득한다.
    • chmod g+s
  • Sticky bit 
    • 소유자가 아닌 다른 유저들은 이 권한 부여된 파일을 삭제하거나 이름 변경 하지 못하나 파일이나 디렉토리 생성은 가능하다.
    • chmod o+t

 

umask command

  • 사용자가 파일을 생성할 때 어떤식의 permission을 default로 줄것이냐 체크 
    • 파일을 생성할 때 파일은 read, write 기준으로 하고
    • directory는 read, write, execution (navitation 해야하므로) 기준으로 놓게 된다.
  • 의미 : 어떤 permission을 뺄 것인가

'School > 리눅스 시스템' 카테고리의 다른 글

매뉴얼, 패키지, 로그  (0) 2021.05.03
텍스트 에디터  (0) 2021.05.02
파일과 디렉토리  (0) 2021.04.07
사용자/그룹 추가  (0) 2021.04.06
리눅스 기본 명령어  (0) 2021.04.05
Comments