Usuarios, grupos y permisos en el nivel de Network File System (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.

Usuarios, grupos y permisos en el nivel de Network File System (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 utiliza el número asignado IDs 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 grupos IDs (GIDs) por usuario y cualquier grupo adicional GIDs 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

Tras crear un sistema de archivos Amazon EFS y montar los destinos para el sistema de archivos en la VPC, puede montar el sistema de archivos remoto de forma local en la 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 obtener step-by-step instrucciones, consulteTutorial: Crear subdirectorios que se pueden escribir por usuario.

  • 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 EC2 instancias que tengan el sistema de archivos montado.

Permisos de ID de grupo y usuario en archivos y directorios dentro de un sistema de archivos

Los archivos y directorios de un sistema de archivos Amazon EFS admiten permisos de lectura, escritura y ejecución estándar de estilo Unix basados en el ID de usuario y el grupo. IDs 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. Puede usar los puntos de acceso EFS para anular el ID de usuario y el grupo IDs utilizados por el cliente NFS. Cuando los usuarios intentan acceder a archivos y directorios, Amazon EFS comprueba su usuario IDs y su grupo IDs para comprobar que cada usuario tiene permiso para acceder a los objetos. Amazon EFS también las utiliza IDs para indicar el propietario y el propietario del grupo de los nuevos archivos y directorios que cree 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 EC2 instancia, puede asignar cualquier ID de usuario numérico (UID) e ID de grupo (GID) al usuario. El usuario numérico IDs se establece en el /etc/passwd archivo en los sistemas Linux. El grupo numérico IDs está en el /etc/group archivo. Estos archivos definen las asignaciones entre los nombres y. IDs Fuera de la EC2 instancia, Amazon EFS no realiza ninguna autenticación de estos IDs, incluido el ID raíz 0.

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

  • Si el usuario IDs es el mismo en ambas EC2 instancias, Amazon EFS considera que indican el mismo usuario, independientemente de la EC2 instancia utilizada. La experiencia del usuario al acceder al sistema de archivos es la misma en ambas EC2 instancias.

  • Si el usuario IDs no es el mismo en ambas EC2 instancias, Amazon EFS considera que los usuarios son usuarios diferentes. La experiencia del usuario no es la misma cuando accede al sistema de archivos Amazon EFS desde dos EC2 instancias diferentes.

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

Podría considerar la posibilidad de gestionar las asignaciones de ID de usuario en todas las EC2 instancias 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 del sistema operativo incluyen un daemon denominado ID Mapper que gestiona el mapeo entre los nombres de usuario y. IDs En Amazon Linux, el demonio se denomina rpc.idmapd y en Ubuntu se denomina idmapd. Traduce el usuario y el grupo IDs en nombres y viceversa. Sin embargo, Amazon EFS solo trata con datos numéricos IDs. Le recomendamos que desactive este proceso en sus EC2 instancias. 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 ClientRootAccess acción. 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.

Habilitar la agrupación de nodo raíz mediante la autorización de IAM para clientes NFS

Puede configurar Amazon EFS para impedir el acceso root a su sistema de archivos de Amazon EFS para todos los AWS principales, excepto para una única estación de trabajo de administración. Se hace configurando la autorización de AWS Identity and Access Management (IAM) para clientes de sistema de archivos de red (NFS).

Para ello, es necesario configurar dos políticas de permisos de IAM, como se indica a continuación.

  • Cree una política de sistema de archivos EFS que permita explícitamente el acceso de lectura y escritura al sistema de archivos y deniegue implícitamente el acceso del nodo raíz.

  • Asigne una identidad de IAM a la estación EC2 de trabajo de administración de Amazon que requiere acceso root al sistema de archivos mediante un perfil de EC2 instancia de Amazon. Para obtener más información sobre los perfiles de EC2 instancia de Amazon, consulte Uso de perfiles de instancia en la Guía del AWS Identity and Access Management usuario.

  • Asigne la política AmazonElasticFileSystemClientFullAccess AWS gestionada a la función de IAM de la estación de trabajo de administración. Para obtener más información sobre las políticas AWS administradas para EFS, consulteAdministración de identidades y accesos para Amazon EFS.

Para habilitar la agrupación de nodo raíz mediante la autorización de IAM para clientes NFS, utilice los procedimientos siguientes.

Para evitar el acceso raíz al sistema de archivos
  1. Abra la consola de Amazon Elastic File System en https://console.aws.amazon.com/efs/.

  2. Elija Sistemas de archivos.

  3. Elija el sistema de archivos en el que desea habilitar la agrupación de nodo raíz.

  4. En la página de detalles del sistema de archivos, elija Política del sistema de archivos y, a continuación, elija Editar. Aparece la página File system policy (Política del sistema de archivos).

  5. Seleccione Impedir el acceso a la raíz de forma predeterminada* en Opciones de política. El objeto JSON de política aparece en el editor de políticas.

  6. Elija Save (Guardar) para guardar la política del sistema de archivos.

Los clientes que no son anónimos pueden obtener acceso raíz al sistema de archivos a través de una política basada en la identidad. Cuando asocia la política administrada por AmazonElasticFileSystemClientFullAccess a la función de la estación de trabajo, IAM concede acceso raíz a la estación de trabajo en función de su política de identidad.

Para habilitar el acceso raíz desde la estación de trabajo de administración
  1. Abra la consola de IAM en https://console.aws.amazon.com/iam/.

  2. Crea un rol para Amazon EC2 llamadoEFS-client-root-access. IAM crea un perfil de instancia con el mismo nombre que el EC2 rol que creaste.

  3. Asigna la política AWS gestionada AmazonElasticFileSystemClientFullAccess al EC2 rol que has creado. El contenido de esta política se muestra a continuación.

    { "Version”: "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elasticfilesystem:ClientMount", "elasticfilesystem:ClientRootAccess", "elasticfilesystem:ClientWrite", "elasticfilesystem:DescribeMountTargets" ], "Resource": "*" } ] }
  4. Adjunte el perfil de la instancia a la EC2 instancia que está utilizando como estación de trabajo de administración, tal y como se describe a continuación. Para obtener más información, consulte Adjuntar un rol de IAM a una instancia en la Guía EC2 del usuario de Amazon para instancias de Linux.

    1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

    2. En el panel de navegación, seleccione Instances (Instancia[s]).

    3. Seleccione la instancia. Para Actions (Acciones), elija Instance Settings (Configuración de instancia) y, a continuación, elija Attach/Replace IAM role (Asociar/sustituir rol de IAM).

    4. Seleccione el rol de IAM que creó en el primer paso, EFS-client-root-access, y elija Apply (Aplicar).

  5. Instale el ayudante de montaje EFS en la estación de trabajo de administración. Para obtener más información sobre el asistente de montaje EFS y el amazon-efs-utils paquete, consulteInstalación del cliente de Amazon EFS.

  6. Monte el sistema de archivos de EFS en la estación de trabajo de administración mediante el siguiente comando con la opción de montaje iam.

    $ sudo mount -t efs -o tls,iam file-system-id:/ efs-mount-point

    Puede configurar la EC2 instancia de Amazon para que monte automáticamente el sistema de archivos con la autorización de IAM. Para obtener más información sobre cómo montar un sistema de archivos de EFS con autorización de IAM, consulte Montaje con autorización de IAM.

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.