Erfahren Sie technische Details über die SSM Agent - AWS Systems Manager

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.

Erfahren Sie technische Details über die SSM Agent

Verwenden Sie die Informationen in diesem Thema, um Ihnen bei der Implementierung von AWS Systems Manager Agent zu helfen (SSM Agent) und verstehen Sie, wie der Agent funktioniert.

SSM Agent Verhalten der Anmeldeinformationen von Version 3.2.x.x

SSM Agent speichert eine Reihe von temporären Anmeldeinformationen unter /var/lib/amazon/ssm/credentials (für Linux) und macOS) oder %PROGRAMFILES%\Amazon\SSM\credentials (für Windows Server) wenn eine Instanz mithilfe der Standard-Host-Management-Konfiguration in eingebunden wird Quick Setup. Die temporären Anmeldeinformationen verfügen über die Berechtigungen, die Sie für die IAM Rolle angegeben haben, die Sie für die Standard-Host-Management-Konfiguration ausgewählt haben. Auf Linux kann nur das Root-Konto auf diese Anmeldeinformationen zugreifen. Ein Windows Server, nur das SYSTEM Konto und die lokalen Administratoren können auf diese Anmeldeinformationen zugreifen.

SSM Agent Vorrang der Anmeldeinformationen

In diesem Thema werden wichtige Informationen zu folgenden Themen beschrieben SSM Agent hat die Berechtigung, Aktionen mit Ihren Ressourcen durchzuführen.

Anmerkung

Die Support für Edge-Geräte unterscheidet sich geringfügig. Sie müssen Ihre Edge-Geräte für die Verwendung der AWS IoT Greengrass Core-Software konfigurieren, eine AWS Identity and Access Management (IAM) -Servicerolle konfigurieren und bereitstellen SSM Agent auf Ihren Geräten mithilfe von AWS IoT Greengrass. Weitere Informationen finden Sie unter Verwaltung von Edge-Geräten mit Systems Manager.

Wann SSM Agent ist auf einem Computer installiert und benötigt Berechtigungen, um mit dem Systems Manager Manager-Dienst zu kommunizieren. Auf Amazon Elastic Compute Cloud (AmazonEC2) -Instances werden diese Berechtigungen in einem Instance-Profil bereitgestellt, das an die Instance angehängt ist. Auf einem Computer, der kein EC2 Computer ist, SSM Agent ruft normalerweise die benötigten Berechtigungen aus der Datei mit gemeinsamen Anmeldeinformationen ab, die sich unter /root/.aws/credentials (Linux und macOS) oder %USERPROFILE%\.aws\credentials (Windows Server). Die erforderlichen Berechtigungen werden dieser Datei während des Hybrid-Aktivierungsprozesses hinzugefügt.

In seltenen Fällen kann es jedoch vorkommen, dass einem Computer Berechtigungen zu mehr als einem der folgenden Standorte hinzugefügt wurden SSM Agent sucht nach Berechtigungen zur Ausführung seiner Aufgaben.

Angenommen, Sie haben eine EC2 Instanz so konfiguriert, dass sie von Systems Manager verwaltet wird. Diese Konfiguration umfasst das Anhängen eines Instance-Profils. Aber dann entscheiden Sie sich, diese Instance auch für Entwickler- oder Endbenutzer-Aufgaben zu verwenden und installieren die AWS Command Line Interface (AWS CLI) darauf. Diese Installation führt dazu, dass zusätzliche Berechtigungen zu einer Anmeldeinformationsdatei auf der Instance hinzugefügt werden.

Wenn Sie einen Systems Manager Manager-Befehl auf der Instance ausführen, SSM Agent könnte versuchen, andere Anmeldeinformationen als die zu verwenden, die Sie erwarten, z. B. aus einer Anmeldeinformationsdatei statt aus einem Instanzprofil. Das liegt daran SSM Agent sucht nach Anmeldeinformationen in der Reihenfolge, die für die standardmäßige Anbieterkette für Anmeldeinformationen vorgeschrieben ist.

Anmerkung

Unter Linux und macOS, SSM Agent läuft als Root-Benutzer. Daher sind die Umgebungsvariablen und die Datei mit den Anmeldeinformationen SSM Agent sucht in diesem Prozess nur nach denen des Root-Benutzers (/root/.aws/credentials). SSM Agent schaut sich bei der Suche nach Anmeldeinformationen nicht die Umgebungsvariablen oder die Anmeldeinformationsdatei anderer Benutzer auf der Instanz an.

Die Standard-Anbieterkette sucht in folgender Reihenfolge nach Anmeldeinformationen:

  1. Umgebungsvariablen, wenn konfiguriert (AWS_ACCESS_KEY_ID und AWS_SECRET_ACCESS_KEY)

  2. Datei mit gemeinsam genutzten Anmeldeinformationen ($HOME/.aws/credentialsfür Linux und macOS oder %USERPROFILE%\.aws\credentials für Windows Server) mit Berechtigungen, die beispielsweise durch eine Hybridaktivierung oder eine AWS CLI Installation bereitgestellt werden.

  3. Eine AWS Identity and Access Management (IAM) Rolle für Aufgaben, wenn eine Anwendung vorhanden ist, die eine Amazon Elastic Container Service (AmazonECS) -Aufgabendefinition oder RunTask API -operation verwendet.

  4. Ein Instance-Profil, das an eine EC2 Amazon-Instance angehängt ist.

  5. Die IAM Rolle, die für die Standard-Host-Management-Konfiguration ausgewählt wurde.

Verwandte Informationen finden Sie in den folgenden Themen:

Konfigurieren SSM Agent zur Verwendung mit dem Federal Information Processing Standard (FIPS)

Wenn Sie Systems Manager mit nach Federal Information Processing Standard (FIPS) 140-3 validierten kryptografischen Modulen verwenden müssen, können Sie Agent konfigurieren ( AWS Systems Manager SSM Agent), um die FIPS Endgeräte in unterstützten Regionen zu verwenden.

Um zu konfigurieren SSM Agent um eine Verbindung zu FIPS 140-3 Endpunkten herzustellen
  1. Connect zu Ihrem verwalteten Knoten her.

  2. Navigieren Sie zu dem Verzeichnis, das die amazon-ssm-agent.json Datei enthält:

    • Linux: /etc/amazon/ssm/

    • macOS: /opt/aws/ssm/

    • Windows Server: C:\Program Files\Amazon\SSM\

  3. Öffnen Sie die Datei mit dem Namen amazon-ssm-agent.json, um sie zu bearbeiten.

    Tipp

    Wenn noch keine amazon-ssm-agent.json Datei existiert, kopieren Sie den Inhalt von amazon-ssm-agent.json.template in eine neue Datei mit dem Namenamazon-ssm-agent.json. Speichern Sie amazon-ssm-agent.json in demselben Verzeichnis, in dem sich amazon-ssm-agent.json.template befindet.

  4. Fügen Sie der Datei den folgenden Inhalt hinzu. Ersetzen Sie den region Platzhalterwerte durch den entsprechenden Regionalcode für Ihre Partition:

    { ---Existing file content, if any--- "Mds": { "Endpoint": "ec2messages-fips.region.amazonaws.com", }, "Ssm": { "Endpoint": "ssm-fips.region.amazonaws.com", }, "Mgs": { "Endpoint": "ssmmessages-fips.region.amazonaws.com", "Region": "region" }, "S3": { "Endpoint": "s3-fips.dualstack.region.amazonaws.com", "Region": region" }, "Kms": { "Endpoint": "kms-fips.region.amazonaws.com" } }

    Zu den unterstützten Regionen gehören die folgenden:

    • us-east-1für die Region USA Ost (Nord-Virginia)

    • us-east-2für die Region USA Ost (Ohio)

    • us-west-1für die Region USA West (Nordkalifornien)

    • us-west-2für die Region USA West (Oregon)

    • ca-west-1für die Region Kanada West (Calgary)

  5. Speichern Sie die Datei und starten Sie sie neu SSM Agent.

Starten Sie jedes Mal neu, wenn Sie die Konfiguration ändern SSM Agent.

Sie können andere Funktionen von anpassen SSM Agent mit demselben Verfahren. Eine up-to-date Liste der verfügbaren Konfigurationseigenschaften und ihrer Standardwerte finden Sie unter Definitionen von Konfigurationseigenschaften im amazon-ssm-agent Repository unter GitHub.

Weitere Informationen zur AWS FIPS Unterstützung von finden Sie unter Federal Information Processing Standard (FIPS) 140-3.

Über das lokale ssm-user-Konto

Beginnend mit Version 2.3.50.0 von SSM Agent, erstellt der Agent ein lokales Benutzerkonto namens ssm-user und fügt es dem /etc/sudoers.d Verzeichnis hinzu (Linux und macOS) oder zur Administratorgruppe (Windows Server). Bei Agentenversionen vor 2.3.612.0 wird das Konto zum ersten Mal erstellt SSM Agent startet oder startet nach der Installation neu. Auf Version 2.3.612.0 und höher wird das ssm-user-Konto beim ersten Start einer Sitzung auf einer Instance erstellt. Dies ssm-user ist der Standard-Betriebssystembenutzer, wenn eine Sitzung gestartet wird Session Manager, eine Fähigkeit von AWS Systems Manager. Sie können die Berechtigungen ändern, indem Sie ssm-user einer Gruppe mit weniger Berechtigungen hinzufügen oder die sudoers-Datei entsprechend ändern. Das ssm-user Konto wird nicht aus dem System entfernt, wenn SSM Agent ist deinstalliert.

Ein Windows Server, SSM Agent kümmert sich um das Einstellen eines neuen Passworts für das ssm-user Konto, wenn jede Sitzung gestartet wird. Auf Linux-verwalteten Instances werden keine Passwörter für ssm-user festgelegt.

Beginnend mit SSM Agent Version 2.3.612.0, das ssm-user Konto wird nicht automatisch erstellt auf Windows Server Maschinen, die als Domänencontroller verwendet werden. Zur Verwendung Session Manager auf einem Windows Server Erstellen Sie das ssm-user Konto manuell, falls es noch nicht vorhanden ist, und weisen Sie dem Benutzer Domänenadministratorberechtigungen zu.

Wichtig

Damit das ssm-user-Konto erstellt werden kann, muss das Instance-Profil, das der Instance zugewiesen ist, über die erforderlichen Berechtigungen verfügen. Weitere Informationen finden Sie unter Schritt 2: Überprüfen oder Hinzufügen von Instanzberechtigungen für Session Manager.

SSM Agent und die Instance Metadata Service (IMDS)

Systems Manager ist auf EC2 Instanzmetadaten angewiesen, um korrekt zu funktionieren. Systems Manager kann auf Instanz-Metadaten zugreifen, indem entweder Version 1 oder Version 2 von Instance Metadata Service (IMDSv1 and IMDSv2). Ihre Instance muss auf die IPv4 Adresse des Instanz-Metadatendienstes zugreifen können: 169.254.169.254. Weitere Informationen finden Sie unter Instance-Metadaten und Benutzerdaten im EC2Amazon-Benutzerhandbuch.

Behalten SSM Agent up-to-date

Eine aktualisierte Version von SSM Agent wird immer dann veröffentlicht, wenn Systems Manager um neue Funktionen erweitert oder bestehende Funktionen aktualisiert werden. Wenn Sie nicht die neueste Version des Agenten verwenden, kann dies dazu führen, dass der verwaltete Knoten nicht die zahlreichen Features von Systems Manager verwendet. Aus diesem Grund empfehlen wir, den Prozess der Aufbewahrung zu automatisieren SSM Agent auf Ihren Maschinen auf dem neuesten Stand. Weitere Informationen finden Sie unter Automatisieren von Updates für SSM Agent. Abonnieren Sie den SSM AgentSeite mit den Versionshinweisen auf GitHub um Benachrichtigungen zu erhalten über SSM Agent Aktualisierungen.

Anmerkung

Eine aktualisierte Version von SSM Agent wird immer dann veröffentlicht, wenn Systems Manager um neue Funktionen erweitert oder bestehende Funktionen aktualisiert werden. Wenn Sie nicht die neueste Version des Agenten verwenden, kann dies dazu führen, dass der verwaltete Knoten nicht die zahlreichen Features von Systems Manager verwendet. Aus diesem Grund empfehlen wir, den Prozess der Aufbewahrung zu automatisieren SSM Agent auf Ihren Maschinen auf dem neuesten Stand. Weitere Informationen finden Sie unter Automatisieren von Updates für SSM Agent. Abonnieren Sie den SSM AgentSeite mit den Versionshinweisen auf GitHub um Benachrichtigungen zu erhalten über SSM Agent Aktualisierungen.

Amazon Machine Images (AMIs), die beinhalten SSM Agent standardmäßig kann es bis zu zwei Wochen dauern, bis die Aktualisierung mit der neuesten Version von SSM Agent. Wir empfehlen Ihnen, noch häufigere automatische Updates zu konfigurieren SSM Agent.

Stellen Sie sicher, dass SSM Agent Das Installationsverzeichnis wurde nicht geändert, verschoben oder gelöscht

SSM Agent ist installiert unter /var/lib/amazon/ssm/ (Linux und macOS) und %PROGRAMFILES%\Amazon\SSM\ (Windows Server). Diese Installationsverzeichnisse enthalten wichtige Dateien und Ordner, die von SSM Agent, wie z. B. eine Datei mit Anmeldeinformationen, Ressourcen für die Kommunikation zwischen Prozessen (IPC) und Orchestrierungsordner. Nichts im Installationsverzeichnis sollte geändert, verschoben oder gelöscht werden. Andernfalls SSM Agent könnte nicht mehr richtig funktionieren.

SSM Agent fortlaufende Updates von AWS-Regionen

Nach einem SSM Agent Das Update wird in seinem zur Verfügung gestellt GitHub Repository, es kann bis zu zwei Wochen dauern, bis die aktualisierte Version zu unterschiedlichen AWS-Regionen Zeiten für alle verfügbar ist. Aus diesem Grund erhalten Sie möglicherweise die Fehlermeldung „Auf der aktuellen Plattform nicht unterstützt“ oder „Aktualisierung amazon-ssm-agent auf eine ältere Version, bitte aktivieren Sie das Downgrade, um fortzufahren“, wenn Sie versuchen, eine neue Version von bereitzustellen SSM Agent in einer Region.

Um die Version von zu ermitteln SSM Agent steht Ihnen zur Verfügung. Sie können einen curl Befehl ausführen.

Um die im globalen Download-Bucket verfügbare Version des Agenten anzuzeigen, führen Sie den folgenden Befehl aus.

curl https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/VERSION

Um die in einer bestimmten Region verfügbare Version des Agenten anzuzeigen, führen Sie den folgenden Befehl aus und ersetzen Sie region mit der Region, in der Sie arbeiten, z. B. us-east-2 für die Region USA Ost (Ohio).

curl https://s3.region.amazonaws.com/amazon-ssm-region/latest/VERSION

Sie können die VERSION-Datei auch direkt in Ihrem Browser ohne einen curl-Befehl öffnen.

SSM Agent Kommunikation mit AWS verwalteten S3-Buckets

Im Zuge der Ausführung verschiedener Systems Manager Manager-Operationen hat AWS Systems Manager Agent (SSM Agent) greift auf eine Reihe von Amazon Simple Storage Service (Amazon S3) -Buckets zu. Diese S3-Buckets sind öffentlich zugänglich und standardmäßig SSM Agent stellt über HTTP Anrufe eine Verbindung zu ihnen her.

Wenn Sie jedoch einen Virtual Private Cloud (VPC) -Endpunkt in Ihren Systems Manager-Vorgängen verwenden, müssen Sie in einem Amazon Elastic Compute Cloud (AmazonEC2) -Instanzprofil für Systems Manager oder in einer Servicerolle für EC2 Nicht-Maschinen in einer Hybrid- und Multi-Cloud-Umgebung eine ausdrückliche Genehmigung erteilen. Andernfalls haben Ihre Ressourcen keinen Zugriff auf diese öffentlichen Buckets.

Um Ihren verwalteten Knoten Zugriff auf diese Buckets zu gewähren, wenn Sie einen VPC Endpunkt verwenden, erstellen Sie eine benutzerdefinierte Amazon S3 S3-Berechtigungsrichtlinie und fügen sie dann Ihrem Instance-Profil (für EC2 Instances) oder Ihrer Servicerolle (für nicht EC2 verwaltete Knoten) hinzu.

Informationen zur Verwendung eines Virtual Private Cloud (VPC) -Endpunkts in Ihren Systems Manager-Vorgängen finden Sie unter Verbessern der Sicherheit von EC2 Instanzen mithilfe von VPC Endpunkten für Systems Manager.

Anmerkung

Diese Berechtigungen ermöglichen nur den Zugriff auf die AWS verwalteten Buckets, die erforderlich sind für SSM Agent. Sie bieten nicht die Berechtigungen, die für andere Amazon S3 S3-Operationen erforderlich sind. Außerdem gewähren sie auch keine Berechtigung für Ihren eigenen S3-Buckets.

Weitere Informationen finden Sie unter den folgenden Themen:

Erforderliche Bucket-Berechtigungen

In der folgenden Tabelle werden die einzelnen S3-Buckets beschrieben, die SSM Agent muss möglicherweise für Systems Manager Manager-Operationen darauf zugreifen.

Anmerkung

region steht für den Bezeichner einer Region AWS Systems Manager, die von AWS-Region unterstützt wird, z. B. us-east-2 für die Region USA Ost (Ohio). Für eine Liste der unterstützten region Werte finden Sie in der Spalte Region in Systems Manager Manager-Dienstendpunkten in der Allgemeine Amazon Web Services-Referenz.

Amazon S3 S3-Berechtigungen erforderlich von SSM Agent

S3-Bucket ARN Beschreibung

arn:aws:s3:::aws-windows-downloads-region/*

Erforderlich für einige SSM Dokumente, die nur Windows Server Betriebssysteme sowie einige für plattformübergreifende Unterstützung, wie AWSEC2-ConfigureSTIG z.

arn:aws:s3:::amazon-ssm-region/*

Für die Aktualisierung erforderlich SSM Agent Installationen. Diese Eimer enthalten SSM Agent Installationspakete und die Installationsmanifeste, auf die im AWS-UpdateSSMAgent Dokument und im Plugin verwiesen wird. Wenn diese Berechtigungen nicht bereitgestellt werden, wird SSM Agent HTTPruft an, um das Update herunterzuladen.

arn:aws:s3:::amazon-ssm-packages-region/*

Erforderlich für die Verwendung von Versionen von SSM Agent vor 2.2.45.0, um das Dokument auszuführen. SSM AWS-ConfigureAWSPackage

arn:aws:s3:::region-birdwatcher-prod/*

Ermöglicht den Zugriff auf den Distributionsdienst, der von Version 2.2.45.0 und höher von verwendet wird SSM Agent. Dieser Dienst wird verwendet, um das Dokument auszuführenAWS-ConfigureAWSPackage.

Diese Genehmigung ist für alle AWS-Regionen außer der Region Afrika (Kapstadt) (af-south-1) und der Region Europa (Mailand) (eu-south-1) erforderlich.

arn:aws:s3:::aws-ssm-distributor-file-region/*

Ermöglicht den Zugriff auf den Distributionsdienst, der von Version 2.2.45.0 und höher von verwendet wird SSM Agent. Dieser Dienst wird verwendet, um das SSM Dokument auszuführenAWS-ConfigureAWSPackage.

Diese Berechtigung wird für nur für die Region Afrika (Kapstadt) (af-south-1) und die Region Europa (Mailand) (eu-south-1) benötigt.

arn:aws:s3:::aws-ssm-document-attachments-region/*

Bietet Zugriff auf den S3-Bucket, der die Pakete für enthält Distributor, eine Fähigkeit von AWS Systems Manager, die gehören AWS.

arn:aws:s3:::aws-ssm-region/* Ermöglicht den Zugriff auf den S3-Bucket, der Module enthält, die für die Verwendung mit nicht patchenden Systems Manager Manager-Dokumenten (SSMBefehlsdokumenten) erforderlich sind. Beispiel: arn:aws:s3:::aws-ssm-us-east-2/*.

Im Folgenden sind einige häufig verwendete SSM Dokumente aufgeführt, die in diesen Buckets gespeichert sind.

  • AWS-ConfigureWindowsUpdate

  • AWS-FindWindowsUpdates

  • AWS-UpdateSSMAgent

  • AWS-UpdateEC2Config

arn:aws:s3:::patch-baseline-snapshot-region/*

–oder–

arn:aws:s3:::patch-baseline-snapshot-region-unique-suffix/*

Bietet Zugriff auf den S3-Bucket, der Patch-Baseline-Snapshots enthält. Dies ist erforderlich, wenn Sie eines der folgenden SSM Befehlsdokumente verwenden:

  • AWS-RunPatchBaseline

  • AWS-RunPatchBaselineAssociation

  • AWS-RunPatchBaselineWithHooks

  • AWS-ApplyPatchBaseline(ein SSM veraltetes Dokument)

Die Buckets für die meisten unterstützten Formate AWS-Regionen verwenden das folgende Format:

arn:aws:s3:::patch-baseline-snapshot-region

Für einige Regionen ist ein zusätzliches eindeutiges Suffix im Bucket-Namen enthalten. Der Bucket-Name für die Region Naher Osten (Bahrain) (me-south-1) lautet beispielsweise wie folgt:

  • patch-baseline-snapshot-me-south-1-uduvl7q8

Eine vollständige Liste der Bucket-Namen für Patch-Baseline-Snapshots finden Sie unter. Buckets mit verwalteten Patch-Baseline-Snapshots AWS

Anmerkung

Wenn Sie eine lokale Firewall verwenden und beabsichtigen, diese zu verwenden Patch Manager, diese Firewall muss auch den Zugriff auf den entsprechenden Patch-Baseline-Endpunkt ermöglichen.

Für Linux und Windows Server verwaltete Knoten: arn:aws:s3:::aws-patch-manager-region-unique-suffix/*

Für EC2 Amazon-Instances für macOS: arn:aws:s3:::aws-patchmanager-macos-region-unique-suffix/*

Bietet Zugriff auf den S3-Bucket mit SSM Befehlsdokumenten für Patch-Operationen in Patch Manager. Jeder Bucket-Name enthält ein eindeutiges Suffix, z. B. 552881074 für Buckets in der Region USA Ost (Ohio) (us-east-2):

  • arn:aws:s3:::aws-patch-managerer-us-east-2-552881074/*

  • arn:aws:s3:::aws-patchmanager-macos-us-east-2-552881074/*

SSMDokumente

Im Folgenden sind einige häufig verwendete SSM Dokumente aufgeführt, die in diesen Buckets gespeichert sind.

  • AWS-RunPatchBaseline

  • AWS-RunPatchBaselineAssociation

  • AWS-RunPatchBaselineWithHooks

  • AWS-InstanceRebootWithHooks

  • AWS-PatchAsgInstance

  • AWS-PatchInstanceWithRollback

Vollständige Listen der AWS verwalteten S3-Buckets für Patch-Operationen finden Sie in den folgenden Themen:

Beispiel

Das folgende Beispiel veranschaulicht, wie Zugriff auf die S3-Buckets erteilt wird, die in der Region USA Ost (Ohio) (us-east-2) für Systems Manager-Operationen benötigt werden. In den meisten Fällen müssen Sie diese Berechtigungen nur dann explizit in einem Instanzprofil oder einer Servicerolle angeben, wenn Sie einen VPC Endpunkt verwenden.

Wichtig

Wir empfehlen, dass Sie keine Platzhalterzeichen (*) für bestimmte Regionen in dieser Richtlinie verwenden. Verwenden Sie beispielsweise arn:aws:s3:::aws-ssm-us-east-2/* und nicht arn:aws:s3:::aws-ssm-*/*. Bei der Verwendung von Platzhaltern könnte Zugriff auf S3-Buckets erteilt werden, für die Sie keinen Zugriff gewähren möchten. Wenn Sie das Instance-Profil für mehr als eine Region verwenden möchten, empfehlen wir, den ersten Statement-Block für jede Region zu wiederholen.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::aws-windows-downloads-us-east-2/*", "arn:aws:s3:::amazon-ssm-us-east-2/*", "arn:aws:s3:::amazon-ssm-packages-us-east-2/*", "arn:aws:s3:::us-east-2-birdwatcher-prod/*", "arn:aws:s3:::aws-ssm-document-attachments-us-east-2/*", "arn:aws:s3:::aws-ssm-us-east-2/*", "arn:aws:s3:::patch-baseline-snapshot-us-east-2/*", "arn:aws:s3:::aws-patch-manager-us-east-2-552881074/*", "arn:aws:s3:::aws-patchmanager-macos-us-east-2-552881074/*" ] } ] }

Validierung von hybrid-aktivierten Maschinen mit einem Hardware-Fingerabdruck

Wenn es sich nicht um EC2 Maschinen in einer Hybrid- und Multi-Cloud-Umgebung handelt, SSM Agent sammelt eine Reihe von Systemattributen (wird als Hardware-Hash bezeichnet) und verwendet diese Attribute, um einen Fingerabdruck zu berechnen. Der Fingerabdruck ist eine undurchsichtige Zeichenfolge, die der Agent an einen bestimmten Systems Manager APIs weitergibt. Dieser eindeutige Fingerabdruck ordnet den Abrufer einem bestimmten hybrid-aktivierten verwalteten Knoten zu. Der Agent speichert den Fingerabdruck und den Hardware-Hash auf der lokalen Festplatte an einem Speicherort namens Vault.

Der Agent berechnet den Hardware-Hash und den Fingerabdruck, wenn die Maschine für die Verwendung mit Systems Manager registriert wird. Anschließend wird der Fingerabdruck an den Systems Manager-Service zurückgegeben, wenn der Agent einen RegisterManagedInstance-Befehl sendet.

Später, wenn ein RequestManagedInstanceRoleToken-Befehl gesendet wird, überprüft der Agent den Fingerabdruck und den Hardware-Hash im Vault, um sicherzustellen, dass die aktuellen Computerattribute mit dem gespeicherten Hardware-Hash übereinstimmen. Wenn die aktuellen Computerattribute mit dem im Vault gespeicherten Hardware-Hash übereinstimmen, übergibt der Agent den Fingerabdruck aus dem Vault an RegisterManagedInstance, was zu einem erfolgreichen Aufruf führt.

Wenn die aktuellen Maschinenattribute nicht mit dem gespeicherten Hardware-Hash übereinstimmen, SSM Agent berechnet einen neuen Fingerabdruck, speichert den neuen Hardware-Hash und den neuen Fingerabdruck im Tresor und übergibt den neuen Fingerabdruck anRequestManagedInstanceRoleToken. Dadurch schlägt RequestManagedInstanceRoleToken fehl und der Agent kann kein Rollen-Token für die Verbindung mit dem Systems Manager-Service abrufen.

Dieser Fehler ist vorgesehen und wird als Verifizierungsschritt verwendet, um zu verhindern, dass mehrere verwaltete Knoten als derselbe verwaltete Knoten mit dem Systems-Manager-Service kommunizieren.

Beim Vergleich der aktuellen Computerattribute mit dem im Vault gespeicherten Hardware-Hash verwendet der Agent die folgende Logik, um festzustellen, ob die alten und neuen Hashes übereinstimmen:

  • Wenn die SID (System-/Maschinen-ID) unterschiedlich ist, dann keine Übereinstimmung.

  • Wenn die IP-Adresse identisch ist, gibt es eine Übereinstimmung.

  • Andernfalls wird der Prozentsatz der übereinstimmenden Computerattribute berechnet und mit dem vom Benutzer konfigurierten Ähnlichkeitsschwellenwert verglichen, um festzustellen, ob eine Übereinstimmung vorliegt.

Der Ähnlichkeitsschwellenwert wird im Vault als Teil des Hardware-Hash gespeichert.

Der Ähnlichkeitsschwellenwert kann festgelegt werden, nachdem eine Instance mit einem Befehl wie dem folgenden registriert wurde.

Auf Linux-Maschinen:

sudo amazon-ssm-agent -fingerprint -similarityThreshold 1

Ein Windows Server Maschinen, die Folgendes verwenden: PowerShell

cd "C:\Program Files\Amazon\SSM\" ` .\amazon-ssm-agent.exe -fingerprint -similarityThreshold 1
Wichtig

Wenn sich eine der Komponenten zur Berechnung des Fingerprints ändert, kann dies dazu führen, dass der Agent in den Ruhezustand versetzt wird. Um diesen Ruhezustand zu vermeiden, setzen Sie den Ähnlichkeitsschwellenwert auf einen niedrigen Wert, z.B. 1.

SSM Agent on GitHub

Der Quellcode für SSM Agent ist verfügbar auf GitHubsodass Sie den Agenten an Ihre Bedürfnisse anpassen können. Wir möchten Sie bitten, uns eventuelle Änderungswünsche mitzuteilen. Jedoch Amazon Web Services bietet keine Unterstützung für die Ausführung modifizierter Kopien dieser Software.