리눅스 NFS

From CS Wiki

개요[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]