viernes, 30 de enero de 2015

Configurar NFS en red hat 6.5



Un pequeño ejemplo para configurar NFS en red hat 6, seguramente funciona en otras distros (centos,fedora)

Primero NFS es un sistema de comparticion (network filesystem)
lo que vamos a compartir es un filesystem/carpeta de un server/pc a otro.

para eso ingresamos como root o superusuario al servidor host
y revisaremos la instalacion de los siguientes paquetes
nfs-utils y rpcbind, esto lo podemos hacer con 

yum list nfs-util rpcbind

si no se encuentran instalados, procedemos a bajarlos de los repos o bien bajamos los rpms ya sea de la red de red hat u otra fuente.

yum install nfs-utils rpcbind 

//yo me fui a la segura con yum y los repos base

una vez instalados, nos vamos a editar el archivo (con nano o vim etc...)
/etc/exports       y agregamos el folder que queremos compartir.
por poner un ejemplo como la siguiente línea :

/home/downloads/musica *(rw,sync,no_root_squash)

explicando un poco la línea de arriba 
1.- la ruta que queremos compartir : /home/downloads/musica
2.- la opción " * " : es la computadora a la que la queremos compartir, en este caso * es un wildcard/comodin que significa todas o cualquier maquina.
3.- opcion rw: esta opción dentro del parentesis otorga permisos de lectura y escritura, hay mas opciones pueden ir al man de nfs para saber más.

4.-opción sync: mantiene la escritura sincronizada entre los servers, esto permite que se actualice mas rapido la información en la carpeta compartida pero consume mas recursos de red, hay que tener en cuenta esta opción en caso de que se vea afectado el rendimiento por una alta cantidad de escritura, en ese caso quizá podamos revisar la opción async.

5.-no_root_squash : en este caso la opción yo la active por que el usuario root no era capaz de escribir en el filesystem, solo cualquier otro usuario entonces  al activar esta opción ya me permitió escribir en el filesystem sin líos, el detalle es que los archivos son visibles con el user "nobody" que pertenece a los usuarios reservados del sistema y permite la lectura,escritura y ejecución a cualquiera.

ahora editamos el archivo 
/etc/hosts.allow y agregamos las siguientes lineas
sshd: ALL

nfsd: ALL

rpcbind: ALL

con la instrucción anterior abri los puertos para ssh y el uso de nfs y rpc, hay que vigilar bien la configuración de este archivo, si el entorno requiere alta seguridad valdría la pena revisar las opciones que deseamos así como las ips que se van a agregar.

luego cambio el runlevel de los servicios para que el filesystem sea montado en automatico con cada reinicio y reiniciamos los servicios involucrados.

chkconfig nfs on o bien chkconfig --add nfs

chkconfig netfs on o bien chkconfig --add netfs

service nfs start  o /sbin/service/ nfs restart

service rpcbind start

para ver los filesystems exportados ejecuta 'exportfs' , 
cada que realicemos un cambio al archivo /etc/exports tendrás que ejecutar
'exportfs -ra' para que el servicio de NFS vuelva a releer el archivo y tomar la configuración.

ahora revisemos el portmapper
ejecutamos rpcinfo -p y deberíamos tener una salida similar a la siguiente imagen






<<<Ahora las siguientes instrucciones tendrán que aplicarse en el servidor o máquina cliente/destino (a donde queremos compartir la carpeta)>>>

-editamos /etc/fstab y agregamos una linea como la que sigue (todo en una línea)
mi_ip_o_mihostserver:/home/downloads/musica /home/downloads/musica nfs nfsvers=3 0

recuerda que al editar /etc/fstab estamos dando de alta un punto de montaje, así que tiene que existir la carpeta a donde queremos montar (compartir). para más información revisa las opciones de man fstab o busca más detalle, en otros post hablaré más a detalle sobre el archivo fstab.

-editamos el archivo /etc/hosts.allow y agregamos las siguientes líneas.
sshd: ALL

nfsd: ALL

rpcbind: ALL

-y finalmente ejecutamos mount -a para montar el nuevo NFS en /home/downloads/musica

o bien la opción

mount -t nfs mi_ip_o_mihostserver:/home/downloads/musica /home/downloads/musica

-ahora bien revisemos los runlevels con chkconfig --list nfs y si esta apagado (off) ejecuta:
  chkconfig nfs on o bien chkconfig --add nfs

 chkconfig netfs on o bien chkconfig --add netfs

para que funcione de manera estándar yo sugeriría que estuvieran los modos 1,3,4,y 5 prendidos (on) que abarcan los modos de un solo usuario, multiusuario y multiusuario con entorno gráfico al iniciar el sistema, no es el propósito de este post sobre los runlevels y a profundidad el manejo de servicios sin embargo dejo el pequeño tip o referencia.

solución de algunos errores:
en algunos casos puede ser necesario reiniciar el servicio de sshd o bien reiniciar los servicios de red o reiniciar ambos servers para que lean nuevamente la configuración de ssh y la configuración del archivo sshd_config, ejecuta esto solo cuando nfs no pueda arrancar.

service network restart
o service sshd restart 
o reiniciamos el sistema con init 6 o reboot

finalmente espero les sirva, ya en un post anterior agregue un link para configurar NFS pero dado que se encuentra en ingles y variaba un poco de lo que me funciono, agrego este post como medida complementaria.







No hay comentarios.:

Publicar un comentario