no se puede escribir en el punto de montaje (nfs-server), obteniendo "Permiso denegado"

21

Estoy tratando de configurar NFSentre dos nodos RHEL7:

primer nodo:

[root@ip-10-164-175-246 ~]# cat /etc/redhat-release 
Red Hat Enterprise Linux Server release 7.0 (Maipo)
[root@ip-10-164-175-246 ~]# rpm -q nfs-utils
nfs-utils-1.3.0-0.el7.x86_64
[root@ip-10-164-175-246 ~]# cat /etc/exports
/var/www/html/  ip-10-184-161-46.ec2.internal(rw)
[root@ip-10-164-175-246 ~]# 

segundo nodo:

[root@ip-10-184-161-46 ~]# mount ip-10-164-175-246.ec2.internal:/var/www/html/ /mnt/
[root@ip-10-184-161-46 ~]# touch /mnt/$$
touch: cannot touch ‘/mnt/3326’: Permission denied
[root@ip-10-184-161-46 ~]# 

¿Por qué no puedo escribir nada /mnt/sobre NFS?

alexus
fuente
1
Intente cambiar el (rw)en /etc/exportsque (rw,no_root_squash), haciendo una exportfs -aven el servidor, a continuación, volver a montar el sistema de ficheros en el cliente y vuelva a intentarlo.
MadHatter apoya a Monica el

Respuestas:

29

¿Utiliza su exportación root_squash? De los documentos de CentOS :

root_squash: evita que los usuarios root conectados de forma remota tengan privilegios de root y les asigna el ID de usuario para el usuario nfsnobody. Esto efectivamente "aplasta" el poder del usuario root remoto al usuario local más bajo, evitando la alteración no autorizada de archivos en el servidor remoto. Alternativamente, la opción no_root_squash desactiva el aplastamiento de raíz. Para aplastar a todos los usuarios remotos, incluido el root, use la opción all_squash. Para especificar las ID de usuario y grupo para usar con usuarios remotos de un host en particular, use las opciones anonuid y anongid, respectivamente. En este caso, se puede crear una cuenta de usuario especial para que los usuarios remotos de NFS compartan y especifiquen (anonuid =, anongid =), dónde está el número de ID de usuario y el número de ID de grupo.

Deberá agregar el indicador no_root_squashpara deshabilitar esto, ya que está activado de forma predeterminada.

Christopher Karel
fuente
1
¡Gracias, todo funciona como se esperaba! Me faltaba no_root_squash, gracias de nuevo!
alexus
Encontré ese artículo en los sitios web de RHEL: access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/… . Parece que no es seguro usar no_root_squash. ¿Cuál es la solución si queremos seguir sus recomendaciones?
Djidiouf
Básicamente querrás darle al usuario 'nobody' la capacidad de modificar los archivos apropiados en el montaje NFS. Cuando el usuario Root está asignado (aplastado) a nadie, aún podrá modificarlo. Alternativamente, creo que NFSv4 le permite definir asignaciones de cuentas locales / de servidor adecuadas.
Christopher Karel