[UMASK]
mkdir, touch, vim 등 파일을 새로 생성시 설정되는 기본 퍼미션을 의미, 파일 및 디렉터리 생성시 기본 권한을 초기 설정하는 방법
대부분의 퍼미션값은 022
# /etc/bashrc (관리자) $ HOME/.bashrc(사용자) 에서 변경 가능
# vi /etc/bashrc if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then umask 002 else umask 022 |
디렉터리는 777, 파일은 666에서 UMASK값을 빼면 생성되는 파일이나 디렉터리의 권한을 알 수 있음
UMASK |
000 |
001 |
002 | 022 |
파일 권한 |
666 |
665 |
664 | 644 |
디렉터리 권한 |
777 |
776 |
775 | 755 |
# umask 0022 # ls -al 합계 72 drwxr-xr-x 2 root root 4096 2017-09-07 15:01 hello1 -rw-r--r-- 1 root root 0 2017-09-07 15:01 hello2 |
-> ls -al로 퍼미션을 확인한 결과
hello1 755 / hello2 644로 umask 022를 뺀 값과 같음
- UMASK값 확인
# umask -S ← 파일 및 디렉터리가 어떠한 값을 갖는지 보여줌 u=rwx,g=rx,o=rx |
- UMASK 값 변경
# umask [원하는 값]
# umask 0022 # umask 0033 # umask 0033 |
임의의 파일 A에 '갑'의 UID/GID가 걸려있는데, 이 파일을 '을'도 실행 할 수 있다고 가정하면
'을'은 파일 실행시 '갑'의 권한을 가지고 임무를 수행하게 된다.
'을'이 파일을 실행하면 파일 A는 '갑'이 실행한 것으로 인식한다.
디렉터리 B에 sticky bit가 걸려있다면 그 디렉터리 B안에서 만든 '병'의 파일은 그 누구도 수정하거나 건들 수 없다. (단 root제외)
[UID bit]
- 특정 유저의 권한
- 사용자와 관계없이 해당 파일을 실행 할 때 파일의 '소유자 권한'으로 실행
- 명령어 : # chmod 4000
- 표시확인 : -rwsr-xr-x ← 권한 확인 시 소유자의 실행권한에 s가 표시
허가권의 'x'가 있으면 's'로 변경
허가권의 'x'가 없으면 'S'로 변경
[GID bit]
- 특정 그룹의 권한
- 사용자와 관계없이 해당 파일을 실행 할 때 파일의 '그룹 권한'으로 실행
- 명령어 : # chmod 2000
- 표시확인 : -rwxr-sr-x ← 권한 확인 시 그룹의 실행권한에 s가 표시
허가권의 'x'가 있으면 's'로 변경
허가권의 'x'가 없으면 'S'로 변경
[Sticky bit]
- 특정 파일을 파일의 소유자와 root만 변경 ,삭제가 가능함
- 명령어 : # chmod 1000
- 표시확인 : -rwxr-xr-t ← 권한 확인 시 다른 사용자의 실행권한에 t가 표시
허가권의 'x'가 있으면 't'로 변경
허가권의 'x'가 없으면 'T'로 변경
- 공용으로 이용하는 폴더 등에서 사용하여 자신의 데이터가 피해를 입지 않도록 하는 것
>> 테스트
chmod로 각각에 UID와 sticy bit를 걸었음
# chmod 1755 hello1 # chmod 4700 hello2 # ls -al --color 합계 72 drwxr-xr-t 2 root root 4096 2017-09-07 15:01 hello1 -rws------ 1 root root 0 2017-09-07 15:01 hello2 |
# ls -al --color로 실행 시 색상이 다르게 나타나며 특수권한이 걸려있는것을 확인 할 수 있음
'서버 & 시스템 > Linux' 카테고리의 다른 글
특정 IP만 SSH접속 허용하기 (0) | 2017.09.18 |
---|---|
hostname, resolv.conf 설정 (0) | 2017.09.18 |
언어셋 설정 (0) | 2017.09.04 |
디스크 추가, 포맷, 마운트 (0) | 2017.09.04 |
Ioncube 설치 (0) | 2017.09.04 |