본문 바로가기
UNIX 시스템

UID - 8주차 수업 - 1

by 세인트킴 2023. 5. 26.

set - uid

  • chmod 4xxx 파일명
  • chmod u+s 파일명
ls -l /etc/shadow
-rw-r----- 1 root shadow 28779  5월 15 21:11 /etc/shadow
기타 사용자에 대해 읽기/쓰기/실행 권한 모두 불허
ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 68208 11월 29 20:53 /usr/bin/passwd
소유자 권한 필드에 x -> s // set-uid를 의미한다. 실행 시 소유자(root)의 uid가 부여된다. 
그래서 /etc/shadow 파일을 수정할 수 있다.

set - gid

  • chmod 2xxx 파일명
  • chmod g+s 파일명

Sticky bit

디렉토리에 설정할 경우 다음 3가지 사용자만 삭제

디렉토리 소유자, 파일 소유자, 슈퍼 유저

설정 방법

  • chmod 1xxx 파일명
  • chmod +t 파일명

실습1 - 디렉토리 접근권한

1-1
cd /tmp/dirperm
ls -l | grep '^d' | wc -l // '^d'는 디렉토리로 시작하는 파일을 찾는 명령어. 총 4개 
4: dir 1    dir2    dir3    dir4

1-2
ls -l
합계 16
dr-xrwxr-x 2 jhkim jhkim 4096  4월 23 18:08 dir1
dr--rwxr-- 2 jhkim jhkim 4096  4월 23 18:08 dir2
d--xrwx--x 2 jhkim jhkim 4096  4월 23 18:08 dir3
d---rwx--- 2 jhkim jhkim 4096  4월 23 18:08 dir4 // 읽기 권한이 있는 파일만 파일 목록을 볼 수 있다.
// 본인은 그룹과 소유자에 해당이 없는 기타 그룹이기 때문에 dir1, dir2파일만 확인할 수 있다.

1-3
dr-xrwxr-x 2 jhkim jhkim 4096  4월 23 18:08 dir1
dr--rwxr-- 2 jhkim jhkim 4096  4월 23 18:08 dir2
d--xrwx--x 2 jhkim jhkim 4096  4월 23 18:08 dir3
d---rwx--- 2 jhkim jhkim 4096  4월 23 18:08 dir4 // 실행 권한이 있는 dir1, dir3 파일만 이동 가능하다.
실행 권한은 파일로 이동하거나 해당 디렉토리에서 명령을 실행할 수 있는 권한을 나타낸다.

2-1
whoami > wlist1 // whoami = 202121165가 wlist1에 저장된다.
chmod g-r wlist1 // wlist1를 student그룹은 읽을 수 없다. 
whoami > wlist2 
chmod o-r wlist2 // wlist2를 others그룹은 읽을 수 없다.
cp wlist1 wlist2 /tmp/dirtest/202121165-wlist1/202121165-wlist2
// cp 파일명 /경로/변경할 이름

실습2 - Sticky bit

1-1.
mkdir stest
chmod go+w stest
ls -l
dr-xr-xrwx 2 202121165 students 4096  5월 26 16:02 stest
chmod +t stest
ls -l 
drwxrwxrwt 2 202121165 students 4096  5월 26 16:02 stest // x -> t로 변경되었다.

1-2.
whoami > 202121165-wlist
cp 202121165-wlist /tmp/wdir
rm 202221066-wlist
drwxrwxrwx 2 jhkim jhkim 4096  4월 26 15:12 /tmp/wdir 
// /tmp/wdir 디렉토리는 소유자가 jhkim으로 되어있지만 모든 권한이 풀려 있기 때문에 파일을 삭제할 수 있다.

1-3. 
whoami > 202121165-wlist
cp 202121165-wlist /tmp/stickydir
rm /tmp/stickydir/*
rm: 쓰기 보호된 일반 파일 '201621749-wlist'를(을) 지울까요? y
rm: '201621749-wlist'를 지울 수 없음: 명령을 허용하지 않음 // 파일의 소유자가 jhkim이여서 접근 권한이 없기 때문에 지울 수 없다.

'UNIX 시스템' 카테고리의 다른 글

File archive / Compress - 11주차 수업 - 1  (0) 2023.05.30
find - 10주차 수업 - 2  (0) 2023.05.30
cut - 10주차 수업 - 1  (0) 2023.05.29
Filter - 9주차 수업 - 1  (0) 2023.05.28
i - node 8주차 수업 - 2  (0) 2023.05.26