#4sysadmins

Inicio » GNU/Linux » Instalar y configurar NFS

Instalar y configurar NFS

Últimas Entradas

Follow #4sysadmins on WordPress.com

 

Compartir archivos en Linux con NFS

 

En entradas anteriores hemos aprendido a compartir archivos mediante el protocolo DLNA/UPnP, HTTP y SAMBA. Ahora veremos como compartir un directorio bajo NFS (Network File System) con NIS (Network Information Service) que nos proporcionará toda la información relativa a usuarios y grupos del NFS.Ya vimos que compartir un directorio con NFS tenía ciertas desventajas, una es que al conservarse los usuarios, grupos y permisos en el directorio compartido, necesitábamos estas credenciales para poder acceder (algo que solucionaremos con NIS) y otra es la seguridad, ni NFS ni NIS son protocolos cifrados. Esta segunda desventaja se solucionará en cierta forma indicando a que IP únicamente queremos exportar la carpeta (para esto necesitaremos que las máquinas clientes tengan dirección IP estática) y digo en cierta forma porque a parte de nunca estar seguros, podríamos recibir un ataque por ejemplo tipo man in the middle que se hiciera con alguna de estas IP estáticas y listo…

Nota: Una posible solución sería securizar el túnel desde nuestra máquina al directorio NFS bajo SSL

Instalando servicios

AVISO: En esta entrada vamos a instalar y configurar únicamente NFS, el cual ya adelantábamos que trabajará con NIS. Al final de esta entrada dejaré un link a otra entrada en la que se instala y configura NIS a nivel de servidor y cliente.

Lo primero será descargar e instalar nfs en la máquina servidora (aquella que va a compartir la información):

$ sudo apt-get install nfs-kernel-server nfs-common

Configurando servidor NFS

Ahora vamos a configurar NFS, esto es muy sencillo, solo deberemos de modificar el archivo /etc/exports indicando que directorio queremos compartir y a que máquina:

$ sudo vi /etc/exports
/home/nebul4ck          192.168.1.130(ro,sync,root_squash)

Con esto indicamos que solo el host con IP 192.168.1.130 tendrá acceso a NFS en modo solo lectura, el contenido será sincronizado de momento y además todas las peticiones del usuario root serán trasladadas al usuario anonymous, se trata de una opción de seguridad que niega acceso a archivos con propietario root (id 0 o 65536). Podemos ver otras opciones en la página man de exports:

$ man exports

Algunas otras puede ser:

  • Kerberos: requerir autenticación kerberos
  • No_root_squash: evitar la restricción usada en nuestro ejemplo anterior
  • Map_identity: indica al servidor que el cliente utilizará el mismo mapa de uid y gid que el servidor
  • Insecure: permitir acceso sin autenticación
  • Unix-rpc: requerir autenticación RPC

Ahora ya podemos iniciar el servicio NFS:

$ sudo service nfs-kernel-server start
$ sudo service rpcbind start

Comprobamos de que nfs se haya iniciado y permanezca a la escucha:

$ sudo netstat -puta |grep nfs
tcp    0    0    *:nfs    *:*     LISTEN    - 
tcp6   0    0    [::]:nfs  [::]:* LISTEN    - 
udp    0    0    *:nfs      *:*              - 
udp6   0    0    [::]:nfs   [::]:*          -

 

Configurando clientes NFS

En realidad la configuración para comenzar a consumir el recurso compartido por el servidor NFS desde el lado del cliente es tan simple como montar una carpeta en nuestro sistema de archivo. Deberemos de tener el servicio mountd instalado al igual que nfs-client y montar la carpeta de forma automática (desde el archivo /etc/fstab) o bien de forma manual tal que así:

$ sudo apt-get install nfs-client
$ mount -t nfs ip/nombre_servidor_nfs:/carpeta/compartida/por/nfs /mnt/punto/de/montaje

Si lo queremos configurar para que se automonte al inicio, añadiremos al archivo /etc/fstab una línea como está:

IP_o_HOSTNAME:/Directorio/compartido     /Punto_de_montaje/local

 

IMPORTANTE: Podemos aprender a instalar y configurar NIS (Network Information System) en la siguiente entrada

Anuncios

2 comentarios

  1. Joaquín dice:

    ¡Buena entrada! Me surge una duda. Si instalo un nuevo disco duro al que quiero dar acceso a todos los usuarios a través de nfs… sería exactamente igual?

    Gracias de antemano.
    Saludos.

    Me gusta

Deja un comentario, Gracias!

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: