Configurar las opciones de metadatos para instancias nuevas
Temas
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 enrequired
.
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).
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-typet3.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.