본문 바로가기
Server/Linux Server

[Linux Server] NFS Server

by JINJINC 2023. 3. 23.
728x90
반응형

<Linux 5> 

NFS 서버

# rpm -qa nfs-utils

 

# rpm -qa portmap

 

# yum -y install *nfs*

# vi /etc/exports

/share 192.168.10.20(rw,sync)

=> 해당 폴더에 마운트 시킬 nfs클라이언트 ip주소를 적어줍니다. 

# mkdir /share

# chmod 707 /share/

 

# /etc/init.d/portmap start

# /etc/init.d/nfs start

=> 두과정을 진행하면 ok가 올라와야 합니다. 

# rpcinfo -p localhost

 

# exportfs -a => /etc/exports 파일을 읽어들인다.

# exportfs -r => /etc/exports 파일을 다시 읽어들인다.

# exportfs -v => 현재의 공유 목록을 출력한다. 

 

#service portmap restart
#service nfs restart

 

▶ [공유할 디렉토리] [접근할 호스트 IP 또는 이름 (접근권한)]

예1) /share 라는 폴더를 192.168.6.200 컴퓨터에서 읽기만 허용하기

/share 192.168.6.200(ro)

 

예2) /share2 라는 폴더를 192.168.6.x 모든 컴퓨터에서 읽기/쓰기 허용하기

/share2 192.168.6.0/255.255.255.0(rw)

/share4 192.168.10.*(rw)  => 대역대 

 

예3) /share3 라는 폴더를 john.com 도메인 아래의 모든 호스트에게 읽기만 허용하기

/share3 *.john.com(ro)

 

root_squash => 소유자 nfsnobody

no_root_squash => 소유자 root

모든 호스트에 root가 있는데, 클라이언트의 root는 서버의 root의 권한을 가질 수 없다. 따라서 root_squash 는 기본값으로 클러이언트의 root는 NFS 파일 시스템에서 nobody로 매핑되도록 설정되어 있습니다. 
 즉,  클라이언트의 root가 마운트된 디렉토리에서 마음대로 쓰고 지울수 없도록 설정하게 된다. 
no_root_squash는 클라이언트의 root가 nfs 파일시스템 위에서도 root의 권한을 가지도록 한다. 

 

- NFS 클라이언트

# rpcinfo -p 서버IP | grep portmap ;portmap서비스 정상동작 확인

# rpcinfo -p 서버IP | grep nfs ;nfs서비스 정상동작 확인

# showmount -e 192.168.10.1

# mkdir /dir1

 

# mount -t nfs 192.168.10.1:/share /dir1

=> road 

# cd /dir1

 

# ls

# touch 11

# ls -al

=> 익명 nfsnobody 

 

 

자동 마운트 하는방법

vi /etc/fstab

 

 

<보안>

▶ NFS 서버 접속하는 컴퓨터 제한하는 파일

- /etc/hosts.deny

- /etc/hosts.allow

 

예1) 모든 컴퓨터의 NFS 접속을 거부하되 192.168.6.0 컴퓨터만 접속 허용하기

# vi /etc/hosts.deny

portmap: ALL

=> 전부다 deny된다 

# vi /etc/hosts.allow

portmap: 192.168.6.0/255.255.255.0

=> 지정한 것만 허용 

 

NFS퍼미션은 네트워크로 접근할경우만 적용되며,

리눅스 표준퍼미션은 무조건 적용된다.

 

★ 네트워크로 접근하는 경우 NFS퍼미션과 표준퍼미션중 가장 제한적인 퍼미션이 적용됨.

 

 

=================================================================================

<centOS 7>

 

---------------------------------------------------
0.하드 공유할 파티션 오토마운트 할 것.
---------------------------------------------------

1.NFS 서버 설정 : 192.168.10.228

1)패키지 설치 : nfs-utils

# rpm -qa | grep nfs-utils

nfs-utils-1.3.0-0.68.el7.x86_64

 

# rpm -qa | grep rpcbind      -> 있는거 확인!

rpcbind-0.2.0-49.el7.x86_64

#

2)방화벽: 포트 - 2049/tcp, 서비스 - nfs

 

# firewall-cmd --permanent --add-port=2049/tcp

success

#

# firewall-cmd --permanent --add-service=nfs

success

#

# firewall-cmd --reload

# firewall-cmd --list-all

3)데몬 작업

# systemctl enable nfs

# systemctl restart nfs


4)환경 설정

#vi /etc/exports 설정

# exportfs -a     :/etc/exports의 환경 설정을 읽어서 적용(오류 메시지 안뜨면 됨)

#

#

# systemctl restart nfs   : NFS 서버 설정 마무리

#

# exportfs -v : 실제 적용한 값 확인용


---------------------------------------------------

2.NFS 클라이언트 설정 : 192.168.10.229

 

1)패키지 설치

# rpm -qa | grep nfs-utils

nfs-utils-1.3.0-0.68.el7.x86_64

#

# rpm -qa | grep rpcbind -> 있는거 확인!

rpcbind-0.2.0-49.el7.x86_64

#

2)NFS 요청 

# mkdir /nfs_client/

# mount -t nfs 192.168.10.228:/nfs_server  /nfs_client/  -> 수동 

#df -h   

# touch /nfs_client/123

#

# ls -l /nfs_client/ /nfs_server/

/nfs_client/:

합계 16

-rw-r--r-- 1 root root     0  2월 16 11:07 123

drwx------ 2 root root 16384  2월 16 10:16 lost+found

 

/nfs_server/:

합계 16

-rw-r--r-- 1 root root     0  2월 16 11:07 123

drwx------ 2 root root 16384  2월 16 10:16 lost+found

 

 

728x90
반응형

'Server > Linux Server' 카테고리의 다른 글

[Linux Server] NFS 서버 실습  (0) 2023.03.23
[Linux Server] Slave DNS  (0) 2023.03.21
[Linux Server] Delegations DNS  (0) 2023.03.20

댓글