View a markdown version of this page

Copertura del runtime e risoluzione dei problemi per i cluster Amazon ECS - Amazon GuardDuty

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Copertura del runtime e risoluzione dei problemi per i cluster Amazon ECS

La copertura del runtime per i cluster Amazon ECS include le attività in esecuzione su e sulle istanze dei container Amazon ECS. AWS Fargate 1

Per un cluster Amazon ECS eseguito su Fargate, la copertura del runtime viene valutata a livello di attività. La copertura del runtime dei cluster ECS include le attività di Fargate che sono state eseguite dopo aver abilitato il monitoraggio del runtime e la configurazione automatica degli agenti per Fargate (solo ECS). Per impostazione predefinita, un'attività di Fargate è immutabile. GuardDuty non sarà in grado di installare il security agent per monitorare i contenitori su attività già in esecuzione. Per includere tale attività di Fargate, è necessario interromperla e riavviarla. Assicurati di controllare se il servizio associato è supportato.

Per informazioni sul contenitore Amazon ECS, consulta Creazione https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-capacity.html della capacità.

Revisione delle statistiche di copertura

Le statistiche di copertura per le risorse Amazon ECS associate al tuo account o ai tuoi account membri sono la percentuale di cluster Amazon ECS integri su tutti i cluster Amazon ECS selezionati. Regione AWS Ciò include la copertura per i cluster Amazon ECS associati alle istanze Fargate e Amazon EC2. L'equazione seguente rappresenta questa percentuale come:

(Cluster sani) *100 clusters/All

Considerazioni

  • Le statistiche di copertura per il cluster ECS includono lo stato di copertura delle attività di Fargate o delle istanze del container ECS associate a quel cluster ECS. Lo stato di copertura delle attività di Fargate include le attività che sono in esecuzione o che hanno terminato di recente l'esecuzione.

  • Nella scheda Copertura del runtime dei cluster ECS, il campo Copertura delle istanze del contenitore indica lo stato di copertura delle istanze di container Amazon EC2 associate al cluster Amazon ECS.

    Se il tuo cluster Amazon ECS esegue solo il tipo di avvio Fargate, questo campo mostra un trattino (-) per indicare che il conteggio non è applicabile. Un Fargate-only cluster non ha istanze di container Amazon EC2 da coprire.

  • Se il cluster Amazon ECS è associato a un'istanza Amazon EC2 che non dispone di un agente di sicurezza, anche il cluster Amazon ECS avrà lo stato di copertura non integro.

    Per identificare e risolvere il problema di copertura per l'istanza Amazon EC2 associata, consulta le istanze Amazon EC2. Risoluzione dei problemi di copertura del runtime di Amazon EC2

Scegli uno dei metodi di accesso per esaminare le statistiche di copertura dei tuoi account.

Console
  • Accedi e apri la console all'indirizzo Console di gestione AWS . GuardDuty https://console.aws.amazon.com/guardduty/

  • Nel pannello di navigazione, scegli Runtime Monitoring.

  • Scegli la scheda Runtime coverage.

  • Nella scheda Copertura del runtime dei cluster ECS, puoi visualizzare le statistiche di copertura aggregate in base allo stato di copertura di ciascun cluster Amazon ECS disponibile nella tabella dell'elenco dei cluster.

    • Puoi filtrare la tabella dell'elenco dei cluster in base alle seguenti colonne:

      • ID account

      • Nome del cluster

      • Tipo di gestione dell'agente

      • Stato copertura

  • Se uno dei tuoi cluster Amazon ECS ha lo stato di copertura non integro, la colonna Problema include informazioni aggiuntive sul motivo dello stato Non integro.

    Se i cluster Amazon ECS sono associati a un'istanza Amazon EC2, accedi alla scheda di copertura del runtime dell'istanza EC2 e filtra in base al campo del nome del cluster per visualizzare il problema associato.

API/CLI
  • Esegui l'ListCoverageAPI con il tuo ID di rilevamento valido, la regione corrente e l'endpoint di servizio. Puoi filtrare e ordinare l'elenco delle istanze utilizzando questa API.

    • Puoi modificare il filter-criteria di esempio con una delle opzioni seguenti per CriterionKey:

      • ACCOUNT_ID

      • ECS_CLUSTER_NAME

      • COVERAGE_STATUS

      • MANAGEMENT_TYPE

    • Puoi modificare il AttributeName di esempio in sort-criteria con una delle opzioni seguenti:

      • ACCOUNT_ID

      • COVERAGE_STATUS

      • ISSUE

      • ECS_CLUSTER_NAME

      • UPDATED_AT

        Il campo viene aggiornato solo quando viene creata una nuova attività nel cluster Amazon ECS associato o quando viene modificato lo stato di copertura corrispondente.

    • Puoi modificare il max-results (fino a 50).

    • Per trovare le detectorId impostazioni relative al tuo account e alla regione corrente, consulta la pagina Impostazioni nella https://console.aws.amazon.com/guardduty/ console o esegui l'ListDetectorsAPI.

    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
  • Esegui l'GetCoverageStatisticsAPI per recuperare le statistiche aggregate sulla copertura in base a. statisticsType

    • Puoi modificare il statisticsType di esempio con una delle opzioni seguenti:

      • COUNT_BY_COVERAGE_STATUS— Rappresenta le statistiche di copertura per i cluster ECS aggregate per stato di copertura.

      • COUNT_BY_RESOURCE_TYPE— Statistiche sulla copertura aggregate in base al tipo di AWS risorsa nell'elenco.

      • È possibile modificare il filter-criteria di esempio nel comando. Puoi utilizzare le seguenti opzioni per CriterionKey:

        • ACCOUNT_ID

        • ECS_CLUSTER_NAME

        • COVERAGE_STATUS

        • MANAGEMENT_TYPE

        • INSTANCE_ID

    • Per trovare le informazioni detectorId relative al tuo account e alla regione corrente, consulta la pagina Impostazioni nella https://console.aws.amazon.com/guardduty/ console o esegui l'ListDetectorsAPI.

    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"}}] }'

Per ulteriori informazioni sui problemi di copertura, consultaRisoluzione dei problemi relativi alla copertura del ECS-Fargate runtime di Amazon.

Modifica dello stato della copertura con EventBridge notifiche

Lo stato di copertura del tuo cluster Amazon ECS potrebbe apparire non integro. Per sapere quando cambia lo stato della copertura, ti consigliamo di monitorarlo periodicamente e di risolvere i problemi se lo stato diventa non integro. In alternativa, puoi creare una EventBridge regola Amazon per ricevere una notifica quando lo stato della copertura cambia da Non integro a Integro o in altro modo. Per impostazione predefinita, GuardDuty lo pubblica nel EventBridge bus del tuo account.

Schema di esempio delle notifiche

EventBridge Di norma, è possibile utilizzare gli eventi di esempio e i modelli di eventi predefiniti per ricevere una notifica sullo stato della copertura. Per ulteriori informazioni sulla creazione di una EventBridge regola, consulta Create rule nella Amazon EventBridge User Guide.

Inoltre, puoi creare un pattern di eventi personalizzato utilizzando lo schema di esempio delle notifiche seguente. Assicurati di sostituire i valori per il tuo account. Per ricevere una notifica quando lo stato di copertura del tuo cluster Amazon ECS cambia da Healthy aUnhealthy, detail-type dovrebbe esserloGuardDuty Runtime Protection Unhealthy. Per ricevere una notifica quando lo stato della copertura cambia da Unhealthy aHealthy, sostituisci il valore di detail-type withGuardDuty Runtime Protection Healthy.

{ "version": "0", "id": "event ID", "detail-type": "GuardDuty Runtime Protection Unhealthy", "source": "aws.guardduty", "account": "Account AWS ID", "time": "event timestamp (string)", "region": "Regione AWS", "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" } }

Risoluzione dei problemi relativi alla copertura del ECS-Fargate runtime di Amazon

Se lo stato di copertura del tuo cluster Amazon ECS non è integro, puoi visualizzarne il motivo nella colonna Problema.

La tabella seguente fornisce i passaggi consigliati per la risoluzione dei problemi di Fargate (solo Amazon ECS). Per informazioni sui problemi di copertura delle istanze Amazon EC2, consulta Risoluzione dei problemi di copertura del runtime di Amazon EC2 le istanze Amazon EC2.

Tipo di problema Informazioni supplementari Fasi consigliate per la risoluzione dei problemi

Agente che non effettua segnalazioni

L'agente non effettua segnalazioni per le attività in TaskDefinition - 'TASK_DEFINITION'

Verifica che l'endpoint VPC per l'attività del tuo cluster Amazon ECS sia configurato correttamente. Per ulteriori informazioni, consulta Convalida della configurazione degli endpoint VPC.

Se la tua organizzazione ha una policy di controllo dei servizi (SCP), verifica che il limite delle autorizzazioni non limiti le autorizzazioni. guardduty:SendSecurityTelemetry Per ulteriori informazioni, consulta Convalida della politica di controllo dei servizi dell'organizzazione in un ambiente con più account.

VPC_ISSUE; for task in TaskDefinition - 'TASK_DEFINITION'

Visualizza i dettagli del problema VPC nelle informazioni aggiuntive.

L'agente è uscito

ExitCode: EXIT_CODE per attività in TaskDefinition - 'TASK_DEFINITION'

Visualizza i dettagli del problema nelle informazioni aggiuntive.

Motivo: REASON per le attività in TaskDefinition - 'TASK_DEFINITION'

ExitCode: EXIT_CODE con motivo: 'EXIT_CODE' per le attività in TaskDefinition - 'TASK_DEFINITION'

Agente uscito: Motivo:CannotPullContainerError: pull image manifest è stato ritentato...

In questo scenario, non GuardDuty è potenzialmente in grado di estrarre l'immagine del contenitore del sidecar. L'attività continuerà a GuardDuty essere eseguita ma non sarà in grado di rilevare potenziali minacce. Esegui i seguenti passaggi di risoluzione dei problemi uno alla volta per verificare se aiuta a risolvere il problema di copertura:

  • Autorizzazioni: assicurati che il tuo ruolo di esecuzione delle attività disponga delle autorizzazioni ECR richieste elencate in. Requisiti per le autorizzazioni

  • Connettività di rete: verifica che le tue attività Fargate possano raggiungere l'ECR tramite un accesso pubblico a Internet o endpoint VPC correttamente configurati, come descritto in. Requisiti di connettività di rete

  • Configurazione del gruppo di sicurezza: verifica che il tuo gruppo di sicurezza consenta l'accesso in uscita all'elenco dei prefissi gestiti da S3 sulla porta 443, come spiegato in. Configurazione del gruppo di sicurezza

  • Esegui il AWSSupport-TroubleshootECSTaskFailedToStart runbook nella regione del tuo cluster per identificare problemi specifici.

  • Visualizza i log delle attività per i messaggi di errore. Per informazioni su come eseguire questa operazione, consulta Visualizzazione dei log degli agenti dei container di Amazon ECS nella Amazon Elastic Container Service Developer Guide.

    Per errori e risoluzione dei problemi comuni, consulta la risoluzione dei problemi di Amazon ECS nella Amazon Elastic Container Service Developer Guide.

Questi tre componenti (autorizzazioni, connettività di rete e configurazione dei gruppi di sicurezza) sono indipendenti ma sono tutti necessari per scaricare correttamente l'immagine del GuardDuty contenitore da Amazon ECR.

Se il problema persiste, consulta. Il mio AWS Step Functions flusso di lavoro non funziona in modo imprevisto

Creazione dell'endpoint VPC non riuscita

L'attivazione del DNS privato richiede entrambi gli enableDnsSupport attributi enableDnsHostnames VPC impostati su true for vpcId (Service: EC2, Status Code:400, Request ID:). a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Assicurati che i seguenti attributi VPC siano impostati su true – enableDnsSupport e enableDnsHostnames. Per ulteriori informazioni, consulta Attributi DNS nel VPC.

Se utilizzi Amazon VPC Console all'indirizzo https://console.aws.amazon.com/vpc/ per creare Amazon VPC, assicurati di selezionare sia Abilita nomi host DNS che Abilita risoluzione DNS. Per ulteriori informazioni, consulta Opzioni di configurazione del VPC.

Agente non dotato di provisioning

Richiamo non supportato da parte di SERVICE for task in TaskDefinition - 'TASK_DEFINITION'

Questa attività è stata richiamata da un utente SERVICE che non è supportato.

Architettura della CPU 'TYPE' non supportata per le attività in TaskDefinition - 'TASK_DEFINITION'

Questa attività è in esecuzione su un'architettura CPU non supportata. Per informazioni sulle architetture CPU supportate, vedere. Convalida dei requisiti relativi all'architettura

TaskExecutionRolemancante da TaskDefinition - 'TASK_DEFINITION'

Manca il ruolo di esecuzione delle attività ECS. Per informazioni su come fornire il ruolo di esecuzione dell'attività e le autorizzazioni richieste, vedere. Prerequisiti per l'accesso alle immagini del contenitore

Configurazione di rete 'CONFIGURATION_DETAILS' mancante per le attività in TaskDefinition - 'TASK_DEFINITION'

I problemi di configurazione della rete possono presentarsi a causa della mancanza di una configurazione VPC o di sottoreti mancanti o vuote.

Verifica che la configurazione di rete sia corretta. Per ulteriori informazioni, consulta Prerequisiti per l'accesso alle immagini del contenitore.

Per ulteriori informazioni, consulta i parametri di definizione delle attività di Amazon ECS nella Amazon Elastic Container Service Developer Guide.

Le attività avviate quando i cluster avevano un tag di esclusione vengono escluse dal Runtime Monitoring. ID delle attività interessate: 'TASK_ID

Quando modifichi il GuardDuty tag predefinito da GuardDutyManaged - true a GuardDutyManaged -false, non GuardDuty riceverai gli eventi di runtime per questo cluster Amazon ECS.

Aggiorna il tag in GuardDutyManaged - true e poi riavvia l'attività.

I servizi distribuiti quando i cluster avevano un tag di esclusione vengono esclusi dal Runtime Monitoring. Nomi dei servizi interessati: '' SERVICE_NAME

Quando i servizi distribuiti con il tag di esclusione GuardDutyManaged -false, non GuardDuty riceveranno eventi di runtime per questo cluster Amazon ECS.

Aggiorna il tag in GuardDutyManaged - true e poi ridistribuisci il servizio.

Le attività avviate prima dell'attivazione della configurazione automatica degli agenti non sono coperte. ID delle attività interessate: '' TASK_ID

Quando il cluster contiene un'attività avviata prima di abilitare la configurazione automatica dell'agente per Amazon ECS, non GuardDuty sarà in grado di proteggerla. Riavvia l'attività in modo che venga monitorata da. GuardDuty

I servizi implementati prima dell'attivazione della configurazione automatica degli agenti non sono coperti. Nomi dei servizi interessati: '' SERVICE_NAME

Quando i servizi vengono distribuiti prima di abilitare la configurazione automatica degli agenti per Amazon ECS, non GuardDuty riceveranno eventi di runtime per i cluster ECS.

Il servizio 'SERVICE_NAME' richiede una nuova distribuzione per. fix/troubleshoot Consulta la documentazione, i nomi dei servizi interessati: '' SERVICE_NAME

Un servizio avviato prima dell'attivazione del Runtime Monitoring non è supportato.

Puoi riavviare il servizio o aggiornarlo con l'forceNewDeploymentopzione seguendo la procedura riportata in Aggiornamento di un servizio Amazon ECS utilizzando la console nella Amazon Elastic Container Service Developer Guide. In alternativa, puoi anche utilizzare i passaggi riportati UpdateService nella Guida di riferimento alle API di Amazon Elastic Container Service.

Le attività avviate prima di abilitare il monitoraggio del runtime richiedono un riavvio. ID delle attività interessate: '' TASK_ID_1

In Amazon ECS, le attività sono immutabili. Per valutare il comportamento in fase di esecuzione di un' AWS Fargate attività, assicurati che Runtime Monitoring sia già abilitato, quindi riavvia l'attività per GuardDuty aggiungere il sidecar del contenitore.

Altri

Problema non identificato, per le attività in TaskDefinition - 'TASK_DEFINITION'

Usa le seguenti domande per identificare la causa principale del problema:

  • L'attività è iniziata prima che tu abilitassi il monitoraggio del runtime?

    In Amazon ECS, le attività sono immutabili. Per valutare il comportamento in fase di esecuzione di un'attività di Fargate in esecuzione, assicurati che Runtime Monitoring sia già abilitato, quindi riavvia l'attività per GuardDuty aggiungere il sidecar del contenitore.

  • Questa attività fa parte di una distribuzione del servizio iniziata prima dell'abilitazione del Runtime Monitoring?

    In caso affermativo, puoi riavviare il servizio o aggiornarlo forceNewDeployment utilizzando la procedura descritta in Aggiornamento di un servizio.

    Puoi anche usare UpdateService o AWS CLI.

  • L'attività è stata avviata dopo aver escluso il cluster ECS dal Runtime Monitoring?

    Quando si modifica il GuardDuty tag predefinito da GuardDutyManaged - true a GuardDutyManaged -false, non GuardDuty verranno ricevuti gli eventi di runtime per il cluster ECS.

  • Il tuo servizio contiene un'attività con un vecchio formato di? taskArn

    GuardDuty Runtime Monitoring non supporta la copertura per le attività con il vecchio formato ditaskArn.

    Per informazioni su Amazon Resource Names (ARN) per le risorse Amazon ECS, consulta Amazon Resource Names (ARN) e ID.