웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
텔넷에서 다른 계정사용자의 홈디렉토리 접근 막기
2002.05.11 00:48
여러 사람들에게 무료 계정을 주면서 텔넷에 접근권한을 주다보니... 다른 계정자들의 디렉토리를 마음껏 훔쳐볼수가 있더군요...
해결하기 위해 여러 리눅스관련 사이트 게시판에 질문을 올려놓았는데... http://www.linux.co.kr 로부터 나? 그네라는 분으로부터 해결책을 찾을 수가 있었습니다.
이는 root 관리자가 해야할 작업입니다.
보통 사용자 계정은 /home 디렉토리에 생기죠...
이 /home 디렉토리 퍼미션을 우선 711로 설정합니다.
701로 설정할경우 그룹으로 프로젝트를 진행할 경우 문제가 발생할수 있으므로 꼭 711로 설정하여 주시구요.
만약 /home/account 라는 디렉토리가 있으며 이곳의 디렉토리를 웹상에서 표현하면서 텔넷 접속한 사람에게 정보를 노출시키지 않을려면.....
/home/account 디렉토리의 user 소유권을 nobody 로 바꾸어주시구요. group 소유권은 그대로 둡니다....^^(하위 디렉토리는 그대로 둡니다.)
권한은 170 으로 주시면 됩니다....^^
nobody 에게는 실행권한을 주고 account에 소속된 그룹이게는 읽고 쓰고 지우고 실행하는 권한을 주는것입니다...^^
이렇게 하시면 텔넷접속하여서 단순명령으로 이동 또는 파일을 열어보는것을 막을 수 있읍니다. (이렇게 하시면 /home/account 하위디렉토리에 퍼미션이755 되어있는 디렉토리도 접근이 불가능합니다.)
즉 지금까지의 설명을 표현하자면...
[root@akachan /]#chmod 711 home
[root@akachan /]#cd home
[root@akachan /home]#chown nobody:account account
[root@akachan /home]#chmod 170 account
[root@akachan /home]#ls -l account
d--xrwx--- 6 nobody account 4096 May......... account
이 됩니다.
물론 완벽하다는 말은 아닙니다.
텔넷에서 파일의 접근을 막았다는 것이지 웹상에서 php 언어로 접근하는것을 막았다는 것은 아닙니다...^^
php 또한 nobody 로 접근하며 디렉토리의 권한과는 상관없이 파일권한에 읽기 권한이 있으면 복사를 해와버리지요.^^
이걸 막는 방법은 php.ini 파일에서 safe_mode=off 로 되어 있는 부분을 on 으로 바꾸어 주시면 됩니다.
그럼 기본적인 부분은 차단 하였지요...... 하지만 여기서 파일을 열어볼 수 없다?
그건 아니지요 물론 CGI 와 Perl 이 있지요... 말 그대로 CGI 와 Perl 은 불가능한게 없는 언어 입니다...^^
이걸 막는 방법은 아주 없습니다. 왜냐면 리눅스라는게 어셈블리어와 C 언어로 만들어진 언어이기 때문입니다.
C 또는 Perl 로 접근하는 것을 막는 방법은........
아쉽게도 계정 사용자들은 C와 Perl을 사용하지 못하게 하는 방법밖에.... 오직 root 만 사용하게 해야 되겠지요...^^
해결하기 위해 여러 리눅스관련 사이트 게시판에 질문을 올려놓았는데... http://www.linux.co.kr 로부터 나? 그네라는 분으로부터 해결책을 찾을 수가 있었습니다.
이는 root 관리자가 해야할 작업입니다.
보통 사용자 계정은 /home 디렉토리에 생기죠...
이 /home 디렉토리 퍼미션을 우선 711로 설정합니다.
701로 설정할경우 그룹으로 프로젝트를 진행할 경우 문제가 발생할수 있으므로 꼭 711로 설정하여 주시구요.
만약 /home/account 라는 디렉토리가 있으며 이곳의 디렉토리를 웹상에서 표현하면서 텔넷 접속한 사람에게 정보를 노출시키지 않을려면.....
/home/account 디렉토리의 user 소유권을 nobody 로 바꾸어주시구요. group 소유권은 그대로 둡니다....^^(하위 디렉토리는 그대로 둡니다.)
권한은 170 으로 주시면 됩니다....^^
nobody 에게는 실행권한을 주고 account에 소속된 그룹이게는 읽고 쓰고 지우고 실행하는 권한을 주는것입니다...^^
이렇게 하시면 텔넷접속하여서 단순명령으로 이동 또는 파일을 열어보는것을 막을 수 있읍니다. (이렇게 하시면 /home/account 하위디렉토리에 퍼미션이755 되어있는 디렉토리도 접근이 불가능합니다.)
즉 지금까지의 설명을 표현하자면...
[root@akachan /]#chmod 711 home
[root@akachan /]#cd home
[root@akachan /home]#chown nobody:account account
[root@akachan /home]#chmod 170 account
[root@akachan /home]#ls -l account
d--xrwx--- 6 nobody account 4096 May......... account
이 됩니다.
물론 완벽하다는 말은 아닙니다.
텔넷에서 파일의 접근을 막았다는 것이지 웹상에서 php 언어로 접근하는것을 막았다는 것은 아닙니다...^^
php 또한 nobody 로 접근하며 디렉토리의 권한과는 상관없이 파일권한에 읽기 권한이 있으면 복사를 해와버리지요.^^
이걸 막는 방법은 php.ini 파일에서 safe_mode=off 로 되어 있는 부분을 on 으로 바꾸어 주시면 됩니다.
그럼 기본적인 부분은 차단 하였지요...... 하지만 여기서 파일을 열어볼 수 없다?
그건 아니지요 물론 CGI 와 Perl 이 있지요... 말 그대로 CGI 와 Perl 은 불가능한게 없는 언어 입니다...^^
이걸 막는 방법은 아주 없습니다. 왜냐면 리눅스라는게 어셈블리어와 C 언어로 만들어진 언어이기 때문입니다.
C 또는 Perl 로 접근하는 것을 막는 방법은........
아쉽게도 계정 사용자들은 C와 Perl을 사용하지 못하게 하는 방법밖에.... 오직 root 만 사용하게 해야 되겠지요...^^
댓글 4
-
teenteenv
2002.05.13 17:39
좋은정보 감사~~ -
styx
2002.05.30 03:58
오히려 nobody를 적용한다는것이 보안에 문제가 생길수 있겠네요.
제 의견을 말씀드리고자 한다면
/home에 701로 주고 사용자를 발급할시 모든 소유권을 하나의 그룹명으로 지정하여
계정발급시 chmod 701 /home/username 으로 지정하면 그룹퍼미션이 0이라서
접근이 불가능하지요. 물론 서브디렉토리까지말입니다.
/home에 701로 주는것은 ls 와 같이 모든 명령어의 퍼미션을 막는 수단입니다.
어차피 루트를 제외한 모든 사용자는 같은 gid이니깐요.
이렇게 한다면 굳이 safe_mode=on을 할필요가 없겠지요. :) -
착한이
2002.05.28 16:11
redhat 7.1을 깔았는데요 ...
Telnet 데몬 어떻게 살려야 합니까?
와우는 그냥 기본값으로 깔면 살아 있던데 ....
아시는 분 도와 주세요 ... -
임현
2002.06.14 15:47
nobody 로 지정하시면 악용할 가능성이있는데..
제가 팁에 올렸듯이 701 로 주는게좋을것같네요. styx 님이 말씀하신것처럼요
제목 | 글쓴이 | 날짜 |
---|---|---|
로딩 100% 후 페이지 이동시키기 [1] | ▩윤미 | 2004.04.30 |
웹페이지에 테두리 두르기 [5] | ▩윤미 | 2004.04.30 |
그림파일없이 바꾸는 그라이데이션 배경색 [3] | ▩윤미 | 2004.04.30 |
접속할때마다 다른 이미지 띄우기 [8] | ▩윤미 | 2004.04.30 |
특정위치에 떠있는 레이어 (슬라이딩 애드콘) - 노프레임홈에서의 문제해결 [8] | 검미르 | 2004.05.03 |
상태창에 머문시간 보여주기 [5] | ☺심심 | 2004.05.05 |
클릭하거나, 바탕을 더블클릭하면 나타나는 작은(크기조절가능) 메뉴 | ☺심심 | 2004.05.17 |
이미지 갤러리-이미지에 설명이나 이름을 같이 달아줄수 있는.. | webzang | 2004.05.17 |
배너를 모자이크로 슬라이드한다! [13] | ☺심심 | 2004.05.17 |
동영상을 일반 버튼으로 제어 | ☺심심 | 2004.05.23 |
왔다 갔다 이미지 스크롤 [3] | 컴도미 | 2004.05.25 |
간단한 감추기/펼치기 스크립트 (태터툴즈의 more 기능) [5] | 나이시스 | 2004.05.28 |
지바 애플 아날로그 시계 소스입니다... [4] | 한성민 | 2004.06.02 |
[StylishJAVA]레이어를 이용한 슬라이드 메뉴 [5] | ∑Ztxy | 2004.06.05 |
[추천] 가로형 배너 슬라이드 [7] | ⓣinⓣin™ | 2004.06.10 |
볼륨값이 얼마나 될까? [5] | PHASE | 2004.06.16 |
[추천] 세로형 배너 슬라이드 [4] | ⓣinⓣin™ | 2004.06.24 |
둥근테이블을 홈피에 짜고싶을때../ [12] | zEn | 2004.06.28 |
레이어 특강 1 - 큰일 나는 소스 [23] | 미친개 | 2004.06.30 |
레이어 2 - 뷁뷁뷁뷁뷁봵 [7] | 미친개 | 2004.07.04 |