NFS jest blokowany przez ufw, mimo że porty są otwarte

11

Skonfigurowałem serwer nfsv4 i działa dobrze, jednak zapora blokuje nfs, nawet jeśli port 2049 i 111 są otwarte.

Wiem, że nfs używa losowych portów, które zmieniają się przy każdym uruchomieniu, ale jak mogę ustawić je w sposób statyczny, aby móc używać nfs bez ponownego wyłączania zapory?

Słoik
źródło

Odpowiedzi:

30

Zrobiłem trochę więcej badań w tym zakresie. Ubuntu korzysta z UFW, który jest niezwykle łatwy w konfiguracji, ale bardzo silny, przynajmniej na potrzeby soho. Zatem rpc.mountd domyślnie nasłuchuje na wielu portach, dlatego musisz powiązać rpc.mountd z jednym portem, a następnie możesz dodać dodatkową regułę UFW, aby zaakceptować połączenie przychodzące na tym konkretnym porcie.

Aby to zrobić, otwórz / etc / default / nfs-kernel-server i skomentuj wiersz

RPCMOUNTDOPTS=--manage-gids

i dodaj następujący wiersz

RPCMOUNTDOPTS="-p 13025"

13025 jest tylko losowo wybranym portem, czymś, co jest dostępne i nie jest jeszcze zdefiniowane w / etc / services .

Uruchom ponownie NFSd za pomocą sudo /etc/init.d/nfs-kernel-server restart

Teraz skonfiguruj UFW, aby akceptował połączenia przychodzące na portach 13025 , 2049 i 111 .

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

Otóż ​​to. Powinieneś być teraz w stanie zamontować eksport z innej maszyny. :-)

Słoik
źródło
Widziałem, że właśnie zdefiniowałeś 13025, dlaczego używasz ufw również w 111 i 2049? Co to są 111 i 2049? Dlaczego te porty?
Phate
@ Phate 111 i 2049 są domyślnymi portami NFS, patrz tutaj .
Sven
1
Myślę, że musisz otworzyć 2049 tylko, jeśli używasz NFSv4 z TCP.
Rotareti
1
Dlaczego Usunąć --manage-gids?
ændrük
2
w 16.04+, aby zrestartować NFS, wykonaj:sudo systemctl restart nfs-kernel-server
HDave
0

Nie musisz wykonywać skomplikowanych operacji z nowymi wersjami Ubuntu. Ubuntu 18.04 ufw i serwer jądra NFS.

Wystarczy użyć tego polecenia, aby zezwolić nfs na twoim hoście

sudo ufw allow from your_client_ip to any port nfs

lub

sudo ufw allow from your_client_ip_block/24 to any port nfs
Kunthar
źródło