W tym samouczku skupimy się na podstawowych koncepcjach sieciowych NFS, w szczególności portach używanych przez NFS Services. Gdy zrozumiemy konkretne porty i usługi Udział NFS, możemy je użyć do skonfigurowania środków bezpieczeństwa, takich jak zapory ogniowe i rozwiązywanie problemów.
Jak działa NFS
Istnieją trzy wersje NFS obsługiwane w momencie pisania tego artykułu. NFS V2 jest najstarszy i najczęściej obsługiwany.
NFS V3 jest nowszy niż NFS V2 i oferuje więcej funkcji, takich jak obsługa zmiennej wielkości, ulepszone raportowanie błędów itp. Jednak NFS V3 nie jest kompatybilny z klientami NFS V2.
Najnowsza wersja NFS V4 zapewnia nowe i ulepszone funkcje. Obejmują one operacje stanowe, zgodność wsteczną z NFS V2 i NFS V3, usunięte wymagania portmapper, interopatryzację międzyplatformową, lepszą obsługę przestrzeni nazw, wbudowane bezpieczeństwo z ACL i Kerberos.
Poniżej znajduje się porównanie NFS V3 i NFS V 4.
Funkcja | NFS V3 | NFS V4 |
Protokół transportu | TCP i UDP | TCP z obsługą UDP w Rehl Enterprise |
Obsługa uprawnień | UNIX | Oparte na systemie UNIX, Securenfs i Modebit/Kerberos i ACL |
Metoda Uwierzytelnienia | Auth_sys - Słabsze | Kerberos (Strong) |
Osobowość | Bezstanowy | Stateful |
Semantyka | UNIX | UNIX i Windows |
Powyższa tabela pokazuje niektóre cechy protokołu NFS 4 vs. Protokół NFS 3. Jeśli chcesz dowiedzieć się więcej, rozważ oficjalny dokument podany poniżej:
https: // datatracker.IETF.ORG/DOC/HTML/RFC3530
NFS V4 nie korzysta z PortMapper, a usługi wymagane przez NFS V2 i V3 są nieodłączone. Dlatego w NFS V4 wymagany jest tylko port 2049.
NFS V2 i V2 wymagają jednak dodatkowych portów i usług, które zamierzamy omówić w tym samouczku.
Wymagane usługi (NFS V2 i V3)
Jak wspomniano, NFS V2 i V3 używają usługi PortMap. Usługa PortMap w Linux obsługuje zdalne wywołania procedury, których NFS (V2 i V3) używa do kodowania i dekodowania żądań między klientem a serwerami.
Aby wdrożyć udostępnianie NFS, wymagane są następujące usługi. Pamiętaj, że dotyczy to tylko NFS V2 i V3.
#: Portmapper
Usługa PortMapper jest zobowiązana do uruchamiania NFS zarówno na kliencie, jak i po stronie serwera. Działa na porcie 111 zarówno dla protokołów TCP, jak i UDP.
Jeśli wdrażasz zaporę ogniową, upewnij się, że ten port jest dozwolony dla pakietów przychodzących i wychodzących.
#: Mountd
Inną usługą wymaganą do uruchomienia NFS jest demon Mountd. Ta usługa działa na serwerze NFS i służy do obsługi żądań montażu od klientów NFS. Obsługuje go głównie usługa NFSD i nie wymaga konfiguracji użytkownika.
Możesz jednak edytować konfigurację, aby ustawić port statyczny w pliku/etc/sysconfig/nfs. Znajdź / i zestaw:
Mountd_port = [port]
#: NFSD
To jest demon NFS, który działa na serwerach NFS. Jest to krytyczna usługa, która współpracuje z jądrem Linux, aby zapewnić funkcjonalność, takie jak wątki serwera dla wszystkich klientów podłączonych do serwera.
Domyślnie demon NFS jest już skonfigurowany do uruchamiania portu statycznego 2049. Port jest prawdziwy zarówno w protokołach TCP, jak i UDP.
#: Lockd & Statd
Demon NFS Block Manager (Lockd) i Demon menedżera statusu (STATD) to inne usługi wymagane R do uruchomienia NFS. Te demony działają po stronie serwera i po stronie klienta.
Demon Lockd pozwala klientom NFS blokować pliki na serwerze NFS.
Z drugiej strony demon STATD jest odpowiedzialny za powiadomienie użytkowników, gdy serwer NFS zostanie ponownie uruchomiony bez wdzięcznego zamknięcia. Wdraża protokół RPC Monitor Status Status.
Chociaż obie te usługi są uruchamiane automatycznie przez usługę NFSLOCK, możesz skonfigurować je do uruchomienia portu statycznego, co może być przydatne w konfiguracjach zapory.
Ustaw statyczny port dla demonów STATD i Lockd, edytuj/etc/sysconfig/nfs i wprowadź następujące wpisy.
Statd_port = [port]
Lockd_tcpport = [port]
Lockd_udpport = [port]
Szybkie podsumowanie
Spójrzmy na szybkie podsumowanie tego, co właśnie omówiliśmy.
Jeśli używasz NFS V4, wszystko, czego potrzebujesz, to zezwolić na port 2049. Jeśli jednak używasz NFS V2 lub V3, musisz edytować plik/etc/sysconfig/nfs i dodać porty dla następujących usług.
Na koniec musisz upewnić się, że demon NFSD działa na porcie 2049, a PortMapper na porcie 111
NOTATKA: Jeśli plik/etc/sysconfig/nfs nie istnieje, utwórz i dodaj wpisy określone w samouczku.
Możesz także sprawdzić/var/log/wiadomości, jeśli usługa NFS nie uruchamia się poprawnie. Upewnij się, że określone porty nie są używane.
Przykładowy konfigurację
Poniżej znajduje się ustawienie konfiguracyjne serwera NFS na serwerze CentOS 8.
Po edytowaniu konfiguracji i dodaniu niezbędnych portów, jak omówiono w samouczku, uruchom ponownie usługę jako:
sudo systemctl start nfs-server.praca
Następnie potwierdź, że usługa działa za pomocą polecenia:
SUDO SYSTEMCTL Status NFS-SERVER.praca
Na koniec potwierdź porty działające za pomocą rpCinfo, jak pokazano w poniższym poleceniu:
sudo rpcinfo -p
Wniosek
W tym samouczku omówiono podstawy sieci protokołu NFS oraz porty i usługi wymagane zarówno dla NFS V2, V3, jak i V4.
Dziękuję za przeczytanie i bądź dumnym maniakiem!