5.4. Aseguramiento de NFS

El Sistema de Archivos de Red o NFS (Network File System) 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 Network File System (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.

ImportanteImportante
 

Se recomienda que cualquiera que esté planeando implementar un servidor NFS que primero asegure el servicio portmap como se describió en la Sección 5.2, antes de resolver los siguientes problemas.

5.4.1. Planee la red cuidadosamente

Debido a que NFS pasa toda la información sin encriptar sobre la red, es importante que el servicio sea ejecutado detrás de un firewall y en un segmento de la red seguro. Cada vez que se pase información sobre NFS en una red insegura, hay riesgos de ser interceptado. Un diseño cuidadoso en este aspecto puede ayudar a prevenir aberturas de la seguridad.

5.4.2. Cuidado con los errores sintácticos

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/ a la máquina 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 a la máquina 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>

5.4.3. No utilice la opción no_root_squash

Por defecto, los directorios compartidos NFS cambian el usuario root 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.