사이트 내 전체검색
NFS에는 어떤 허점이 있는가?
로빈아빠
https://cmd.kr/server/776 URL이 복사되었습니다.

본문

NFS의 보안은 서버가 만들어내는 파일을 설치하는 사람에게 크게 의존한다.
호스트가 만들어낸 디렉토리를 설치하기  위하여 정확한 포맷을 정하는 것은 유
닉스의 종류에 따라  다양하지만, 일반적으로는 그 정보는 화일  '/etc/exports'에
저장된다. 이 화일은 많은 디렉토리를 가지고 있으며,각각은 NFS가 그 디렉토리
로 mount할 수 있는 특정한  호스트 또는 넷그룹의 목록을 가지고 있다. 이목록
은 'access list'라고 불린다.
'hosts'는 개별적인 시스템이지만,'netgroups'는  '/etc/netgroup'에 명시되어 있는
hosts 와 username의 조합이다. 이것들은 finetuning access의 한 방법을 제공할
목적으로 만들어진 것이다.
이러한 화일들은 읽기 전용,읽기-쓰기 가능,그리고 슈퍼유저가 접근할 수 있는가
에 대한 정보들을 포함하고 있다. 중요하게  기억해야 할 점은 /etc/exports에 있
는 특정한 디렉토리를 acess list 가 포함하고 있는가에 대한 여부이다.
(1)<nothing>
디렉토리는 어디에 있는 누구든지 mount할 수 있다.
(2)<a specific hostname>
디렉토리는 허가된 사람만이 mount할 수 있다. 이것은 신뢰할 만한 사람을 의미
하는 것은 아니다. 예를들어 NFS가 PC에서 돌아가는 상황이라면 어느 누구든지
mount 할 수 있다.
(3)<a netgroup name>
netgroup이,
a)빈칸이라면 어디에 있는 누구든지 마운트할수 있다.
b)'(,,)'을 포함하고 있다면,어디에 있는 누구나 마운트할수 있다.
c)빈칸이거나 '(,,)'으로 기록된 netgroup을 가지고 있다면,어디에 있는 누구나
마운트 할수있다.
d)'(hostname,,)'라고 적혀있으면, 이 호스트의 사용자만이 마운트할수있다.
e)(,username,)'라고 적혀있으면, 이 사용자는 어디서든지 마운트할수있다.
(4)<hostname 이나 netgroup이 아닌 단어일 경우>
만약 host name인  'athena'를 'ahtena'로 잘못 입력했을 경우,  이것은 netgroup
name으로 받아들여진다. 이와 같은  netgroup은 존재하지 않으므로 빈칸으로 인
식된다. 따라서 어디에 있는 누구든지 마운트할수있다.
따라서 /etc/exports 와 /etc/netgroup 에 집어넣을 내용에 대해서 충분히 주의를
기울이지 않는다면,pc를 가지고있는 사용자들은 다음과 같은 행동을 할 수 있다.
a)server의 화일시스템을 자신의 디스크에 복사할 수 있다.
b)/etc/passwd,.rhosts,/etc/hosts.equiv를 편집할 수 있다.
c)또 다른 사용자,아마도 'root'로 접속할 가능성이 있다.
위의 정보는 NFS에 따라  달라질 수 있지만,보통 NFS에서는 모두 적용이  되었
다.'EMPTY' netgroup을 만드는 가장 좋은 방법은 다음과 같다.
ngname(-,-.,-)
이것은 no-one,no-host,no-NIS-domain을 의미한다.

 
 
 
 
 
 

댓글목록

등록된 댓글이 없습니다.

1,139 (4/23P)

Search

Copyright © Cmd 명령어 18.227.209.218