Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Übergang zur Verwendung von Instance-Metadatenservice Version 2
Wenn Sie Ihre Instances so konfigurieren möchten, dass sie nur Aufrufe von Instance Metadata Service Version 2 (IMDSv2) akzeptieren, empfehlen wir Ihnen, die folgenden Tools und den folgenden Übergangspfad zu verwenden.
Tools für den Übergang zu IMDSv2
Mit den folgenden Tools können Sie den Übergang Ihrer Software von zu identifizieren, zu überwachen und IMDSv1 zu IMDSv2 verwalten. Anweisungen zur Verwendung dieser Tools finden Sie unterEmpfohlener Pfad zur Anforderung IMDSv2.
- AWS Software
-
Die neuesten Versionen von AWS CLI und AWS SDKs unterstützen IMDSv2. Um zu verwendenIMDSv2, aktualisieren Sie Ihre EC2 Instances, sodass sie die neuesten Versionen verwenden. Die AWS SDK-Mindestversionen, die dies unterstützen IMDSv2, finden Sie unterVerwenden eines unterstützten AWS -SDK.
Alle Amazon Linux 2- und Amazon Linux 2023-Softwarepakete IMDSv2 werden unterstützt. Amazon Linux 2023 ist IMDSv1 standardmäßig deaktiviert.
- IMDS-Paket-Analysator
-
IMDS Packet Analyzer ist ein Open-Source-Tool, das IMDSv1 Aufrufe während der Startphase und der Laufzeitvorgänge Ihrer Instance identifiziert und protokolliert. Durch die Analyse dieser Protokolle können Sie genau identifizieren, welche Software Ihre Instances IMDSv1 aufruft, und bestimmen, welche Software aktualisiert werden muss, damit sie IMDSv2 nur auf Ihren Instances unterstützt wird. Sie können IMDS-Paket-Analysator von der Befehlszeile aus ausführen oder als Service installieren. Weitere Informationen finden Sie AWS ImdsPacketAnalyzer
unter GitHub. - CloudWatch
-
CloudWatch bietet die folgenden zwei Metriken für die Überwachung Ihrer Instances:
MetadataNoToken— IMDSv2 verwendet tokengestützte Sitzungen, tut dies aber IMDSv1 nicht. DieMetadataNoTokenMetrik verfolgt die Anzahl der Aufrufe des Instance Metadata Service (IMDS), die verwendet werden. IMDSv1 Indem Sie diese Metrik bis zum Wert Null nachverfolgen, können Sie feststellen, ob und wann Ihre Software auf IMDSv2 aktualisiert wurde.MetadataNoTokenRejected— Nach der Deaktivierung IMDSv1 können Sie anhand derMetadataNoTokenRejectedMetrik verfolgen, wie oft ein IMDSv1 Anruf versucht und abgelehnt wurde. Indem Sie diese Metrik verfolgen, können Sie feststellen, ob Ihre Software aktualisiert werden muss, um sie verwenden IMDSv2 zu können.Weitere Informationen finden Sie unter Instance-Metriken.
- Starten APIs
-
Neue Instanzen: Verwenden Sie die RunInstancesAPI, um neue Instances zu starten, für die die Verwendung von IMDSv2 erforderlich ist. Weitere Informationen finden Sie unter Konfigurieren von Instance-Metadatenoptionen für neue Instances.
Bestehende Instanzen: Verwenden Sie die ModifyInstanceMetadataOptionsAPI, um die Verwendung von IMDSv2 auf vorhandenen Instanzen vorzuschreiben. Weitere Informationen finden Sie unter Modifizieren von Instance-Metadatenoptionen für vorhandene Instances.
Neue Instances, die von Amazon EC2 Auto Scaling Scaling-Gruppen gestartet wurden: Um die Verwendung von IMDSv2 für alle neuen Instances zu verlangen, die von Amazon EC2 Auto Scaling Scaling-Gruppen gestartet wurden, können Ihre Amazon EC2 Auto Scaling Scaling-Gruppen entweder eine Startvorlage oder eine Startkonfiguration verwenden. Wenn Sie eine Startvorlage erstellen oder eine Startkonfiguration erstellen, müssen Sie die
MetadataOptions-Parameter so konfigurieren, dass die Verwendung von IMDSv2 erforderlich ist. Die Amazon EC2 Auto Scaling Scaling-Gruppe startet neue Instances mit der neuen Startvorlage oder Startkonfiguration, bestehende Instances sind jedoch nicht betroffen.Bestehende Instances in einer Amazon EC2 Auto Scaling Scaling-Gruppe: Verwenden Sie die ModifyInstanceMetadataOptionsAPI, um die Verwendung von IMDSv2 auf vorhandenen Instances vorzuschreiben, oder beenden Sie die Instances, und die Amazon EC2 Auto Scaling Scaling-Gruppe startet neue Ersatz-Instances mit den Einstellungen der Instance-Metadaten-Optionen, die in der neuen Startvorlage oder Startkonfiguration definiert sind.
- AMIs
-
AMIs konfiguriert mit dem
ImdsSupportParameter, der auf gesetzt ist,v2.0startet IMDSv2 standardmäßig Instances, die dies erfordern. Amazon Linux 2023 ist konfiguriert mitImdsSupport = v2.0.Neu AMIs: Verwenden Sie den CLI-Befehl register-image, um den
ImdsSupportParameter auf zu setzen,v2.0wenn Sie ein neues AMI erstellen.Existierend AMIs: Verwenden Sie den modify-image-attributeCLI-Befehl, um den
ImdsSupportParameter auf festzulegen,v2.0wenn Sie ein vorhandenes AMI ändern.Weitere Informationen finden Sie unter Konfigurieren des AMI.
- IAM-Richtlinien und SCPs
-
Sie können eine IAM-Richtlinie oder eine AWS Organizations Service Control Policy (SCP) verwenden, um Benutzer wie folgt zu kontrollieren:
-
Eine Instance kann nicht mithilfe der RunInstancesAPI gestartet werden, es sei denn, die Instance ist für die Verwendung konfiguriert. IMDSv2
-
Eine laufende Instanz kann nicht mithilfe der ModifyInstanceMetadataOptionsAPI geändert werden, um sie erneut zu aktivierenIMDSv1.
Die IAM-Richtlinie oder die SCP muss die folgenden IAM-Bedingungsschlüssel enthalten:
-
ec2:MetadataHttpEndpoint -
ec2:MetadataHttpPutResponseHopLimit -
ec2:MetadataHttpTokens
Wenn ein Parameter im API- oder CLI-Aufruf nicht mit dem Status übereinstimmt, der in der Richtlinie angegeben ist, die den Bedingungsschlüssel enthält, schlägt der API- oder CLI-Aufruf mit einer
UnauthorizedOperationAntwort fehl.Darüber hinaus können Sie eine zusätzliche Schutzebene wählen, um die Änderung von IMDSv1 zu durchzusetzen IMDSv2. Auf der Ebene der Zugriffsverwaltung können Sie in Bezug auf die über die EC2 Rolle APIs aufgerufenen Anmeldeinformationen einen Bedingungsschlüssel entweder in IAM-Richtlinien oder in Richtlinien zur AWS Organizations Dienststeuerung verwenden (SCPs). Insbesondere wenn Sie den Bedingungsschlüssel
ec2:RoleDeliverymit einem Wert von2.0in Ihren IAM-Richtlinien verwenden, IMDSv1 erhalten API-Aufrufe mit EC2 Rollenanmeldedaten von eineUnauthorizedOperationAntwort. Das Gleiche kann mit der von einer SCP erzwungenen Bedingung weiter gefasst werden. Dadurch wird sichergestellt, dass die über übermittelten Anmeldeinformationen IMDSv1 nicht tatsächlich zum Aufrufen verwendet werden können APIs , da bei API-Aufrufen, die nicht der angegebenen Bedingung entsprechen, eineUnauthorizedOperationFehlermeldung ausgegeben wird.Beispiele für IAM-Richtlinien finden Sie unter Arbeiten mit Instance-Metadaten. Weitere Informationen zu SCPs finden Sie im AWS Organizations Benutzerhandbuch unter Richtlinien zur Servicesteuerung.
-
- Deklarative Richtlinien
-
Verwenden Sie deklarative Richtlinien (eine Funktion von AWS Organizations), um die IMDS-Standardversion zentral festzulegen und unternehmensweit durchzusetzenIMDSv2 . Eine Beispielrichtlinie finden Sie auf der Registerkarte Standardwerte für Instanz-Metadaten im Abschnitt Unterstützte deklarative Richtlinien im Benutzerhandbuch.AWS Organizations
Empfohlener Pfad zur Anforderung IMDSv2
Unter Verwendung der oben genannten Tools empfehlen wir den folgenden Pfad für den Übergang zuIMDSv2:
Schritt 1: Identifizieren Sie Instanzen mit IMDSv2 =optional und überprüfen Sie die Nutzung IMDSv1
Um Ihren IMDSv2 Migrationsumfang einzuschätzen, identifizieren Sie Instanzen, die so konfiguriert sind, dass sie entweder IMDSv1 oder zulassen IMDSv2, und prüfen Sie IMDSv1 Aufrufe.
-
Identifizieren Sie Instanzen, die so konfiguriert sind, dass sie entweder IMDSv1 oder IMDSv2:
-
IMDSv1 Audit-Aufrufe für jede Instanz:
Verwenden Sie die CloudWatch Metrik
MetadataNoToken. Diese Metrik zeigt die Anzahl der IMDSv1 Aufrufe an das IMDS auf Ihren Instances. Weitere Informationen finden Sie unter Instanz-Metriken. -
Identifizieren Sie die Software auf Ihren Instances, die IMDSv1 Anrufe tätigt:
Verwenden Sie den Open-Source-IMDS Packet Analyzer
, um IMDSv1 Aufrufe während der Startphase und der Laufzeitvorgänge Ihrer Instance zu identifizieren und zu protokollieren. Verwenden Sie diese Informationen, um die Software zu identifizieren, die aktualisiert werden muss, damit Ihre Instances IMDSv2 nur einsatzbereit sind. Sie können IMDS-Paket-Analysator von der Befehlszeile aus ausführen oder als Service installieren.
Schritt 2: Aktualisieren Sie die Software auf IMDSv2
Aktualisieren Sie alle SDKs, und Software CLIs, die Rollenanmeldedaten auf Ihren Instances verwendet, auf IMDSv2 -kompatible Versionen. Weitere Informationen zur Aktualisierung der CLI finden Sie unter Installieren oder Aktualisieren auf die neueste Version der AWS CLI im Benutzerhandbuch für AWS Command Line Interface .
Schritt 3: Keine Instanzen erforderlich IMDSv2
Nachdem Sie anhand der MetadataNoToken Metrik bestätigt haben, dass keine IMDSv1 Aufrufe mehr erforderlich sind, konfigurieren Sie Ihre vorhandenen Instances so, dass sie erforderlich sind IMDSv2. Konfigurieren Sie außerdem alle neuen Instanzen so, dass sie erforderlich sind IMDSv2. Mit anderen Worten, deaktivieren Sie es IMDSv1 auf allen vorhandenen und neuen Instanzen.
-
Konfigurieren Sie bestehende Instanzen so, dass sie Folgendes erfordernIMDSv2:
Anmerkung
Sie können diese Einstellung bei laufenden Instances ändern. Die Änderung wird sofort wirksam, ohne dass ein Neustart der Instanz erforderlich ist.
Weitere Informationen finden Sie unter Erfordern die Verwendung von IMDSv2.
-
Achten Sie nach der Deaktivierung IMDSv1 auf Probleme:
-
Verfolgen Sie anhand der
MetadataNoTokenRejectedCloudWatch Metrik, wie oft ein IMDSv1 Anruf versucht und abgelehnt wurde. -
Wenn die
MetadataNoTokenRejectedMetrik IMDSv1 Aufrufe einer Instanz aufzeichnet, bei der Softwareprobleme auftreten, bedeutet dies, dass die Software aktualisiert werden muss, damit sie verwendet IMDSv2 werden kann.
-
-
Konfigurieren Sie neue Instanzen so, dass sie Folgendes erfordernIMDSv2:
Schritt 4: Stellen Sie IMDSv2 =required als Standard ein
Sie können IMDSv2 =required als Standardkonfiguration entweder auf Konto- oder Organisationsebene festlegen. Dadurch wird sichergestellt, dass alle neu gestarteten Instances automatisch so konfiguriert werden, dass sie Folgendes benötigen IMDSv2.
-
Legen Sie den Standard auf Kontoebene fest:
Weitere Informationen finden Sie unter IMDSv2 Als Standard für das Konto festlegen.
-
Alternativ können Sie mithilfe einer deklarativen Richtlinie den Standard auf Organisationsebene festlegen:
Verwenden Sie eine deklarative Richtlinie, um den Organisationsstandard für auf erforderlich festzulegen. IMDSv2 Eine Beispielrichtlinie finden Sie auf der Registerkarte Standardwerte für Instanz-Metadaten im Abschnitt Unterstützte deklarative Richtlinien im AWS Organizations Benutzerhandbuch.
Schritt 5: Erzwingen Sie, dass für Instances Folgendes erforderlich ist IMDSv2
Verwenden Sie die folgenden IAM- oder SCP-Bedingungsschlüssel, um die Verwendung zu erzwingen IMDSv2 :
-
ec2:MetadataHttpTokens -
ec2:MetadataHttpPutResponseHopLimit -
ec2:MetadataHttpEndpoint
Diese Bedingungsschlüssel steuern die Verwendung von RunInstancesModifyInstanceMetadataOptions APIs und den entsprechenden. CLIs Wenn eine Richtlinie erstellt wird und ein Parameter im API-Aufruf nicht mit dem in der Richtlinie über den Bedingungsschlüssel angegebenen Status übereinstimmt, schlägt der API- oder CLI-Aufruf mit einer UnauthorizedOperation-Antwort fehl.
Beispiele für IAM-Richtlinien finden Sie unter Arbeiten mit Instance-Metadaten.