GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo configurar el servidor NFS en CentOS 8 / RHEL 8

Acrónimo de Network File Share, NFS es un protocolo cliente/servidor multiplataforma que permite que las máquinas de los clientes accedan a los archivos compartidos por el servidor NFS a través de una red. Los sistemas cliente pueden montar localmente los sistemas de archivos desde el servidor NFS y acceder a archivos y directorios como si estuvieran montados localmente. En esta guía, lo guiaremos a través de la instalación y configuración del servidor NFS en CentOS 8 / RHEL 8 .

Nota: En CentOS 8 o RHEL 8 NFSv3 &v4 ambos son compatibles. NFSv3 permite una escritura asincrónica segura y admite tamaños de archivo y desplazamiento de 64 bits. Mientras que NFSv4 funciona a través del firewall del sistema operativo y es compatible con ACL (Lista de control de acceso) y no requiere el servicio rpcbind

Configuración de servidor/cliente NFS

Antes de comenzar, usaremos la configuración a continuación para simular cómo funciona el protocolo NFS en una configuración cliente/servidor.

  • IP de la máquina del servidor:dirección:   192.168.2.102         CentOS 8
  • IP del equipo cliente:dirección:   192.168.2.103         CentOS 8

Con nuestra configuración a la mano, comencemos la instalación de NFS en la máquina del servidor.

Paso 1) Instalar y configurar NFS en el servidor CentOS 8/RHEL 8

Para comenzar, instalaremos el paquete del servidor NFS llamado nfs-utils que actúa como el demonio NFS. Para instalar el paquete nfs-utils, inicie la terminal y ejecute el comando:

$ sudo dnf install nfs-utils -y

En el siguiente ejemplo, nfs-utils ya está instalado.

Una vez que se complete la instalación, inicie y habilite el servicio del servidor nfs para que se reinicie automáticamente. Ejecute los siguientes comandos,

$ sudo systemctl start nfs-server.service
$ sudo systemctl enable nfs-server.service

Para confirmar que el servicio NFS se está ejecutando, ejecute:

$ sudo systemctl status nfs-server.service

Puede verificar la versión del protocolo nfs que está ejecutando ejecutando el comando:

$ rpcinfo -p | grep nfs

La versión se indica en la segunda columna del resultado que se presenta a continuación.

Para una configuración adicional del servidor NFS, puede encontrar los archivos de configuración en /etc/nfs.conf que es el archivo de configuración del demonio NFS y el /etc/nfsmount.conf que es el archivo de configuración para el montaje NFS.

Paso 2) Creación y exportación de recursos compartidos NFS

En este paso, vamos a crear un sistema de archivos que se compartirá desde el servidor a los sistemas cliente. En esta guía, crearemos un directorio en /mnt/nfs_share/docs como se muestra a continuación

$ sudo mkdir -p /mnt/nfs_shares/docs

Para evitar restricciones de archivos en el directorio compartido de NFS, se recomienda configurar la propiedad del directorio como se muestra. Esto permite la creación de archivos desde los sistemas cliente sin encontrar ningún problema de permisos.

$ sudo chown -R nobody: /mnt/nfs_shares/docs

Además, puede decidir ajustar los permisos del directorio según sus preferencias. Por ejemplo, en esta guía, asignaremos todos los permisos (lectura, escritura y ejecución) a la carpeta compartida de NFS

$ sudo chmod -R 777 /mnt/nfs_shares/docs

Para que los cambios surtan efecto, reinicie el demonio NFS:

$ sudo systemctl restart nfs-utils.service

Para exportar el recurso compartido de NFS para que los sistemas cliente puedan acceder a él, debemos editar el /etc/exports expediente. Puede permitir que varios clientes accedan al recurso compartido especificando una subred como se muestra

/mnt/nfs_shares/docs   192.168.2.0/24(rw,sync,no_all_squash,root_squash

Además, puede especificar cada cliente en una línea separada:

/mnt/nfs_shares/docs  IP-cliente(rw,sync,no_all_squash,root_squash)

/mnt/nfs_shares/docs  IP-cliente(rw,sync,no_all_squash,root_squash)

Usando nuestra configuración, otorgaremos acceso a nuestra máquina cliente con una IP 192.168.2.103. Agregue la siguiente línea en el archivo '/etc/exports ':

$ sudo vi /etc/exports
/mnt/nfs_shares/docs    192.168.2.103(rw,sync,no_all_squash,root_squash)

Guardar y salir del archivo. Use el comando cat para confirmar la entrada como se muestra

[[email protected]] cat /etc/exports
/mnt/nfs_shares/docs    192.168.2.103(rw,sync,no_all_squash,root_squash)
[[email protected]]

Veamos el significado de los parámetros utilizados:

  • rw – Esto significa lectura/escritura. Otorga permisos de lectura y escritura al recurso compartido NFS.
  • sincronizar – El parámetro requiere la escritura de los cambios en el disco primero antes de que se pueda llevar a cabo cualquier otra operación.
  • no_all_squash – Esto asignará todos los UID y GID de las solicitudes del cliente a UIDS y GID idénticos que residen en el servidor NFS.
  • raíz_calabaza – El atributo asigna solicitudes del usuario raíz en el lado del cliente a un UID/GID anónimo.

Para exportar la carpeta creada anteriormente, use el comando exportfs como se muestra:

$ sudo exportfs -arv

El -a opción implica que se exportarán todos los directorios, -r significa volver a exportar todos los directorios y finalmente -v la bandera muestra una salida detallada.

Solo para estar seguro de la lista de exportación, puede mostrar la lista de exportación usando el comando:

$ sudo exportfs -s

¡Perfecto! Nuestra lista de exportación existe. Hasta aquí todo bien. La única configuración que queda en el servidor NFS es permitir servicios NFS en el cortafuegos.

Paso 3) Configuración de las reglas de firewall para el servidor NFS

El último paso para configurar el servidor es permitir los servicios NFS a través del firewall en la máquina del servidor CentOS 8. Estos servicios son nfs, rpc-bind y montado . Por lo tanto, ejecute los comandos a continuación.

$ sudo firewall-cmd --permanent --add-service=nfs
$ sudo firewall-cmd --permanent --add-service=rpc-bind
$ sudo firewall-cmd --permanent --add-service=mountd

A continuación, vuelva a cargar el cortafuegos para que los cambios entren en vigor

$ sudo firewall-cmd --reload

Ahora vayamos al sistema cliente y configurémoslo para acceder a los recursos compartidos de NFS.

Configuración del sistema cliente NFS

Para configurar el sistema cliente para acceder a los recursos compartidos de archivos NFS, siga el procedimiento a continuación

Paso 1) Instale los paquetes NFS necesarios

En el sistema cliente CentOS 8, instale los paquetes necesarios para acceder al recurso compartido NFS que reside en el servidor NFS

$ sudo dnf install nfs-utils nfs4-acl-tools -y

Para el sistema Debian o Ubuntu:

$ sudo apt install nfs-common nfs4-acl-tools -y

Para mostrar los recursos compartidos NFS montados en el servidor, use el showmount comando:

$ showmount -e 192.168.2.102

Paso 2) Montaje del recurso compartido NFS remoto ubicado en el servidor

A continuación, debemos montar el directorio compartido NFS remoto que se encuentra en el sistema cliente local. Pero primero, creemos un directorio para montar el recurso compartido NFS.

$ sudo mkdir p /mnt/client_share

Para montar el recurso compartido NFS, ejecute el siguiente comando. Recuerde que 192.168.2.102 es la dirección IP del servidor NFS.

$ sudo mount -t nfs 192.168.2.102:/mnt/nfs_shares/docs /mnt/client_share

Puede verificar que el recurso compartido NFS remoto se haya montado ejecutando:

$ sudo mount | grep -i nfs

Para que el recurso compartido de montaje sea persistente al reiniciar, debe editar el archivo /etc/fstab archivo y agregue la entrada a continuación.

192.168.2.102:/mnt/nfs_shares/docs  /mnt/client_share  nfs  defaults  0  0

Guarde y cierre el archivo.

Prueba de configuración de cliente y servidor NFS

En este punto, hemos terminado con todas las configuraciones. Sin embargo, necesitamos probar nuestra configuración y asegurarnos de que todo funcione. Entonces, primero, vamos a crear un archivo de prueba en el directorio compartido del servidor NFS y verificar si está presente en el directorio montado NFS del cliente.

$ sudo touch /mnt/nfs_shares/docs/server_nfs_file.txt

Ahora, diríjase al sistema del cliente y verifique si el archivo existe en el lado del cliente.

$ ls -l /mnt/client_share/

¡Estupendo! Desde la salida, podemos ver claramente que el archivo existe. Hagamos ahora lo contrario. Vamos a crear un archivo en el sistema cliente NFS y verificar si se puede acceder desde el servidor NFS.

En el cliente, cree el archivo como se muestra:

$ sudo touch /mnt/client_share/client_nfs_file.txt

Ahora, regrese al servidor y verifique si el archivo está presente en el directorio compartido de NFS

$ ls -l /mnt/nfs_shares/docs

¡Impresionante! Podemos ver y acceder al archivo.

Como puede ver, puede crear fácilmente archivos tanto en el servidor NFS como en el cliente y compartirlos sin problemas entre los dos sistemas, así como con otros sistemas cliente que se hayan configurado para acceder a los recursos compartidos. Y esto nos lleva al final de nuestro tutorial de hoy. En esta guía, le mostramos cómo instalar y configurar el servidor NFS y la configuración del sistema cliente en CentOS 8 y RHEL 8.


Cent OS
  1. Cómo configurar un servidor SFTP en CentOS

  2. Configurar el servidor SysLog en CentOS 6 / RHEL 6

  3. Cómo configurar el servidor SysLog en CentOS 7 / RHEL 7

  4. Cómo configurar el servidor NFS en CentOS 7 / RHEL 7

  5. ¿Cómo configurar el servidor NTP en CentOS?

Cómo configurar Jenkins en CentOS 8 / RHEL 8

Cómo configurar un servidor SVN en CentOS

Cómo configurar Icinga Web 2 en CentOS 8 / RHEL 8

Cómo instalar Zabbix Server 4.x en CentOS 6 / RHEL 6

Cómo configurar el servidor SysLog centralizado en CentOS 8 / RHEL 8

Cómo configurar HAProxy en CentOS 8