Como exportar un directorio mediante NFS para un cliente específico en RHEL7
Publicado en: junio 6, 2018

En este artículo explicaremos como exportar un directorio a través de la red mediante NFS para un cliente específico, con el fin de que sólo este tenga acceso a los recursos compartidos.
Para esto utilizaremos una configuración básica, además, al final del artículo se discutirá un tema importante sobre cómo implementar más seguridad al utilizar NFS
.
Para nuestro laboratorio utilizaremos los siguientes servidores:
- Servidor NFS:
192.168.2.60 server1
- Cliente NFS:
192.168.2.70 server2
Configuración para el Servidor NFS (server1)
Procedemos a instalar los paquetes necesarios en el servidor NFS
:
[[email protected] ~]# yum install nfs-utils
Seguidamente habilitamos e iniciamos el servicio NFS
:
[[email protected] ~]# systemctl enable nfs-server
[[email protected] ~]# systemctl start nfs-server
Debemos configurar el firewall para permitir el tráfico al puerto NFS
, recibir solicitudes de montaje “mountd”
y mapear direcciones “rpc-bind”
, después de esto se debe recargar el firewall para que los cambios se vean reflejados.
[[email protected] ~]# firewall-cmd --permanent --add-service={nfs,mountd,rpc-bind}
success
[[email protected] ~]# firewall-cmd --reload
success
Ahora creamos el directorio que deseamos compartir, en nuestro caso será el directorio /sharenfs
.
[[email protected] ~]# mkdir /sharenfs
El archivo de configuración para exportar directorios mediante NFS
se encuentra en /etc/exports
, procedemos a configurar la exportación del directorio /sharenfs
para el cliente con la ip 192.168.122.70 con permisos de lectura y escritura.
[[email protected] ~]# echo "/sharenfs 192.168.2.70(rw,sync,no_root_squash)" >> /etc/exports
Opciones de configuración:
rw:
Permiso de escritura y lectura a la carpeta compartida.sync:
Sincronización de cambios de inmediato.no_root_squash:
El root en el servidor cliente tendrá el mismo nivel de acceso a los archivos compartidos como root en el servidornfs
.
Nota: Si queremos compartir el directorio con una serie de clientes, separamos estos con una coma, también se puede utilizar los nombres de los hosts, por ejemplo:
[[email protected] ~]# echo "/sharenfs 192.168.2.70,192.168.2.80(rw)" >> /etc/exports
[[email protected] ~]# echo "/sharenfs server2.example.com(rw)" >> /etc/exports
Después de configurar el archivo exports
y luego de cualquier modificación se debe recargar la tabla de exportación con el siguiente comando:
[[email protected] ~]# exportfs -arv
exporting 192.168.2.70:/sharenfs
Configuración para el Cliente NFS (server2)
Procedemos a instalar los paquetes necesarios en el servidor cliente
:
[[email protected] ~]# yum install nfs-utils
Ahora verificamos la lista de recursos exportados por el servidor NFS
con el comando showmount
.
[[email protected] ~]# showmount -e 192.168.2.60
Export list for 192.168.2.60:
/sharenfs 192.168.2.70
Procedemos a crear el punto de montaje donde queremos montar el recurso.
[[email protected] nfs]# mkdir /mnt/nfs
Podemos montar el recurso compartido de manera persistente
o temporal
las diferencias entre ambos métodos son las siguientes:
Temporal:
Si realizamos un reinicio del servidor cliente no se montará automáticamente el recurso.
[[email protected] ~]# mount -t nfs 192.168.2.60:/sharenfs /mnt/nfs
Persistente:
Si realizamos un reinicio del servidor cliente se montará automáticamente el recurso, la opción “_netdev”
indica que en caso de reinicio se va a montar el recurso después de cargar la configuración de red, esto evita errores en el montaje.
[[email protected]~]# echo "192.168.2.60:/sharenfs /mnt/nfs nfs _netdev 0 0" >> /etc/fstab
[[email protected]~]# mount -a
Nota: Si desea cambiar el método de montaje de temporal a persistente, debe desmontar primeramente el recurso con el siguiente comando “umount /mnt/nfs”
.
Verifique que monto el recurso de manera correcta, ejecutando el comando “df -hT”
, este también mostrara el espacio disponible del recurso.
[[email protected]~]# df -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/rhel-root xfs 6.2G 3.1G 3.1G 50% /
devtmpfs devtmpfs 482M 0 482M 0% /dev
tmpfs tmpfs 497M 144K 497M 1% /dev/shm
tmpfs tmpfs 497M 7.0M 490M 2% /run
tmpfs tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/sda1 xfs 1014M 172M 843M 17% /boot
tmpfs tmpfs 100M 12K 100M 1% /run/user/0
192.168.2.60:/sharenfs nfs4 6.2G 3.2G 3.1G 51% /mnt/nfs
También es importante probar que tenga permisos de escritura sobre él directorio, como se muestra a continuación:
[[email protected] ~]# cd /mnt/nfs/
[[email protected] nfs]# touch holamundo.txt
[[email protected] nfs]# ls
holamundo.txt
Esta implementación de NFS
es básica, tenga en cuenta que usted también puede realizar exportaciones de NFS
con kerberos
, esto le permite implementar autentificaciones mediante claves y cifrado para mayor seguridad, ya que por defecto el contenido enviado mediante NFS se transfiere en texto claro y no seguro.
Referencias
Para más información sobre NFS con Kerberos puede consultar el siguiente enlace:
Para mas información sobre opciones y configuración de NFS consulte este enlace:
Anterior