View a markdown version of this page

Laufzeitabdeckung und Problembehandlung für Amazon ECS-Cluster - Amazon GuardDuty

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.

Laufzeitabdeckung und Problembehandlung für Amazon ECS-Cluster

Die Laufzeitabdeckung für Amazon ECS-Cluster umfasst die Aufgaben, die auf AWS Fargate Amazon ECS-Container-Instances ausgeführt werden 1.

Bei einem Amazon ECS-Cluster, der auf Fargate ausgeführt wird, wird die Laufzeitabdeckung auf Aufgabenebene bewertet. Die ECS-Cluster-Laufzeitabdeckung umfasst die Fargate-Aufgaben, die ausgeführt wurden, nachdem Sie die Laufzeitüberwachung und die automatische Agentenkonfiguration für Fargate aktiviert haben (nur ECS). Standardmäßig ist eine Fargate-Aufgabe unveränderlich. GuardDuty wird nicht in der Lage sein, den Security Agent zur Überwachung von Containern auf bereits laufenden Aufgaben zu installieren. Um eine solche Fargate-Aufgabe einzubeziehen, müssen Sie die Aufgabe beenden und erneut starten. Prüfen Sie unbedingt, ob der zugehörige Dienst unterstützt wird.

Informationen zum Amazon ECS-Container finden Sie unter Kapazitätserstellung.

Überprüfen der Abdeckungsstatistiken

Die Abdeckungsstatistik für die Amazon ECS-Ressourcen, die Ihrem eigenen Konto oder Ihren Mitgliedskonten zugeordnet sind, entspricht dem Prozentsatz der intakten Amazon ECS-Cluster an allen Amazon ECS-Clustern in den ausgewählten AWS-Region. Dies beinhaltet die Abdeckung für Amazon ECS-Cluster, die sowohl Fargate- als auch Amazon EC2-Instances zugeordnet sind. Die folgende Gleichung stellt dies wie folgt dar:

(Fehlerfreie clusters/All Cluster) *100

Überlegungen

  • Die Abdeckungsstatistiken für den ECS-Cluster beinhalten den Abdeckungsstatus der Fargate-Aufgaben oder ECS-Container-Instances, die diesem ECS-Cluster zugeordnet sind. Der Abdeckungsstatus der Fargate-Aufgaben umfasst Aufgaben, die sich entweder im Status „Running“ befinden oder vor Kurzem abgeschlossen wurden.

  • Auf der Registerkarte „ECS-Cluster-Laufzeitabdeckung“ gibt das Feld „Abgedeckte Container-Instances“ den Abdeckungsstatus der Amazon EC2-Container-Instances an, die Ihrem Amazon ECS-Cluster zugeordnet sind.

    Wenn auf Ihrem Amazon ECS-Cluster nur der Starttyp Fargate ausgeführt wird, wird in diesem Feld ein Bindestrich (-) angezeigt, um anzuzeigen, dass die Anzahl nicht zutrifft. Ein Fargate-only Cluster muss keine Amazon EC2-Container-Instances abdecken.

  • Wenn Ihr Amazon ECS-Cluster mit einer Amazon EC2-Instance verknüpft ist, die über keinen Sicherheitsagenten verfügt, weist der Amazon ECS-Cluster ebenfalls den Status Ungesund auf.

    Informationen zur Identifizierung und Behebung des Abdeckungsproblems für die zugehörige Amazon EC2-Instance finden Sie unter Behebung von Problemen mit der Amazon EC2-Laufzeitabdeckung für Amazon EC2-Instances.

Wählen Sie eine der Zugriffsmethoden, um die Abdeckungsstatistiken für Ihre Konten einzusehen.

Console
  • Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die GuardDuty Konsole unter. https://console.aws.amazon.com/guardduty/

  • Wählen Sie im Navigationsbereich Runtime Monitoring aus.

  • Wählen Sie die Registerkarte Runtime Coverage.

  • Auf der Registerkarte ECS-Cluster-Laufzeitabdeckung können Sie die Abdeckungsstatistiken einsehen, die nach dem Abdeckungsstatus jedes Amazon ECS-Clusters zusammengefasst sind, der in der Cluster-Listentabelle verfügbar ist.

    • Sie können die Cluster-Listentabelle nach den folgenden Spalten filtern:

      • Konto-ID

      • Cluster-Name

      • Agentenverwaltungs-Typ

      • Abdeckungsstatus

  • Wenn einer Ihrer Amazon ECS-Cluster den Abdeckungsstatus als Ungesund hat, enthält die Spalte Problem zusätzliche Informationen zum Grund für den Status Ungesund.

    Wenn Ihre Amazon ECS-Cluster mit einer Amazon EC2-Instance verknüpft sind, navigieren Sie zur Registerkarte EC2-Instance Runtime Coverage und filtern Sie nach dem Feld Clustername, um das zugehörige Problem anzuzeigen.

API/CLI
  • Führen Sie die ListCoverage API mit Ihrer eigenen gültigen Detektor-ID, Ihrer aktuellen Region und Ihrem Service-Endpunkt aus. Mit dieser API können Sie die Instanzliste filtern und sortieren.

    • Sie können das Beispiel filter-criteria ändern mit einer der folgenden Optionen für CriterionKey:

      • ACCOUNT_ID

      • ECS_CLUSTER_NAME

      • COVERAGE_STATUS

      • MANAGEMENT_TYPE

    • Sie können das Beispiel AttributeName in sort-criteria ändern mit einer der folgenden Optionen:

      • ACCOUNT_ID

      • COVERAGE_STATUS

      • ISSUE

      • ECS_CLUSTER_NAME

      • UPDATED_AT

        Das Feld wird nur aktualisiert, wenn entweder eine neue Aufgabe im zugehörigen Amazon ECS-Cluster erstellt wird oder sich der entsprechende Abdeckungsstatus ändert.

    • Sie können den ändern max-results (bis zu 50).

    • Informationen zu Ihrem Konto und Ihrer aktuellen Region finden Sie auf der Seite „Einstellungen“ in der https://console.aws.amazon.com/guardduty/ Konsole oder führen Sie die ListDetectors API aus. detectorId

    aws guardduty --region us-east-1 list-coverage --detector-id 12abc34d567e8fa901bc2d34e56789f0 --sort-criteria '{"AttributeName": "ECS_CLUSTER_NAME", "OrderBy": "DESC"}' --filter-criteria '{"FilterCriterion":[{"CriterionKey":"ACCOUNT_ID", "FilterCondition":{"EqualsValue":"111122223333"}}] }' --max-results 5
  • Führen Sie die GetCoverageStatistics API aus, um aggregierte Statistiken zur Abdeckung abzurufen, die statisticsType auf dem basieren.

    • Sie können das Beispiel statisticsType zu einer der folgenden Optionen ändern:

      • COUNT_BY_COVERAGE_STATUS— Stellt Abdeckungsstatistiken für ECS-Cluster dar, die nach dem Abdeckungsstatus aggregiert sind.

      • COUNT_BY_RESOURCE_TYPE— Abdeckungsstatistiken, aggregiert auf der Grundlage des AWS Ressourcentyps in der Liste.

      • Sie können das Beispiel filter-criteria im Befehl ändern. Sie können die folgenden Optionen für CriterionKey verwenden:

        • ACCOUNT_ID

        • ECS_CLUSTER_NAME

        • COVERAGE_STATUS

        • MANAGEMENT_TYPE

        • INSTANCE_ID

    • Informationen zu Ihrem Konto und Ihrer aktuellen Region finden Sie auf der Seite „Einstellungen“ in der https://console.aws.amazon.com/guardduty/ Konsole oder führen Sie die ListDetectors API aus. detectorId

    aws guardduty --region us-east-1 get-coverage-statistics --detector-id 12abc34d567e8fa901bc2d34e56789f0 --statistics-type COUNT_BY_COVERAGE_STATUS --filter-criteria '{"FilterCriterion":[{"CriterionKey":"ACCOUNT_ID", "FilterCondition":{"EqualsValue":"123456789012"}}] }'

Weitere Informationen zu Deckungsproblemen finden Sie unterBehebung von Problemen mit der ECS-Fargate Amazon-Laufzeitabdeckung.

Änderung des Deckungsstatus durch EventBridge Benachrichtigungen

Der Abdeckungsstatus Ihres Amazon ECS-Clusters wird möglicherweise als Ungesund angezeigt. Um zu erfahren, wann sich der Abdeckungsstatus ändert, empfehlen wir Ihnen, den Abdeckungsstatus regelmäßig zu überwachen und Fehler zu beheben, wenn der Status Ungesund wird. Alternativ können Sie eine EventBridge Amazon-Regel erstellen, um eine Benachrichtigung zu erhalten, wenn sich der Deckungsstatus von Ungesund zu Gesund oder auf andere Weise ändert. Veröffentlichen Sie GuardDuty dies standardmäßig im EventBridge Bus für Ihr Konto.

Beispiel für ein Benachrichtigungsschema

In einer EventBridge Regel können Sie anhand der vordefinierten Beispielereignisse und Ereignismuster eine Benachrichtigung über den Versorgungsstatus erhalten. Weitere Informationen zum Erstellen einer EventBridge Regel finden Sie unter Regel erstellen im EventBridge Amazon-Benutzerhandbuch.

Darüber hinaus können Sie mithilfe des folgenden Beispiel-Benachrichtigungsschemas ein benutzerdefiniertes Ereignismuster erstellen. Achten Sie darauf, die Werte für Ihr Konto zu ersetzen. Um benachrichtigt zu werden, wenn sich der Abdeckungsstatus Ihres Amazon ECS-Clusters von Healthy auf ändertUnhealthy, detail-type sollte GuardDuty Runtime Protection Unhealthy der Um benachrichtigt zu werden, wenn sich der Abdeckungsstatus von Unhealthy zu ändertHealthy, ersetzen Sie den Wert von detail-type durchGuardDuty Runtime Protection Healthy.

{ "version": "0", "id": "event ID", "detail-type": "GuardDuty Runtime Protection Unhealthy", "source": "aws.guardduty", "account": "AWS-Konto ID", "time": "event timestamp (string)", "region": "AWS-Region", "resources": [ ], "detail": { "schemaVersion": "1.0", "resourceAccountId": "string", "currentStatus": "string", "previousStatus": "string", "resourceDetails": { "resourceType": "ECS", "ecsClusterDetails": { "clusterName":"", "fargateDetails":{ "issues":[], "managementType":"" }, "containerInstanceDetails":{ "coveredContainerInstances":int, "compatibleContainerInstances":int } } }, "issue": "string", "lastUpdatedAt": "timestamp" } }

Behebung von Problemen mit der ECS-Fargate Amazon-Laufzeitabdeckung

Wenn der Abdeckungsstatus Ihres Amazon ECS-Clusters fehlerhaft ist, können Sie den Grund in der Spalte Problem einsehen.

Die folgende Tabelle enthält die empfohlenen Schritte zur Fehlerbehebung bei Fargate-Problemen (nur Amazon ECS). Informationen zu Problemen mit der Abdeckung durch Amazon EC2-Instances finden Sie unter Behebung von Problemen mit der Amazon EC2-Laufzeitabdeckung für Amazon EC2-Instances.

Art des Problems Zusatzinformation Empfohlene Schritte zur Fehlerbehebung

Der Agent meldet sich nicht

Der Agent meldet sich nicht für Aufgaben in TaskDefinition - 'TASK_DEFINITION'

Stellen Sie sicher, dass der VPC-Endpunkt für die Aufgabe Ihres Amazon ECS-Clusters korrekt konfiguriert ist. Weitere Informationen finden Sie unter Validierung der VPC-Endpunktkonfiguration.

Wenn Ihre Organisation über eine Service Control Policy (SCP) verfügt, stellen Sie sicher, dass die Berechtigungsgrenze die Berechtigungen nicht einschränkt. guardduty:SendSecurityTelemetry Weitere Informationen finden Sie unter Validierung der Service Control-Richtlinie Ihres Unternehmens in einer Umgebung mit mehreren Konten.

VPC_ISSUE; for task in TaskDefinition - 'TASK_DEFINITION'

Die Details zum VPC-Problem finden Sie in den zusätzlichen Informationen.

Der Agent wurde beendet

ExitCode: EXIT_CODE für Aufgaben in TaskDefinition - 'TASK_DEFINITION'

Sehen Sie sich die Problemdetails in den zusätzlichen Informationen an.

Grund: REASON für Aufgaben in TaskDefinition - 'TASK_DEFINITION'

ExitCode: EXIT_CODE mit Grund: 'EXIT_CODE' für Aufgaben in TaskDefinition - 'TASK_DEFINITION'

Agent wurde beendet: GrundCannotPullContainerError: Der Abruf des Image-Manifests wurde erneut versucht...

In diesem Szenario kann GuardDuty das Sidecar-Container-Image möglicherweise nicht abgerufen werden. Ihre Aufgabe wird weiterhin ausgeführt, GuardDuty kann jedoch keine potenziellen Bedrohungen erkennen. Führen Sie nacheinander die folgenden Schritte zur Fehlerbehebung durch, um zu überprüfen, ob dies zur Lösung des Netzabdeckungsproblems beiträgt:

  • Berechtigungen: Stellen Sie sicher, dass Ihre Rolle zur Aufgabenausführung über die erforderlichen ECR-Berechtigungen verfügt, die unter aufgeführt sind. Berechtigungsanforderungen

  • Netzwerkkonnektivität: Stellen Sie sicher, dass Ihre Fargate-Aufgaben ECR entweder über einen öffentlichen Internetzugang oder über ordnungsgemäß konfigurierte VPC-Endpunkte erreichen können, wie unter beschrieben. Anforderungen an die Netzwerkkonnektivität

  • Konfiguration der Sicherheitsgruppe: Stellen Sie sicher, dass Ihre Sicherheitsgruppe den ausgehenden Zugriff auf die verwaltete S3-Präfixliste auf Port 443 zulässt, wie unter beschrieben. Sicherheitsgruppenkonfiguration

  • Führen Sie das AWSSupport-TroubleshootECSTaskFailedToStart Runbook in der Region Ihres Clusters aus, um bestimmte Probleme zu identifizieren.

  • In den Aufgabenprotokollen finden Sie Fehlermeldungen. Informationen dazu finden Sie unter Anzeigen von Amazon ECS-Container-Agent-Protokollen im Amazon Elastic Container Service Developer Guide.

    Informationen zu häufigen Fehlern und zur Problembehandlung finden Sie unter Amazon ECS-Fehlerbehebung im Amazon Elastic Container Service Developer Guide.

Diese drei Komponenten (Berechtigungen, Netzwerkkonnektivität und Sicherheitsgruppenkonfiguration) sind unabhängig, aber alle erforderlich, um das GuardDuty Container-Image erfolgreich von Amazon ECR herunterzuladen.

Wenn das Problem weiterhin besteht, finden Sie weitere Informationen unter. Mein AWS Step Functions Workflow schlägt unerwartet fehl

Die Erstellung des VPC-Endpoints ist fehlgeschlagen

Für die Aktivierung von privatem DNS müssen beide enableDnsSupport enableDnsHostnames VPC-Attribute auf true for vpcId (Service: EC2, Status Code:400, Request-ID:) gesetzt sein. a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Sie müssen jedoch sicherstellen, dass die folgenden VPC-Attribute auf true festgelegt sind: enableDnsSupport und enableDnsHostnames. Weitere Informationen finden Sie unter DNS-Attribute in Ihrer VPC.

Wenn Sie Amazon VPC Console unter verwenden, um die Amazon VPC https://console.aws.amazon.com/vpc/ zu erstellen, stellen Sie sicher, dass Sie sowohl DNS-Hostnamen aktivieren als auch DNS-Auflösung aktivieren auswählen. Weitere Informationen finden Sie unter VPC-Konfigurationsoptionen.

Der Agent wurde nicht bereitgestellt

Der Aufruf von SERVICE vier Aufgabe (n) in wird nicht unterstützt TaskDefinition - 'TASK_DEFINITION'

Diese Aufgabe wurde von einer aufgerufenSERVICE, die nicht unterstützt wird.

Die CPU-Architektur 'TYPE' wird für Aufgabe (n) in nicht unterstützt TaskDefinition - 'TASK_DEFINITION'

Diese Aufgabe wird auf einer nicht unterstützten CPU-Architektur ausgeführt. Hinweise zu unterstützten CPU-Architekturen finden Sie unter. Validierung der architektonischen Anforderungen

TaskExecutionRolefehlt von TaskDefinition - 'TASK_DEFINITION'

Die Rolle zur Ausführung der ECS-Aufgabe fehlt. Hinweise zur Bereitstellung der Rolle zur Aufgabenausführung und zu den erforderlichen Berechtigungen finden Sie unterVoraussetzungen für den Zugriff auf Container-Images.

Fehlende Netzwerkkonfiguration CONFIGURATION_DETAILS '' für Aufgabe (n) in TaskDefinition - 'TASK_DEFINITION'

Probleme mit der Netzwerkkonfiguration können aufgrund einer fehlenden VPC-Konfiguration oder fehlender oder leerer Subnetze auftreten.

Vergewissern Sie sich, dass Ihre Netzwerkkonfiguration korrekt ist. Weitere Informationen finden Sie unter Voraussetzungen für den Zugriff auf Container-Images.

Weitere Informationen finden Sie unter Amazon ECS-Aufgabendefinitionsparameter im Amazon Elastic Container Service Developer Guide.

Aufgaben, die gestartet wurden, als Cluster ein Ausschluss-Tag hatten, sind von der Runtime Monitoring ausgeschlossen. Betroffene Aufgaben-IDs: 'TASK_ID

Wenn Sie das vordefinierte GuardDuty Tag von GuardDutyManaged - in - true ändernfalse, GuardDuty werden die Laufzeitereignisse für diesen Amazon ECS-Cluster nicht empfangen. GuardDutyManaged

Aktualisieren Sie das Tag auf GuardDutyManaged - true und starten Sie dann die Aufgabe erneut.

Dienste, die bereitgestellt wurden, als Cluster das Ausschluss-Tag hatten, sind von der Runtime Monitoring ausgeschlossen. Betroffene Dienstnamen: '' SERVICE_NAME

Wenn Dienste mit dem Ausschluss-Tag GuardDutyManaged — bereitgestellt GuardDuty werdenfalse, erhalten sie keine Laufzeitereignisse für diesen Amazon ECS-Cluster.

Aktualisieren Sie das Tag auf GuardDutyManaged - true und stellen Sie den Service dann erneut bereit.

Aufgaben, die vor der Aktivierung der automatisierten Agentenkonfiguration gestartet wurden, werden nicht behandelt. Betroffene Aufgaben-IDs: '' TASK_ID

Wenn der Cluster eine Aufgabe enthält, die vor der Aktivierung der automatisierten Agentenkonfiguration für Amazon ECS gestartet wurde, kann diese Aufgabe nicht geschützt werden. GuardDuty Starten Sie die Aufgabe erneut, damit sie von überwacht wird. GuardDuty

Dienste, die vor der Aktivierung der automatisierten Agentenkonfiguration bereitgestellt wurden, sind nicht abgedeckt. Betroffene Dienstnamen: '' SERVICE_NAME

Wenn Services bereitgestellt werden, bevor die automatische Agentenkonfiguration für Amazon ECS aktiviert wurde, GuardDuty werden keine Laufzeitereignisse für ECS-Cluster empfangen.

Für den Service SERVICE_NAME '' ist eine neue Bereitstellung erforderlich fix/troubleshoot. Weitere Informationen finden Sie in der Dokumentation, Betroffene Dienstnamen: '' SERVICE_NAME

Ein Dienst, der vor der Aktivierung von Runtime Monitoring gestartet wurde, wird nicht unterstützt.

Sie können den Service entweder neu starten oder den Service mit der forceNewDeployment Option aktualisieren, indem Sie die Schritte unter Aktualisieren eines Amazon ECS-Service mithilfe der Konsole im Amazon Elastic Container Service Developer Guide befolgen. Alternativ können Sie auch die Schritte unter UpdateService der Amazon Elastic Container Service API-Referenz verwenden.

Aufgaben, die vor der Aktivierung von Runtime Monitoring gestartet wurden, erfordern einen Neustart. Betroffene Aufgaben-IDs: '' TASK_ID_1

In Amazon ECS sind die Aufgaben unveränderlich. Um das Laufzeitverhalten einer laufenden AWS Fargate Aufgabe zu beurteilen, stellen Sie sicher, dass Runtime Monitoring bereits aktiviert ist, und starten Sie dann die Aufgabe neu, GuardDuty um den Container-Sidecar hinzuzufügen.

Weitere

Unbekanntes Problem, für Aufgaben in TaskDefinition - 'TASK_DEFINITION'

Verwenden Sie die folgenden Fragen, um die Ursache des Problems zu ermitteln:

  • Wurde die Aufgabe gestartet, bevor Sie Runtime Monitoring aktiviert haben?

    In Amazon ECS sind die Aufgaben unveränderlich. Um das Laufzeitverhalten einer laufenden Fargate-Aufgabe zu beurteilen, stellen Sie sicher, dass Runtime Monitoring bereits aktiviert ist, und starten Sie dann die Aufgabe neu, GuardDuty um den Container-Sidecar hinzuzufügen.

  • Ist diese Aufgabe Teil einer Servicebereitstellung, die vor der Aktivierung von Runtime Monitoring gestartet wurde?

    Falls ja, können Sie den Dienst entweder neu starten oder den Dienst forceNewDeployment mithilfe der Schritte unter Dienst aktualisieren aktualisieren.

    Sie können auch UpdateService oder verwenden AWS CLI.

  • Wurde die Aufgabe gestartet, nachdem der ECS-Cluster von Runtime Monitoring ausgeschlossen wurde?

    Wenn Sie das vordefinierte GuardDuty Tag von GuardDutyManaged - true auf GuardDutyManaged - ändernfalse, GuardDuty werden die Laufzeitereignisse für den ECS-Cluster nicht empfangen.

  • Enthält Ihr Service eine Aufgabe im alten Format vontaskArn?

    GuardDuty Runtime Monitoring unterstützt die Erfassung von Aufgaben im alten Format von nichttaskArn.

    Informationen zu Amazon-Ressourcennamen (ARNs) für Amazon ECS-Ressourcen finden Sie unter Amazon-Ressourcennamen (ARNs) und IDs.