En aquest tutorial, ens centrarem en els conceptes fonamentals de xarxa de NFS, específicament, els ports utilitzats pels serveis NFS. Un cop hàgim entès els ports i serveis específics del recurs compartit NFS, els podem utilitzar per configurar mesures de seguretat com ara tallafocs i resolució de problemes.
Com funciona NFS
Hi ha tres versions de NFS compatibles en el moment d’escriure aquest article. NFS v2 és el més antic i el més admès.
NFS v3 és més recent que NFS V2 i ofereix més funcions, com ara un tractament de mida variable, informes d’errors millorats, etc. No obstant això, NFS v3 no és compatible amb els clients NFS v2.
La versió més recent de NFS v4 proporciona funcions noves i millorades. Inclouen operacions amb estat, compatibilitat amb NFS v2 i NFS v3, requisit de portmapper eliminat, interoperabilitat multiplataforma, millor maneig de l’espai de noms, seguretat integrada amb ACL i Kerberos.
La següent és una comparació de NFS v3 i NFS v 4.
Funció | NFS v3 | NFS v4 |
Protocol de transport | TCP i UDP | Només UDP |
Gestió de permisos | Unix | Basat en Windows |
Mètode d'autenticació | Auth_Sys: més feble | Kerberos (fort) |
Personalitat | Apàtrides | Estatal |
Semàntica | Unix | Unix i Windows |
La taula anterior mostra algunes de les característiques del protocol NFS 4 contra el protocol NFS 3. Si voleu obtenir més informació, tingueu en compte el document oficial que es proporciona a continuació:
https://datatracker.ietf.org/doc/html/rfc3530
NFS v4 no utilitza un portmapper i els serveis requerits per NFS V2 i V3 no són necessaris. Per tant, a NFS v4, només cal el port 2049.
NFS v2 i v2, però, requereixen ports i serveis addicionals, que parlarem en aquest tutorial.
Serveis necessaris (NFS v2 i V3)
Com es va esmentar, NFS v2 i v3 utilitzen el servei de portmap. El servei de portmap de Linux gestiona les trucades de procediment remot, que NFS (v2 i v3) utilitza per codificar i descodificar sol·licituds entre el client i els servidors.
Per implementar l’ús compartit NFS, calen els serveis següents. Tingueu en compte que això només és per a NFS v2 i v3.
- Portmapper
- Mountd
- Nfsd
- Lockd
- Estad
#: Portmapper
El servei Portmapper és necessari per executar NFS tant al client com al servidor. S’executa al port 111 tant per als protocols TCP com UDP.
Si esteu implementant un tallafoc, assegureu-vos que aquest port està permès per als paquets entrants i sortints.
#: Mountd
L'altre servei necessari per executar NFS és el dimoni mountd. Aquest servei s’executa al servidor NFS i s’utilitza per gestionar les sol·licituds de muntatge dels clients NFS. Es tracta principalment del servei nfsd i no requereix configuració de l'usuari.
Tot i això, podeu editar la configuració per establir un port estàtic al fitxer / etc / sysconfig / nfs. Cerqueu el / i configureu:
MOUNTD_PORT=[port]#: NFSD
Aquest és el dimoni NFS que s’executa als servidors NFS. Aquest és un servei crític que funciona amb el nucli Linux per proporcionar funcionalitats com a fils de servidor per a tots els clients connectats al servidor.
Per defecte, el dimoni NFS ja està configurat per executar un port estàtic de 2049. El port és cert tant als protocols TCP com UDP.
#: Lockd & Statd
El dimoni NFS Lock Manager (lockd) i el dimoni Status Manager (statd) són altres serveis necessaris per executar NFS. Aquests dimonis s'executen al costat del servidor i del client.
El dimoni lockd permet als clients NFS bloquejar fitxers al servidor NFS.
D'altra banda, el dimoni statd s'encarrega de notificar als usuaris quan es reinicia el servidor NFS sense un tancament elegant. Implementa el protocol RPC Network Status Monitor.
Tot i que tots dos serveis s’inicien automàticament amb el servei nfslock, podeu configurar-los per executar un port estàtic, que pot ser útil en configuracions de tallafocs.
Definiu un port estàtic per als dimonis statd i lockd, editeu el fitxer / etc / sysconfig / nfs i introduïu les entrades següents.
STATD_PORT=[port]LOCKD_TCPPORT=[port]
LOCKD_UDPPORT=[port]
Recapitulació ràpida
Vegem un resum resum del que acabem de tractar.
Si esteu executant NFS v4, tot el que necessiteu és permetre el port 2049. Tot i això, si esteu executant NFS v2 o v3, heu d'editar el fitxer / etc / sysconfig / nfs i afegir els ports dels serveis següents.
- Mountd - MOUNTD_PORT = port
- Statd - STATD_PORT = port
- LOCKD - LOCKD_TCPPORT = port, LOCKD_UDPPORT = port
Finalment, heu d’assegurar-vos que el dimoni NFSD s’executa al port 2049 i el portmapper al port 111
NOTA: Si el fitxer / etc / sysconfig / nfs no existeix, creeu-lo i afegiu les entrades especificades al tutorial.
També podeu comprovar / var / log / messages si el servei NFS no s'inicia correctament. Assegureu-vos que els ports que heu especificat no s’utilitzen.
Exemple de configuració
El següent és un paràmetre de configuració del servidor NFS en un servidor CentOS 8.
Un cop hàgiu editat la configuració i hagueu afegit els ports necessaris tal com es descriu al tutorial, reinicieu el servei com:
suosystemctl inicia nfs-server.serviceA continuació, confirmeu que el servei s'està executant mitjançant l'ordre:
suosystemctl status nfs-server.service
Finalment, confirmeu els ports que s’executen amb rpcinfo tal com es mostra a l’ordre següent:
suorpcinfo-p
Conclusió
Aquest tutorial va discutir els conceptes bàsics de xarxa del protocol NFS i els ports i serveis necessaris per a NFS v2, v3 i v4.
Gràcies per llegir i sigueu un friki orgullós.