파일의 허가권(-rwxr-xr-x) 와(-rwsr-xr-x)의 차이점
페이지 정보
본문
########## 질문 ################
파일의 허가권은 그 허가에 속하는 사용자나 구룹 타인등에게
파일의 읽고 쓰고 실행하는 부분을 다뤄주는데요..
sTicky bit 1000
SetGID 2000
SetUID 4000
은 정확하게 무엇을 다루는것인지 모르겠습니다.
예를 들어서..
ping localhost 를 root에서 실행해보고 near라는 계정에서
실행해보고 하면.. 두군데 다 됩니다.
기본설정이 -rwsr-xr-x 였을건데요..
이것을 chmod 755 ping 해서 ,-rwxr-xr-x 로 바꾸면..
실행이 안됩니다.
그런데도 ping 이라고 쳤을때는 실행이 됩니다. 메뉴얼은 나오더라구요..
다시말해 요점은..
-rwsr-xr-x
-rwxr-xr-x
-rw-r-xr-x
이 세가지의 차이점은 무엇인가요??
소유자권한에서 실행부분에
s 로 설정된것과
x 로 설정된것과
- 설정이 안된것의 정확한 차이점이 궁금합니다.
답변해주시면 감사하겠습니다.
################ 답 변 ###########################
ls -al ping 을 하게되면
-rwsr-xr-x 1 root root 35192 Apr 19 2002 /bin/ping
이렇게 카옵니다.
-rwsr-xr-x
첨의 - 를 제외한것을 3글자씩 쪼갭니다.
그럼 rwsr-xr-x 가 됩니다.
각각은 파일의 소유자의 권한/소유그룹의 권한/그외 사용자들에 대한 권한 을 나타냅니다.
rwsr-xr-x 에서
각각을 쪼개서 생각해 봅시다.
rws :파일 소유자는 읽기 (r)ead , 쓰기(w)rite 가가능합니다.여기서 s 는 특별한 의미인데
첨에 소유자의 권한에 설정되었기때문에 setuid라고 해서 파일 실행시 그 파일 소유자의 권한을
가지게 됩니다. 즉위에서는 소유자가 root 이므로 누가 실행을 하더라도 root 의 권한으로
그 프로그램이 실행되게됩니다. 보통은 실행시킨사람의 권한으로 실행됩니다.(s가없고
그냥 x인경우
r-x :파일그룹소유자에 대한 권한을 나타내므로 역시 이파일을 소유한 그룹은 root 이므로
root 그룹에 속한 사용자는 이파을을 읽거나 실행할 수 있습니다.w 가 없으므로 삭제는 못합니다.
r-x :이것도 저것도아닌 그외의 사용자의 권한을 나타냅니다. 역시 읽거나 실행할 수 있습니다.
이중에 가운데 부분이 Rws라고 되어있으면 setgid 라고 하여 해당 파일 그룹소유자의 권한으로
실행되게 되는 것입니다.
몇몇 프로그램의 경우 실행시에 root 권한을 요구하는 프로그램들이 있읍니다.
이런 프로그램들이 setuid가 설정되어있습니다만
요즘 추세는 이러한 프로그램은 점점 사라지는 추세입니다.
ping 과 sendmail (요즘버젼은 아님),bind (이것역시 요즘버젼은 아님)
프로그램이 정상적으로 실행되기 위해서 root 의 권한을 가져야 하기 때문입니다.
파일의 허가권은 그 허가에 속하는 사용자나 구룹 타인등에게
파일의 읽고 쓰고 실행하는 부분을 다뤄주는데요..
sTicky bit 1000
SetGID 2000
SetUID 4000
은 정확하게 무엇을 다루는것인지 모르겠습니다.
예를 들어서..
ping localhost 를 root에서 실행해보고 near라는 계정에서
실행해보고 하면.. 두군데 다 됩니다.
기본설정이 -rwsr-xr-x 였을건데요..
이것을 chmod 755 ping 해서 ,-rwxr-xr-x 로 바꾸면..
실행이 안됩니다.
그런데도 ping 이라고 쳤을때는 실행이 됩니다. 메뉴얼은 나오더라구요..
다시말해 요점은..
-rwsr-xr-x
-rwxr-xr-x
-rw-r-xr-x
이 세가지의 차이점은 무엇인가요??
소유자권한에서 실행부분에
s 로 설정된것과
x 로 설정된것과
- 설정이 안된것의 정확한 차이점이 궁금합니다.
답변해주시면 감사하겠습니다.
################ 답 변 ###########################
ls -al ping 을 하게되면
-rwsr-xr-x 1 root root 35192 Apr 19 2002 /bin/ping
이렇게 카옵니다.
-rwsr-xr-x
첨의 - 를 제외한것을 3글자씩 쪼갭니다.
그럼 rwsr-xr-x 가 됩니다.
각각은 파일의 소유자의 권한/소유그룹의 권한/그외 사용자들에 대한 권한 을 나타냅니다.
rwsr-xr-x 에서
각각을 쪼개서 생각해 봅시다.
rws :파일 소유자는 읽기 (r)ead , 쓰기(w)rite 가가능합니다.여기서 s 는 특별한 의미인데
첨에 소유자의 권한에 설정되었기때문에 setuid라고 해서 파일 실행시 그 파일 소유자의 권한을
가지게 됩니다. 즉위에서는 소유자가 root 이므로 누가 실행을 하더라도 root 의 권한으로
그 프로그램이 실행되게됩니다. 보통은 실행시킨사람의 권한으로 실행됩니다.(s가없고
그냥 x인경우
r-x :파일그룹소유자에 대한 권한을 나타내므로 역시 이파일을 소유한 그룹은 root 이므로
root 그룹에 속한 사용자는 이파을을 읽거나 실행할 수 있습니다.w 가 없으므로 삭제는 못합니다.
r-x :이것도 저것도아닌 그외의 사용자의 권한을 나타냅니다. 역시 읽거나 실행할 수 있습니다.
이중에 가운데 부분이 Rws라고 되어있으면 setgid 라고 하여 해당 파일 그룹소유자의 권한으로
실행되게 되는 것입니다.
몇몇 프로그램의 경우 실행시에 root 권한을 요구하는 프로그램들이 있읍니다.
이런 프로그램들이 setuid가 설정되어있습니다만
요즘 추세는 이러한 프로그램은 점점 사라지는 추세입니다.
ping 과 sendmail (요즘버젼은 아님),bind (이것역시 요즘버젼은 아님)
프로그램이 정상적으로 실행되기 위해서 root 의 권한을 가져야 하기 때문입니다.
- 이전글네트워크 관련 명령어 (펀글) 21.02.10
- 다음글iptable 샘플 21.02.10
댓글목록
등록된 댓글이 없습니다.