포트가 열려 있어도 nfs는 ufw에 의해 차단됩니다


11

nfsv4 서버를 설정했는데 제대로 작동하지만 포트 2049 및 111이 열려 있어도 방화벽이 nfs를 차단하고 있습니다.

nfs는 부팅 할 때마다 변경되는 임의의 포트를 사용하지만 방화벽을 다시 비활성화하지 않고 nfs를 사용할 수 있도록 정적 포트를 어떻게 만들 수 있습니까?

답변:


30

나는 이것에 대해 더 많은 연구를했다. 우분투는 UFW를 사용하고 있습니다. UFW는 최소한 소호 요구에 맞게 구성하기는 쉽지만 매우 강력합니다. 따라서 rpc.mountd 는 기본적으로 여러 포트에서 수신하므로 rpc.mountd 를 하나의 포트 에 바인딩 한 다음 해당 특정 포트에서 들어오는 연결을 수락하기 위해 추가 UFW 규칙을 추가 할 수 있습니다.

이렇게하려면 / etc / default / nfs-kernel-server를 열고 행을 주석 처리하십시오.

RPCMOUNTDOPTS=--manage-gids

다음 줄을 추가하십시오

RPCMOUNTDOPTS="-p 13025"

13025는 임의로 선택된 포트로, 사용 가능하며 / etc / services 에 아직 정의되지 않은 포트 입니다.

로 NFSd를 다시 시작하십시오. sudo /etc/init.d/nfs-kernel-server restart

이제 포트 13025 , 2049 및 포트 111 에서 들어오는 연결을 수락하도록 UFW를 구성하십시오 .

ufw allow from 192.168.1.0/24 to any port 111
ufw allow from 192.168.1.0/24 to any port 2049
ufw allow from 192.168.1.0/24 to any port 13025

그게 다야. 이제 다른 머신에서 내보내기를 마운트 할 수 있습니다. :-)


13025를 정의한 것을 보았습니다. 왜 111과 2049에서도 ufw를 사용합니까? 왜 111과 2049는 무엇입니까?
Phate

@Phate 111 및 2049는 NFS의 기본 포트입니다 ( 여기 참조) .
Sven

1
TCP와 함께 NFSv4를 사용하는 경우 2049 만 열면된다고 생각합니다.
Rotareti

1
왜 제거 --manage-gids합니까?
ændrük

2
16.04+에서 NFS를 다시 시작하려면 :sudo systemctl restart nfs-kernel-server
HDave

0

새로운 버전의 Ubuntu를 사용하여 복잡한 작업을 수행 할 필요는 없습니다. 우분투 18.04 ufw 및 nfs-kernel-server.

호스트에서 nfs를 허용하려면이 명령을 사용하십시오.

sudo ufw allow from your_client_ip to any port nfs

또는

sudo ufw allow from your_client_ip_block/24 to any port nfs
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.