next up previous contents
Next: 3.2.5 Configuración servidor NIS Up: 3.2 Software Previous: 3.2.3 Organización de sistemas   Índice General

3.2.4 Servidor NFS

El sistema de archivos en red (NFS) permite acceder a archivos ubicados en sistemas remotos tal como si se encontraran localmente. En este caso es de gran importancia ya que a través de NFS se proporcionarán los sistemas de archivos raíz y un área compartida para los nodos del cluster. El protocolo NFS fue desarrollado por Sun Microsystems, aunque está también publicado en el RFC 1094 [2], por lo tanto su uso está muy difundido como uno de los principales mecanismos para compartir archivos en redes de área local.

Linux cuenta con implementaciones NFS tanto para clientes como para servidores. Como se explicó en la página [*], el soporte para cliente NFS se compila directamente en el kernel. Así el kernel puede montar directamente sistemas de archivos que residen en otros servidores.

El software que permite a Linux fungir como servidor NFS está contenido en el paquete nfs-utils. Éste se incluye en la distribución Red Hat, sin embargo no se instala por default por lo que se debe agregar posteriormente. Tambien se debe habilitar el servicio NFS, de modo que al iniciar el sistema arranque el ``demonio'' NFS.

El demonio NFS requiere un archivo de configuración que le indique qué sistemas de archivos y directorios debe exportar, o hacer disponibles, así como varios parámetros que controlan el acceso que los clientes tendrán a estos sistemas de archivos.

El archivo de configuración que se debe crear es /etc/exports. Este archivo queda como sigue:

/tftpboot 192.168.10.0/255.255.255.0(rw,no_root_squash)
/home 192.168.10.0/255.255.255.0(rw,no_root_squash)
/usr 192.168.10.0/255.255.255.0(rw,no_root_squash)

Cada línea indica el directorio a exportar, seguido de opciones que controlan el acceso al recurso. En este caso estamos especificando que los directorios solo podrán ser exportados a hosts con dirección IP dentro de la subred 192.168.10.0 y máscara 255.255.255.0 (lo cual corresponde precisamente a la subred que estamos empleando para los nodos del cluster). Los parámetros entre paréntesis indican los privilegios con que se exporta el recurso.

En este caso especificamos rw (read/write), lo cual indica que se permiten peticiones de lectura y escritura en el sistema exportado. Comúnmente se especifica la opción ro (read only), pero en este caso se requiere acceso total porque los nodos requerirán la capacidad de escribir en sus sistemas de archivos remotos.

El parámetro no_root_squash desactiva el ``aplastamiento de root'', que es el comportamiento por omisión al exportar por NFS. Normalmente, para evitar que un sistema remoto monte un sistema de archivos y el superusuario de ese sistema tenga acceso total a nuestro sistema, el NFS mapea las peticiones realizadas por el usuario con uid3.5 0 a un usuario anónimo con privilegios mínimos. En este caso se desea que los accesos con uid 0 no tengan un mapeo a un uid diferente, pues en los nodos sí se requieren accesos privilegiados. Esto no representa un riesgo de seguridad porque en este caso los accesos privilegiados están restringidos a los nodos, sobre los cuales se tiene bastante control administrativo.


next up previous contents
Next: 3.2.5 Configuración servidor NIS Up: 3.2 Software Previous: 3.2.3 Organización de sistemas   Índice General
2002-05-15