Configurar las opciones de metadatos para instancias nuevas - Amazon Elastic Compute Cloud

Configurar las opciones de metadatos para instancias nuevas

Requerir el uso de IMDSv2

Existen varias formas de exigir que se use IMDSv2 en una instancia en el momento del lanzamiento, por ejemplo:

Configuración de la instancia en el momento del lanzamiento

Al lanzar una instancia, puede configurarla para exigir el uso de IMDSv2 mediante la configuración de los siguientes campos:

  • Consola de Amazon EC2: establezca Metadata version (Versión de metadatos) en V2 only (token required) (Solo V2 [token obligatorio]).

  • AWS CLI: HttpTokens establecido en required.

Al especificar que IMDSv2 es obligatorio, también se debe habilitar el punto de conexión del servicio de metadatos de la instancia estableciendo Metadata accessible (Metadatos accesibles) en Enabled (Habilitar) (consola) o HttpEndpoint en enabled (AWS CLI).

New console
Para exigir el uso de IMDSv2 en una nueva instancia
  • Al lanzar una nueva instancia en la consola de Amazon EC2, despliegue Advanced details (Detalles avanzados) y haga lo siguiente:

    • Para Metadatos accesibles, elija Enabled (Habilitado).

    • En Metadata version (Versión de metadatos), elija V2 only (token required) (solo V2 [token obligatorio]).

    Para obtener más información, consulte Detalles avanzados .

Old console
Para exigir el uso de IMDSv2 en una nueva instancia
  • Al lanzar una nueva instancia en la consola de Amazon EC2, seleccione las siguientes opciones en la página Configure Instance Details (Configurar detalles de instancia):

    • En Advanced Details (Detalles avanzados), en Metadata accessible (Metadatos accesibles), seleccione Enabled (Habilitado).

    • En Metadata version (Versión de metadatos), seleccione V2 (token required) (V2 (token obligatorio)).

Para obtener más información, consulte Paso 3: Configurar los detalles de la instancia.

AWS CLI
Para exigir el uso de IMDSv2 en una nueva instancia

En el siguiente ejemplo de run-instances, se lanza una instancia c3.large con --metadata-options establecido en HttpTokens=required. Cuando se especifica un valor para HttpTokens, también se debe establecer HttpEndpoint en enabled. Debido a que el encabezado del token de seguridad está establecido en required para las solicitudes de recuperación de metadatos, se requiere que la instancia use IMDSv2 al solicitar los metadatos de la instancia.

aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type c3.large \ ... --metadata-options "HttpEndpoint=enabled,HttpTokens=required"
AWS CloudFormation

Para especificar las opciones de metadatos de una instancia conAWS CloudFormation, consulte la propiedad AWS::EC2::LaunchTemplate MetadataOptions en la Guía del usuario de AWS CloudFormation.

Configuración de la AMI

Al registrar la AMI, puede establecer el parámetro imds-support en v2.0. Las instancias lanzadas desde esta AMI tendrán el valor de Metadata version (Versión de metadatos) establecido en V2 only (token required) (Solo V2 [token obligatorio]) (consola) o HttpTokens establecido en required (AWS CLI). Con esta configuración, la instancia requiere que se utilice IMDSv2 al solicitar los metadatos de la instancia.

Tenga en cuenta que cuando establezca imds-support en v2.0, las instancias lanzadas desde esta AMI también tendrán Metadata response hop limit (Límite de saltos de respuesta de metadatos) (consola) o http-put-response-hop-limit (AWS CLI) establecido en 2.

Para configurar una AMI para IMDSv2

El siguiente ejemplo de register-image registra una AMI mediante la instantánea especificada de un volumen raíz de EBS como dispositivo /dev/xvda. Especifique v2.0 para el parámetro imds-support a fin de que la AMI esté configurada para especificar que las instancias lanzadas desde ella exijan el uso de IMDSv2.

aws ec2 register-image \ --name my-image \ --root-device-name /dev/xvda \ --block-device-mappings DeviceName=/dev/xvda,Ebs={SnapshotId=snap-0123456789example} \ --imds-support v2.0

Uso de una política de IAM

También puede crear una política de IAM que impida a los usuarios lanzar nuevas instancias a menos que exijan el uso de IMDSv2 en la nueva instancia.

Para exigir el uso de IMDSv2 en todas las instancias nuevas mediante una política de IAM

Para asegurarse de que los usuarios de IAM solo puedan lanzar instancias que exigen el uso de IMDSv2 al solicitar metadatos de instancia, puede especificar que la condición para exigir IMDSv2 debe cumplirse antes de lanzar una instancia. Para ver una política de IAM de ejemplo, consulte Trabajar con metadatos de instancias.

Configuración de puntos de conexión de IPv4 e IPv6

El punto de conexión IPv6 está desactivado de forma predeterminada. Esto es cierto incluso si se está lanzando una instancia en una subred de solo IPv6. Puede optar por habilitar el punto de conexión IPv6 en el lanzamiento de la instancia mediante AWS CLI. Esta opción no está disponible en la consola de Amazon EC2.

Solo se puede acceder al punto de conexión IPv6 para el servicio de metadatos de la instancia en Instancias integradas en el sistema Nitro.

Configuración de puntos de conexión de IPv4 e IPv6

El siguiente ejemplo de run-instances lanza una instancia t3.large con el punto de conexión IPv6 habilitado para el servicio de metadatos de la instancia. Para habilitar el punto de conexión de IPv6, para el parámetro --metadata-options, especifique HttpProtocolIpv6=enabled. Cuando se especifica un valor para HttpProtocolIpv6, también se debe establecer HttpEndpoint en enabled.

aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type t3.large \ ... --metadata-options "HttpEndpoint=enabled,HttpProtocolIpv6=enabled"

Desactivar el acceso a los metadatos de instancia

Puede garantizar que el acceso a los metadatos de la instancia esté desactivado, independientemente de la versión del servicio de metadatos de la instancia que utilice. Puede activar el acceso más adelante mediante el comando modify-instance-metadata-options.

New console
Para desactivar el acceso a los metadatos de instancia
  • Lance la instancia en la consola de Amazon EC2 con la siguiente información especificada en Advanced details (Detalles avanzados):

    • Para Metadatos accesibles, elija Disabled (Deshabilitado).

Para obtener más información, consulte Detalles avanzados .

Old console
Para desactivar el acceso a los metadatos de instancia
  • Lance la instancia en la consola de Amazon EC2 con la siguiente opción seleccionada en la página Configure Instance Details (Configurar detalles de la instancia):

    • En Advanced Details (Detalles avanzados), en Metadata accessible (Metadatos accesibles), seleccione Disabled (Desactivado).

Para obtener más información, consulte Paso 3: Configurar los detalles de la instancia.

AWS CLI
Para desactivar el acceso a los metadatos de instancia

Lance la instancia con --metadata-options establecido en HttpEndpoint=disabled.

aws ec2 run-instances \ --image-id ami-0abcdef1234567890 \ --instance-type c3.large \ ... --metadata-options "HttpEndpoint=disabled"
AWS CloudFormation

Para especificar las opciones de metadatos de una instancia conAWS CloudFormation, consulte la propiedad AWS::EC2::LaunchTemplate MetadataOptions en la Guía del usuario de AWS CloudFormation.