Trabajar con usuarios, grupos y permisos a nivel del sistema de archivos de red (NFS) - Amazon Elastic File System

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Trabajar con usuarios, grupos y permisos a nivel del sistema de archivos de red (NFS)

Después de crear un sistema de archivos, de forma predeterminada, solo el usuario raíz (UID 0) dispone de permisos de lectura, escritura y ejecución. Para que otros usuarios modifiquen el sistema de archivos, el usuario raíz debe concederles acceso de forma explícita. Puede utilizar puntos de acceso para automatizar la creación de directorios desde los que un usuario que no sea raíz puede escribir. Para obtener más información, consulte Trabajo con puntos de acceso de Amazon EFS.

Los objetos de sistema de archivos de Amazon EFS tienen un modo de estilo Unix asociado a ellos. Este valor de modo define los permisos para realizar acciones en ese objeto. Los usuarios familiarizados con los sistemas de estilo UNIX pueden comprender fácilmente cómo se comporta Amazon EFS con respecto a estos permisos.

Además, en los sistemas de estilo Unix, los usuarios y los grupos se asignan a identificadores numéricos, que Amazon EFS utiliza para representar la propiedad del archivo. En el caso de Amazon EFS, los objetos del sistema de archivos (es decir, archivos, directorios, etc.) pertenecen a un único propietario y a un único grupo. Amazon EFS usa estos ID numéricos asignados para comprobar los permisos cuando un usuario intenta acceder a un objeto del sistema de archivos.

nota

El protocolo NFS admite un máximo de 16 ID de grupo (GID) por usuario y cualquier GID adicional se trunca a partir de las solicitudes de los clientes de NFS. Para obtener más información, consulte Acceso denegado a los archivos permitidos en el sistema de archivos NFS.

A continuación, encontrará ejemplos de permisos y un debate sobre consideraciones de permisos de NFS en Amazon EFS.

Ejemplo de permisos y casos de uso del sistema de archivos de Amazon EFS

Después de crear un sistema de archivos de Amazon EFS y destinos de montaje para el sistema de archivos en la VPC, puede montar el sistema de archivos remoto localmente en su instancia de Amazon EC2. El comando mount puede montar cualquier directorio en el sistema de archivos. No obstante, la primera vez que cree el sistema de archivos, solo hay un directorio raíz en /. El usuario raíz y el grupo raíz son propietarios del directorio montado.

El siguiente comando mount monta el directorio raíz de un sistema de archivos de Amazon EFS, identificado por el nombre de DNS del sistema de archivos, en el directorio local /efs-mount-point.

sudo mount -t nfs -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport file-system-id.efs.aws-region.amazonaws.com:/ efs-mount-point

El modo de permisos inicial permite:

  • Permisos read-write-execute para el propietario raíz

  • Permisos read-execute para el grupo raíz

  • Permisos read-execute para otras personas

Solo el usuario raíz puede modificar este directorio. El usuario raíz también puede conceder a otros usuarios permisos para escribir en este directorio, por ejemplo:

  • Crear subdirectorios que se pueden escribir por usuario. Para step-by-step obtener instrucciones, consulteTutorial: Crear subdirectorios que se pueden escribir por usuario y configurar la opción de volver a montar automáticamente al reiniciar.

  • Permitir a los usuarios escribir en la raíz del sistema de archivos de Amazon EFS Un usuario con privilegios raíz puede conceder a otros usuarios acceso al sistema de archivos.

    • Para cambiar la propiedad del sistema de archivos de Amazon EFS a un usuario y grupo no-raíz, utilice lo siguiente:

      $ sudo chown user:group /EFSroot
    • Para cambiar los permisos del sistema de archivos a otros más permisivos, utilice lo siguiente:

      $ sudo chmod 777 /EFSroot

      Este comando otorga read-write-execute privilegios a todos los usuarios de todas las instancias EC2 que tienen el sistema de archivos montado.

Permisos de ID de usuario y grupo para los archivos y directorios de un sistema de archivos

Los archivos y directorios del sistema de archivos de Amazon EFS admiten los permisos de lectura, escritura y ejecución estándar de tipo Unix basados en el ID de usuario y el ID de grupo. Cuando un cliente NFS monta un sistema de archivos EFS sin utilizar un punto de acceso, el ID de usuario y el ID de grupo proporcionados por el cliente son de confianza. Los puntos de acceso EFS se pueden utilizar para anular el ID de usuario y los ID de grupo utilizados por el cliente NFS. Cuando los usuarios intentan acceder a los archivos y directorios, Amazon EFS comprueba su ID de usuario e ID de grupo para comprobar si el usuario tiene permiso para acceder a los objetos. Amazon EFS también utiliza estos ID para indicar el propietario y el propietario de grupo para nuevos archivos y directorios que crea el usuario. Amazon EFS no examina los nombres de usuario o de grupo, solo utiliza identificadores numéricos.

nota

Al crear un usuario en una instancia EC2, puede asignar cualquier ID de usuario (UID) e ID de grupo (GID) numéricos al usuario. Los ID numéricos de usuario se establecen en el archivo /etc/passwd en sistemas Linux. Los ID de grupo numérico se encuentran en el archivo /etc/group. Estos archivos definen los mapeos entre nombres e ID. Fuera de la instancia de EC2, Amazon EFS no realiza ninguna autenticación de estos identificadores, incluido el ID raíz de 0.

Si un usuario accede a un sistema de archivos de Amazon EFS desde dos instancias EC2 diferentes, en función de si el UID del usuario es el mismo o diferente en dichas instancias, verá distinto comportamiento como se indica:

  • Si los ID de usuario son los mismos en ambas instancias EC2, Amazon EFS considera que indican el mismo usuario, independientemente de la instancia EC2 que utilizan. La experiencia del usuario al acceder al sistema de archivos es la misma desde ambas instancias EC2.

  • Si los ID de usuario no son iguales en ambas instancias EC2, Amazon EFS considera que los usuarios son usuarios diferentes. La experiencia del usuario no es la misma al acceder al sistema de archivos de Amazon EFS desde las dos instancias EC2 diferentes.

  • Si dos usuarios distintos en distintas instancias EC2 comparten un ID, Amazon EFS los considera que son el mismo usuario.

Podría plantearse administrar los mapeos de ID de usuario entre instancias EC2 de forma coherente. Los usuarios pueden comprobar su ID numérico utilizando el comando id.

$ id uid=502(joe) gid=502(joe) groups=502(joe)

Desactivar el mapeador de ID

Las utilidades de NFS en el sistema operativo incluyen un demonio denominado mapeador de ID que administra el mapeo entre nombres de usuario e ID. En Amazon Linux, el demonio se denomina rpc.idmapd y en Ubuntu se denomina idmapd. Traduce los ID de usuarios y grupos en nombres y viceversa. Sin embargo, Amazon EFS solo trata con ID numéricos. Le recomendamos que desactive este proceso en sus instancias EC2. En Amazon Linux, el mapeador de ID suele estar deshabilitado: si lo está, no lo habilite. Para desactivar el mapeador de ID, utilice los comandos que se muestran a continuación.

$ service rpcidmapd status $ sudo service rpcidmapd stop

Sin agrupación de raíz

De forma predeterminada, la compresión de raíces está deshabilitada en los sistemas de archivos de EFS. Amazon EFS se comporta como un servidor NFS de Linux con no_root_squash. Si el ID de un usuario o grupo es 0, Amazon EFS trata a dicho usuario como usuario root e ignora las comprobaciones de permisos (permitiendo el acceso y la modificación de todos los objetos del sistema de archivos). El bloqueo de raíces se puede habilitar en una conexión de cliente cuando la política de identidad o recursos AWS Identity and Access Management (AWS IAM) no permite el acceso a la acción. ClientRootAccess Cuando la agrupación de raíz está habilitada, el usuario raíz se convierte a un usuario con permisos limitados en el servidor de NFS.

Para obtener más información, consulte Uso de IAM para controlar el acceso a los datos del sistema de archivos y Tutorial: Habilite la eliminación raíz mediante la autorización de IAM para clientes NFS.

Almacenamiento en caché de permisos

Amazon EFS almacena en caché los permisos de archivos durante un breve periodo de tiempo. Como resultado, es posible que haya un breve periodo en el que un usuario cuyo acceso se revocó recientemente, pueda seguir accediendo a ese objeto.

Cambio de propiedad de objeto del sistema de archivos

Amazon EFS aplica el atributo chown_restricted de POSIX. Esto significa que solo el usuario raíz puede cambiar el propietario de un objeto del sistema de archivos. El usuario raíz o propietario puede cambiar el grupo propietario de un objeto del sistema de archivos. Sin embargo, a menos que el usuario sea raíz, el grupo solo se puede cambiar a uno del que sea miembro el usuario propietario.

Puntos de acceso de EFS

Un punto de acceso aplica una ruta de usuario, grupo y sistema de archivos del sistema operativo a cualquier solicitud del sistema de archivos realizada mediante el punto de acceso. El usuario y el grupo del sistema operativo del punto de acceso anulan cualquier información de identidad proporcionada por el cliente NFS. La ruta del sistema de archivos se expone al cliente como directorio raíz del punto de acceso. Este enfoque garantiza que cada aplicación siempre utilice la identidad correcta del sistema operativo y el directorio correcto al acceder a conjuntos de datos basados en archivos compartidos. Las aplicaciones que utilizan el punto de acceso solo pueden acceder a los datos en su propio directorio e inferiores. Para obtener más información acerca de los puntos de acceso, consulte Trabajo con puntos de acceso de Amazon EFS.