리눅스 특수권한
From IT Wiki
Revision as of 22:45, 26 April 2018 by 183.106.94.217 (talk) (새 문서: ==개요== 리눅스의 권한을 3종류라고 인식하고 있는 경우도 많지만 실제로는 4종류이다. 소유자(User), 소유그룹(Group), 그외(Other)의 읽기(Read)...)
개요
리눅스의 권한을 3종류라고 인식하고 있는 경우도 많지만 실제로는 4종류이다. 소유자(User), 소유그룹(Group), 그외(Other)의 읽기(Read), 쓰기(Write), 실행(Execute) 조합만으로 해결이 안되는 상황들이 많기 때문이다. 이를 위해서 기본 권한 외 특수권한 이라는 것이 존재하고 실제로도 많이 쓰이고 있다.
특수권한 3가지
Set-UID
- 실행하는 동안 해당 파일의 소유자 권한으로 인식한다.
- 일반적으로 실행 파일에 사용된다.
- 소유자 권한 부분의 x 자리에 s 로 표기 된다.
- 실행 권한이 없을 경우 대문자 S 로 표시된다.
Set-GID
- 실행하는 동안 해당 파일의 소유자그룹 권한으로 인식한다.
- 일반적으로 디렉터리에 설정된다.
- 사용자가 파일이나 디렉터리를 생성하면 사용자가 속한 그룹에 상관없이 디렉터리 소유 그룹으로 만들어진다.
- 그룹 권한 부분의 x 자리에 s 로 표기 된다.
- 실행 권한이 없을 경우 대문자 S 로 표시된다.
Sticky-Bit
- 일반 사용자들이 디렉터리에서 파일 및 디렉터리 생성이 가능하다.
- 일반 사용자들은 자신이 생성한 것 이외에는 수정 및 삭제가 불가능하다.
- 디렉터리에만 적용된다.
- 시스템 기본 폴더인 /tmp 디렉터리에 설정되어 있다.
- 설정하면 other 계층 권한 부분의 x 자리에 t 로 표기되며 실행권한이 없는 경우 대문자 T 로 표기된다.
특수권한의 설정
우리에게 익숙한 chmod 를 사용한다. 문자모드인 경우에는 Set-UID 와 Set-GID 는 's' 또는 'S' 를 사용하고, Sticky-bit 는 't' 또는 'T' 를 사용한다.
예시)
chmod rwSrwxrwx chmod rwxrwsrwx chmod rwsrwsrwt
숫자모드인 경우 Stiky-bit가 1, Set-UID가 4, Set-GID가 2이며, 기본 권한 3자리(예를 들어 777) 앞자리에 들어가 총 4자리의 형태(예를 들어 1777)를 이룬다.
예시)
chmod 1744