El Sistema de Archivos de Red (Network File System o NFS,) es un servicio RPC que se usa conjuntamente con portmap y otros servicios relacionados para proporcionar sistemas de archivos accesibles a través de la red a las máquinas clientes. Para más información sobre cómo NFS funciona, refiérase al capítulo llamado Sistemas de archivos de red (NFS) en el Manual de referencia de Red Hat Enterprise Linux. Para más información sobre la configuración de NFS, consulte el Manual de administración del sistema de Red Hat Enterprise Linux. Las siguientes subsecciones asumen que ya se tiene un conocimiento básico de NFS.
![]() | Importante |
|---|---|
La versión de NFS incluida con Red Hat Enterprise Linux, NFSv4, ya no requiere del servicio portmap como se describe en la Sección 5.2. El tráfico NFS ahora utiliza TCP en todas las versiones, en vez de UDP, y se requiere cuando se utiliza NFSv4. NFSv4 incluye la autenticación de usuarios y grupos de Kerberos, como parte del módulo RPCSEC_GSS. Aún se incluye la información sobre portmap, puesto que Red Hat Enterprise Linux es compatible con NFSv2 y NFSv3 los cuales lo utilizan. |
Debido a que NFSv4 tiene la habilidad de pasar toda la información encriptada sobre la red usando Kerberos, es importante que el servicio sea configurado correctamente si se encuentra detrás de un cortafuegos o en un segmento de la red. NFSv2 y NFSv3 aún envían la información de forma insegura y se deberían de tomar las medidas necesarias. Un diseño cuidadoso en este aspecto puede ayudar a prevenir violaciones de la seguridad.
El servidor NFS determina cuáles sistemas de archivos exportar y a cuáles máquinas exportar estos directorios a través del archivo /etc/exports. Tenga cuidado de no añadir espacios adicionales cuando edite este archivo.
Por ejemplo, la línea siguiente en el archivo /etc/exports comparte el directorio /tmp/nfs/ al host bob.example.com con permisos de lectura y escritura.
/tmp/nfs/ bob.example.com(rw) |
Por otro lado, esta línea en el archivo /etc/exports, comparte el mismo directorio con el host bob.example.com con permisos de sólo lectura y lo comparte con todo el mundo con permisos de lectura y escritura debido a un espacio en blanco luego del nombre de la máquina.
/tmp/nfs/ bob.example.com (rw) |
Es un buen hábito verificar cualquier directorio compartido NFS usando el comando showmount para verificar que está siendo compartido:
showmount -e <hostname> |
Por defecto, los directorios compartidos NFS cambian el usuario root (superusuario) por el usuario nfsnobody, una cuenta de usuario sin privilegios. De esta forma, todos los archivos creados por root son propiedad del usuario nfsnobody, lo que previene la carga de programas con la configuración del bit setuid.
Si se utiliza no_root_squash, los usuarios remotos podrán cambiar cualquier archivo en el sistema de archivos compartido y dejar aplicaciones con troyanos para que otros usuarios las ejecuten inadvertidamente.