Sei sulla pagina 1di 7

Cmo Configurar un Servidor y un Cliente NFS

Esta gua explica cmo configurar un servidor NFS y un cliente NFS en Debian Lenny. NFS significa Network File System, a travs de NFS, un cliente puede tener acceso (leer, escribir) un recurso compartido remoto en un servidor NFS como si estuviera en el disco duro local. Instalacion Sistema NFS del Lado del Servidor Debemos realizar la instalacin como usuario root.

$ sudo su $ apt-get install nfs-kernel-server nfs-common portmap Al ejecutar los comandos anteriores se habra instalado el sistema nfs. Como exportar Directorios en el Servidor. El archivo /etc/exports controla cules sistemas de archivos son exportados a las mquinas remotas y especifica opciones particulares que controlen todo. Las lneas en blanco son ignoradas, se pueden comentar lneas con el smbolo # y las lneas largas pueden ser divididas con una barra invertida (\). Cada sistema de archivos exportado debe tener su propia lnea. La lista de mquinas autorizadas colocada despus de un sistema de archivos exportado, debe estar separada por un espacio. Las opciones para cada uno de las mquinas deben ser colocadas entre parntesis directamente detrs del identificador de la mquina, sin ningn espacio de separacin entre la mquina y el primer parntesis. De esta sencilla manera, /etc/exports slo necesita saber el directorio a exportar y las mquinas que pueden usarlo: Sintaxis: FS_A_EXPORTAR Ejemplo: /some/directory bob.example.com /another/exported/directory 192.168.0.3 [ NOMBRE_MAQ | DIR_IP | META_CHARS ](OPCIONES)

Despus de reiniciar el servicio nfs, la mquina bob.example.com ser capaz de montar /some/directory y 192.168.0.3 podr montar /another/exported/directory. Como no hay opciones especificadas en este ejemplo, las opciones por defecto toman efecto para los directorios:

ro Slo lectura (read-only). Las mquinas que monten este sistema de archivos no
podrn cambiarlo. Para permitirlas que puedan hacer cambios en el sistema de archivos, debe especificar la opcin rw (lectura-escritura, read-write).

async Permite al servidor escribir los datos en el disco cuando lo crea conveniente.
Mientras que esto no tiene importancia en un sistema de slo lectura, si una mquina hace cambios en un sistema de archivos de lectura-escritura y el servidor se cae o se apaga, se pueden perder datos. Especificando la opcin sync, todas las escrituras en el disco deben hacerse antes de devolver el control al cliente. Esto puede que disminuya el rendimiento.

wdelay Provoca que el servidor NFS retrase el escribir a disco si sospecha que otra
peticin de escritura es inminente. Esto puede mejorar el rendimiento reduciendo las veces que se debe acceder al disco por comandos de escritura separados. Use no_wdelay para desactivar esta opcin, la cual slo funciona si est usando la opcin sync.

root_squash Previene a los usuarios root conectados remotamente de tener privilegios


como root asignndole el userid de 'nobody'. Esto reconvierte el poder del usuario root remoto al de usuario local ms bajo, previniendo que los usuarios root remotos puedan convertirse en usuarios root en el sistema local. Alternativamente, la opcin no_root_squash lo desactiva. Para reconvertir a todos los usuarios, incluyendo a root, use la opcin all_squash. Para especificar los ID de usuario y grupo para usar con usuarios remotos desde una mquina particular, use las opciones anonuid y anongid, respectivamente. De esta manera, puede crear una cuenta de usuario especial para usuarios NFS remotos para compartir y especificar (anonuid=<uid-value>,anongid=<gidvalue>), donde <uid-value> es el nmero ID de usuario y <gid-value> es el nmero ID de grupo. Para saltarse estas opciones predeterminadas, debe especificar una opcin que tome su lugar. Por ejemplo, si no especifica la opcin rw, entonces se exportar en slo lectura. Cada opcin predeterminada para cada sistema de archivos exportado, debe ser explcitamente ignorada. Vea la pgina man de exports para ver todas las opciones que se pueden usar.

Cuando especifique los nombres de mquinas, use los mtodos siguientes: una sola mquina Cuando una mquina en particular es especificada con nombre completo de dominio, nombre de mquina o direccin IP.

comodines Cuando usamos un carcter * o ? para referirnos a un grupo de nombres


completos de dominio o direcciones IP o que coincidan con una cadena particular de letras. Sin embargo, tenga cuidado cuando especifique comodines con nombres de dominio completos, pues tienden a ser ms exactos de lo que usted cree. Por ejemplo, el uso de *.example.com como comodn, permitir a ventas.domain.com acceder al sistema de archivos exportado, pero no a bob.ventas.domain.com. Para permitir ambas posibilidades, as como a sam.corp.domain.com, debera usar *.example.com *.*.example.com.

redes IP Permite el acceso a mquinas basadas en sus direcciones IP dentro de una red
ms grande. Por ejemplo, 192.168.0.0/15 permite al acceso a las primeras 16 direcciones IP, desde la 192.168.0.0 a la 192.168.0.15, acceder al sistema de archivos, pero no a la 192.168.0.16 y superiores.

grupos de redes Permite que un nombre de grupo de red NIS, escrita como @<groupname>, sea usada. Esto pone al servidor NIS controlando el acceso de este sistema de archivos, donde los usuarios pueden ser aadidos o borrados de un grupo NIS sin que afecte a /etc/exports. Aviso La manera en que el archivo /etc/exports est organizado es muy importante, particularmente lo que concierne a los espacios en blanco. Recuerde separar siempre los sistemas de archivos exportados de una mquina a la otra, con un espacio. Sin embargo, no debera haber otros espacios en el archivo a menos que se usen en lneas comentadas. Por ejemplo, las siguientes dos lneas significan cosas distintas: /home bob.example.com(rw) /home bob.example.com (rw) La primera lnea permite slo a los usuarios de bob.example.com acceder en modo de lectura-escritura al directorio /home. La segunda lnea permite a los usuarios de bob.example.com montar el directorio de solo lectura (el predeterminado), pero el resto del mundo puede instalarlo como lectura-escritura. Ejemplo completo del posible contenido de un archivo exports.

/home

dir_ip_cliente(rw,sync,no_root_squash,no_subtree_check)

/var/nfs dir_ip_cliente(rw,sync,no_subtree_check) Cada vez que se modifique el archivo /etc/exports, debemos correr el comando

exportfs -a para hacer efectivos los cambios. Agregando mayor seguridad al Servidor NFS Para mayor seguridad el sistema NFS tiene 2 archivos de configuracin que se pueden utilizar para el control de acceso. Estos archivos son: /etc/hosts.allow /etc/host.deny En el archivo /etc/hosts.allow especificaremos que hosts van a poder usar los servicios: Portmap (demonio de asignacin dinmica de puertos). Mountd (demonio para montar sistemas de ficheros remotos o locales). Rquotad (Demonio para gestin de cuotas remotas).

Ejemplo:

portmap:dir_ip,rango_direcciones,url

En el archivo /etc/hosts.deny especificaremos que hosts no van a poder usar los servicios: Portmap (demonio de asignacin dinmica de puertos). Mountd (demonio para montar sistemas de ficheros remotos o locales). Rquotad (Demonio para gestin de cuotas remotas). Lo ms recomendable es denegar el acceso por completo. Ejemplo: portmap:ALL

Configuracion del Cliente NFS

En el cliente NFS se pueden instalar de la siguiente manera:

apt-get install portmap nfs-common Desde el cliente lo nico que se necesita para poder acceder a la carpeta compartida es montar la unidad de red en una carpeta del sistema cliente, que lo identificamos por su direccin IP. Primero creamos el directorio donde queremos montar el NFS, por ejemplo:

mkdir -p /mnt/nfs/home mkdir -p /mnt/nfs/var/nfs Luego, podemos montar de la siguiente manera:

mount dir_ip_server:/home /mnt/nfs/home mount dir_ip_server:/var/nfs /mnt/nfs/var/nfs Con esto ya debemos tener montados en la carpeta /mnt/nfs, los directorios que se exportaron en el cdigo anterior. Como hacer que el cliente exporte las carpetas al arrancar inicio de sesion. Para tener acceso a la carpeta de red desde el inicio del sistema solo necesitamos editar el archivo: /etc/fstab Lo que tenemos que hacer es agregar las lineas segn el numero de carpetas compartidas que queramos tener. Codigo: <server>:</path/of/dir> </local/mnt/point> nfs <options> 0 0

La opcin <server-host> tiene que ver con el nombre de la mquina, direccin IP o nombre
de dominio totalmente cualificado del servidor que exporta el sistema de archivos.

La opcin </path/of/directory> es la ruta al directorio exportado. La opcin </local/mount/point> especifica dnde montar en el sistema de archivos local el
directorio exportado. Este punto de montaje debe existir antes de que /etc/fstab sea ledo o el montaje fallar.

La opcin nfs especifica el tipo de sistema de archivos que esta siendo montado. El rea <options> especifica como el sistema de archivos es montado. Por ejemplo, si las
opciones indican rw,suid, el sistema de archivos exportado ser montado en modo de lectura-escritura y los ID de usuario y grupo puestos por el servidor sern usados. Aqu no se usan parntesis. Aparte de montar un sistema de archivos via NFS en una mquina remota, existe un nmero de diferentes opciones que pueden ser especificadas en tiempo de montaje que pueden ser ms fciles de usar. Estas opciones pueden usarse con el comando manual mount, configuraciones /etc/fstab, autofs y otros mtodos de montaje. Las siguientes opciones son las ms populares para montajes NFS:

hard o soft especifican si el programa que usa un archivo va conexin NFS debe parar y
esperar a que el servidor vuelva a estar en lnea si la mquina que exporta ese sistema de archivos no est disponible (hard), o bien debe informar de un error (soft). Si se especifica la opcin hard, el usuario no podr parar el proceso que est esperando la comunicacin NFS a menos que especifique la opcin intr. Si usa soft, puede usar la opcin adicional timeo=<value>, donde <value> especifica el nmero de segundos que deben pasar antes de informar del error.

intr permite a las peticiones NFS ser interrumpidas si el servidor se cae o no puede ser
accedido.

nolock es requerido a veces cuando conectamos a servidores NFS antiguos. Para requerir
el bloqueo, use la opcin lock.

noexec no permite la ejecucin de binarios en el sistema de archivos montado. Esto es


til si el sistema est montando un sistema de archivos no Linux a travs de NFS que contiene binarios incompatibles.

nosuid no permite que los bits set-user-identifier o set-group-identifier tomen efecto. rsize=8192 y wsize=8192 pueden acelerar la comunicacin NFS tanto para leer (rsize)
como para escribir (wsize), configurando un tamao de bloque de datos mayor, en bytes, que sern transferidos de una sola vez. Tenga cuidado al cambiar estos valores; algunos kernels antiguos de Linux y tarjetas de red pueden no trabajar bien con grandes tamaos de bloques.

nfsvers=2 o nfsvers=3 especifica que versin del protocolo NFS usar.


Ejemplo:

dir_ip_server:/home dir_ip_server:/var/nfs

/mnt/nfs/home

nfs

rw,sync,hard,intr

/mnt/nfs/var/nfs

nfs

rw,sync,hard,intr 0 0

se reinicia, y ya tendremos nuestros cliente nfs en funcionamiento.

Potrebbero piacerti anche