Configuración del IMDS en instancias del entorno de Elastic Beanstalk - AWS Elastic Beanstalk

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.

Configuración del IMDS en instancias del entorno de Elastic Beanstalk

En este tema se describe el servicio de metadatos de instancias (IMDS).

Los metadatos de la instancia son datos relacionados con una instancia de Amazon Elastic Compute Cloud (Amazon EC2) que las aplicaciones pueden usar para configurar o administrar la instancia en ejecución. El servicio de metadatos de instancia (IMDS) es un componente de la instancia que utiliza el código de instancia para acceder de forma segura a los metadatos de la instancia. Este código puede ser el código de la plataforma Elastic Beanstalk en las instancias de su entorno AWS , el SDK que pueda estar utilizando su aplicación o incluso el código propio de la aplicación. Para obtener más información, consulta los metadatos de las instancias y los datos de usuario en la Guía del EC2 usuario de Amazon.

El código puede acceder a los metadatos de la instancia desde una instancia en ejecución mediante uno de estos dos métodos: Instance Metadata Service versión 1 (IMDSv1) o Instance Metadata Service versión 2 (IMDSv2). IMDSv2 utiliza solicitudes orientadas a la sesión y mitiga varios tipos de vulnerabilidades que podrían utilizarse para intentar acceder al IMDS. Para obtener información sobre estos dos métodos, consulte Configuración del servicio de metadatos de la instancia en la Guía del EC2 usuario de Amazon.

Soporte de plataformas para IMDS

Todas las plataformas Elastic Beanstalk que se ejecutan en Amazon Linux 2 y Amazon Linux 2023 y el servidor Windows son compatibles con y. IMDSv1 IMDSv2 Para obtener más información, consulte Configuración de IMDS mediante la consola de Elastic Beanstalk

Selección de métodos IMDS

Al tomar una decisión sobre los métodos IMDS que desea que admita su entorno, tenga en cuenta los siguientes casos de uso:

  • AWS SDK: si su aplicación usa un AWS SDK, asegúrese de usar la versión más reciente del SDK. AWS SDKsHacen llamadas al IMDS y las versiones más recientes del SDK las utilizan IMDSv2 siempre que sea posible. Si alguna vez la deshabilitas IMDSv1 o si tu aplicación usa una versión anterior del SDK, es posible que las llamadas al IMDS no se puedan realizar correctamente.

  • El código de tu aplicación: si tu aplicación realiza llamadas al IMDS, considera la posibilidad de usar el AWS SDK para que puedas realizar las llamadas en lugar de realizar solicitudes HTTP directas. De esta manera, no necesita realizar cambios en el código para cambiar entre los métodos IMDS. El AWS SDK lo usa IMDSv2 siempre que sea posible.

  • Código de plataforma de Elastic Beanstalk: nuestro código realiza llamadas de IMDS AWS a través del SDK y, por lo IMDSv2 tanto, se utiliza en todas las versiones de plataforma compatibles. Si su código utiliza un up-to-date AWS SDK y realiza todas las llamadas al IMDS a través del SDK, puede desactivarlo de forma segura. IMDSv1

Configuración de IMDS mediante la consola de Elastic Beanstalk

Puede modificar la configuración de instancias de Amazon del entorno de Elastic Beanstalk en EC2 la consola de Elastic Beanstalk.

importante

La configuración opcional DisableIMDSv1 puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para administrar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política de gestión. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que se produzca un error en la creación o las actualizaciones del entorno al habilitar las instancias puntuales para su entorno. Para obtener más información y otras consideraciones, consulteLance plantillas para su entorno de Elastic Beanstalk.

Para configurar el IMDS en las EC2 instancias de Amazon en la consola de Elastic Beanstalk
  1. Abra la consola de Elastic Beanstalk y, en la lista Regiones, seleccione su. Región de AWS

  2. En el panel de navegación, elija Environments (Entornos) y, a continuación, elija el nombre del entorno en la lista.

    nota

    Si tiene muchos entornos, utilice la barra de búsqueda para filtrar la lista de entornos.

  3. En el panel de navegación, elija Configuration (Configuración).

  4. En la categoría de configuración Instance traffic and scaling (Escalado y tráfico de instancias), elija Edit (Edición de).

  5. Configure Inhabilitar para hacer cumplir IMDSv1. IMDSv2 Desactive la casilla de verificación Desactivar IMDSv1 para activar ambas IMDSv1 opciones IMDSv2.

  6. Para guardar los cambios, elija Aplicar en la parte inferior de la página.

El espacio de nombres aws:autoscaling:launchconfiguration

Puede utilizar una opción de configuración en el espacio de nombres aws:autoscaling:launchconfiguration para configurar IMDS en las instancias del entorno.

importante

La configuración opcional DisableIMDSv1 puede provocar que Elastic Beanstalk cree un entorno con una plantilla de lanzamiento o actualice un entorno existente de configuraciones de lanzamiento a plantillas de lanzamiento. Para ello, se requieren los permisos necesarios para gestionar las plantillas de lanzamiento. Estos permisos están incluidos en nuestra política de gestión. Si utiliza políticas personalizadas en lugar de nuestras políticas administradas, es posible que se produzca un error en la creación o las actualizaciones del entorno al habilitar las instancias puntuales para su entorno. Para obtener más información y otras consideraciones, consulteLance plantillas para su entorno de Elastic Beanstalk.

En el siguiente ejemplo de archivo de configuración, se deshabilita el IMDSv1 uso de la DisableIMDSv1 opción.

option_settings: aws:autoscaling:launchconfiguration: DisableIMDSv1: true

Defina Disable true en IMDSv1 para deshabilitar IMDSv1 y aplicar IMDSv2.

Establezca IMDSv1Inhabilitar false en para habilitar IMDSv1 tanto como IMDSv2.