리눅스 NFS
From IT Wiki
개요
- 1984년 Sun Microsystems사에서 개발한 서비스
- TCP/IP기반으로 다른 시스템의 파일 시스템을 마운트하여 사용할 수 있다.
- 사용이 편리한 대신 보안에 취약하다.
보안
주요 파일
/etc/exports
- 환경 설정 파일
- 사용 예시
#[공유할 디렉터리] [허가할 호스트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
- NFS에 포함되는 파일은 아니다.
- 부팅시 자동으로 마운트 되도록 하기 위해 같이 사용한다.
- 사용 예시
192.168.5.13:/nfsdata /mnt nfs timeo=15,soft,retrans=3 0 0
주요 명령어
rpcinfo
NFS는 RPC를 이용하므로, RPC 정보를 조회할 일이 많다. RPC에서 사용하는 여러 포트를 방화벽에서 열어줘야 하는데 이 때 rpcinfo -p 가 사용된다. 자세한 내용은 리눅스 rpcinfo 문서 확인
exportfs
showmount
NFS로 마운트된 목록들을 볼 수 있다. 자세한 내용은 리눅스 showmount 문서 확인