리눅스 NFS: Difference between revisions

From IT Wiki
(새 문서: == 개요 == * 1984년 Sun Microsystems사에서 개발한 서비스 * TCP/IP기반으로 다른 시스템의 파일 시스템을 마운트하여 사용할 수 있다. * 사용이 편...)
 
No edit summary
 
(3 intermediate revisions by 3 users not shown)
Line 4: Line 4:
* 사용이 편리한 대신 보안에 취약하다.
* 사용이 편리한 대신 보안에 취약하다.


== 보안 ==


== 주요 파일 ==  
== 주요 파일 ==
* /etc/exports  
 
** 환경 설정 파일
=== /etc/exports ===
** 사용 예시
* 환경 설정 파일
<pre class='shell'>
* 사용 예시
<pre class="shell">
#[공유할 디렉터리] [허가할 호스트1(옵션1,옵션2,..)] [허가할 호스트2(옵션)] [허가할 호스트3(옵션)] ..
#[공유할 디렉터리] [허가할 호스트1(옵션1,옵션2,..)] [허가할 호스트2(옵션)] [허가할 호스트3(옵션)] ..


/nfsdata 192.168.123.0/24(rw) trustGroup(rw, no_root_squash)
/nfsdata 192.168.123.0/24(rw) trustGroup(rw,no_root_squash)
</pre>
</pre>'''주요 옵션'''
 
* ro: 읽기 전용 (기본값)
* rw: 읽기/쓰기
* no_root_squash: 클라이언트에서 접근하는 root 인정
* root_squash: 클라이언트에서 접근하는 root 무시. 서버 상의 nobody로 매핑 (기본값)
* all_squash: root를 포함하여 모든 사용자의 권한을 nobody로 매핑
* no_subtree_check: 하위 디렉터리를 검사하지 못하도록 설정
* secure: 포트 번호가 1024 이하의 요청에만 허가
* async: 데이터 변경을 비동기식으로 처리. 쓰기가능한 디스크 스토리지에 사용하면 유용
* anonuid: 접근하는 사용자 권한을 지정한 uid로 매핑
* anongid: 접근하는 그룹 권한을 지정한 gid로 매핑


* [[리눅스 fstab|/etc/fstab]]  
=== [[리눅스 fstab|/etc/fstab]] ===
** NFS에 포함되는 파일은 아니다.  
* NFS에 포함되는 파일은 아니다.
** 부팅시 자동으로 마운트 되도록 하기 위해 같이 사용한다.
* 부팅시 자동으로 마운트 되도록 하기 위해 같이 사용한다.
** 사용 예시
* 사용 예시
<pre class='shell'>
<pre class='shell'>
192.168.5.13:/nfsdata    /mnt    nfs    timeo=15,soft,retrans=3  0  0
192.168.5.13:/nfsdata    /mnt    nfs    timeo=15,soft,retrans=3  0  0
</pre>
</pre>


== 주요 명령어 ==


== 주요 명령어 ==
===rpcinfo===
===rpcinfo===
NFS는 RPC를 이용하므로, RPC 정보를 조회할 일이 많다. RPC에서 사용하는 여러 포트를 방화벽에서 열어줘야 하는데 이 때 rpcinfo -p 가 사용된다. 자세한 내용은 '''[[리눅스 rpcinfo]]''' 문서 확인
===exportfs===
===exportfs===
===showmount===
===showmount===
NFS로 마운트된 목록들을 볼 수 있다. 자세한 내용은 '''[[리눅스 showmount]]''' 문서 확인
===nfsstat===
===nfsstat===
[[분류:리눅스]]
[[분류:리눅스 프로그램]]

Latest revision as of 14:55, 28 October 2022

개요[edit | edit source]

  • 1984년 Sun Microsystems사에서 개발한 서비스
  • TCP/IP기반으로 다른 시스템의 파일 시스템을 마운트하여 사용할 수 있다.
  • 사용이 편리한 대신 보안에 취약하다.

보안[edit | edit source]

주요 파일[edit | edit source]

/etc/exports[edit | edit source]

  • 환경 설정 파일
  • 사용 예시
#[공유할 디렉터리] [허가할 호스트1(옵션1,옵션2,..)] [허가할 호스트2(옵션)] [허가할 호스트3(옵션)] ..

/nfsdata 192.168.123.0/24(rw) trustGroup(rw,no_root_squash)

주요 옵션

  • ro: 읽기 전용 (기본값)
  • rw: 읽기/쓰기
  • no_root_squash: 클라이언트에서 접근하는 root 인정
  • root_squash: 클라이언트에서 접근하는 root 무시. 서버 상의 nobody로 매핑 (기본값)
  • all_squash: root를 포함하여 모든 사용자의 권한을 nobody로 매핑
  • no_subtree_check: 하위 디렉터리를 검사하지 못하도록 설정
  • secure: 포트 번호가 1024 이하의 요청에만 허가
  • async: 데이터 변경을 비동기식으로 처리. 쓰기가능한 디스크 스토리지에 사용하면 유용
  • anonuid: 접근하는 사용자 권한을 지정한 uid로 매핑
  • anongid: 접근하는 그룹 권한을 지정한 gid로 매핑

/etc/fstab[edit | edit source]

  • NFS에 포함되는 파일은 아니다.
  • 부팅시 자동으로 마운트 되도록 하기 위해 같이 사용한다.
  • 사용 예시
192.168.5.13:/nfsdata     /mnt     nfs     timeo=15,soft,retrans=3   0  0

주요 명령어[edit | edit source]

rpcinfo[edit | edit source]

NFS는 RPC를 이용하므로, RPC 정보를 조회할 일이 많다. RPC에서 사용하는 여러 포트를 방화벽에서 열어줘야 하는데 이 때 rpcinfo -p 가 사용된다. 자세한 내용은 리눅스 rpcinfo 문서 확인

exportfs[edit | edit source]

showmount[edit | edit source]

NFS로 마운트된 목록들을 볼 수 있다. 자세한 내용은 리눅스 showmount 문서 확인

nfsstat[edit | edit source]