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à.
Best practice per la sicurezza di rete per Amazon ECS
La sicurezza di rete è un argomento ampio che comprende diversi argomenti secondari. Queste includono segmentazione e isolamento della rete encryption-in-transit, firewall, routing del traffico e osservabilità.
Crittografia in transito
La crittografia del traffico di rete impedisce agli utenti non autorizzati di intercettare e leggere i dati trasmessi attraverso una rete. Con AmazonECS, la crittografia di rete può essere implementata in uno dei seguenti modi.
-
Uso delle istanze Nitro:
Per impostazione predefinita, il traffico viene crittografato in automatico tra i seguenti tipi di istanza Nitro: C5n, G4, I3en, M5dn, M5n, P3dn, R5dn e R5n. Il traffico non viene crittografato se instradato attraverso un gateway di transito, un sistema di bilanciamento del carico o un intermediario simile.
-
Utilizzo dell'indicazione del nome del server (SNI) con un Application Load Balancer:
Application Load Balancer (ALB) e Network Load Balancer () supportano l'indicazione del nome del server NLB (). SNI UtilizzandoSNI, è possibile inserire più applicazioni sicure dietro un singolo listener. Per questo, ognuno ha il proprio TLS certificato. Si consiglia di fornire i certificati per il sistema di bilanciamento del carico utilizzando AWS Certificate Manager (ACM) e quindi aggiungerli all'elenco dei certificati del listener. Il AWS load balancer utilizza un algoritmo di selezione intelligente dei certificati con. SNI Se l'hostname fornito da un client corrisponde a un singolo certificato nell'elenco di certificati, il sistema di bilanciamento del carico seleziona tale certificato. Se un hostname fornito da un client corrisponde a più certificati nell'elenco di certificati, il sistema di bilanciamento del carico seleziona un certificato che il client è in grado di supportare. Gli esempi includono un certificato autofirmato o un certificato generato tramite. ACM
-
End-to-end crittografia con TLS certificati:
Ciò comporta la distribuzione di un TLS certificato con l'attività. Può trattarsi o di un certificato autofirmato o di un certificato rilasciato da un'autorità di certificazione attendibile. Puoi ottenere il certificato facendo riferimento a un segreto per il certificato. Altrimenti, puoi scegliere di eseguire un contenitore che emette una Richiesta di firma del certificato (CSR) ACM e poi monta il segreto risultante su un volume condiviso.
Reti di attività
I seguenti consigli prendono in considerazione il ECS funzionamento di Amazon. Amazon ECS non utilizza una rete overlay. Le attività sono invece configurate per funzionare in diverse modalità di rete. Ad esempio, le attività configurate per l'uso della modalità bridge
acquisiscono un indirizzo IP non instradabile da una rete Docker in esecuzione su ciascun host. Le attività configurate per l'uso della modalità di rete awsvpc
acquisiscono un indirizzo IP dalla sottorete dell'host. Le attività configurate con reti host
utilizzano l'interfaccia di rete dell'host. awsvpc
è la modalità di rete preferita. Questo perché è l'unica modalità che puoi utilizzare per assegnare gruppi di sicurezza alle attività. È anche l'unica modalità disponibile per AWS Fargate le attività su AmazonECS.
Gruppi di sicurezza per le attività
Consigliamo di configurare le attività per l'uso della modalità di rete awsvpc
. Dopo aver configurato l'attività per utilizzare questa modalità, l'ECSagente Amazon effettua automaticamente il provisioning e collega all'attività un'interfaccia di rete elastica (ENI). Una volta effettuato il ENI provisioning, l'attività viene registrata in un AWS gruppo di sicurezza. Il gruppo di sicurezza agisce da firewall virtuale che puoi utilizzare per il controllo del traffico in entrata e in uscita.
AWS PrivateLink e Amazon ECS
AWS PrivateLink è una tecnologia di rete che consente di creare endpoint privati per diversi AWS servizi, tra cui AmazonECS. Gli endpoint sono necessari in ambienti sandbox in cui non sono presenti Internet Gateway (IGW) collegati ad Amazon VPC e percorsi alternativi a Internet. L'utilizzo AWS PrivateLink garantisce che le chiamate al ECS servizio Amazon rimangano all'interno di Amazon VPC e non attraversino Internet. Per istruzioni su come creare AWS PrivateLink endpoint per Amazon ECS e altri servizi correlati, consulta Amazon ECS interface Amazon VPC endpoints.
Importante
AWS Fargate le attività non richiedono un AWS PrivateLink endpoint per AmazonECS.
Amazon ECR e Amazon supportano ECS entrambi le policy relative agli endpoint. Queste politiche consentono di affinare l'accesso a un servizio. APIs Ad esempio, potresti creare una policy sugli endpoint per Amazon ECR che consenta solo il trasferimento delle immagini ai registri di determinati account. AWS Una politica come questa potrebbe essere utilizzata per impedire che i dati vengano esfiltrati attraverso le immagini dei container, pur consentendo agli utenti di inviare i dati ai registri Amazon ECR autorizzati. Per ulteriori informazioni, consulta Utilizzare le politiche degli endpoint. VPC
La seguente politica consente a tutti AWS i responsabili del tuo account di eseguire tutte le azioni solo sui tuoi ECR repository Amazon:
{ "Statement": [ { "Sid": "LimitECRAccess", "Principal": "*", "Action": "*", "Effect": "Allow", "Resource": "arn:aws:ecr:
region
:account_id
:repository/*" }, ] }
Puoi migliorare ulteriormente quest'opzione impostando una condizione che utilizzi la nuova proprietà PrincipalOrgID
. In questo modo si evita l'invio e l'estrazione di immagini da parte di un IAM principale che non fa parte del tuo. AWS Organizations Per ulteriori informazioni, consulta aws: PrincipalOrg ID.
Consigliamo di applicare la medesima policy sia agli endpoint com.amazonaws.
che agli endpoint region
.ecr.dkrcom.amazonaws.
.region
.ecr.api
Impostazioni dell'agente Container
Il file di configurazione di Amazon ECS Container Agent include diverse variabili di ambiente relative alla sicurezza della rete. ECS_AWSVPC_BLOCK_IMDS
e ECS_ENABLE_TASK_IAM_ROLE_NETWORK_HOST
vengono utilizzati per bloccare l'accesso di un'attività ai EC2 metadati di Amazon. HTTP_PROXY
viene utilizzato per configurare l'agente in modo che effettui il routing attraverso un HTTP proxy per la connessione a Internet. Per istruzioni sulla configurazione dell'agente e del runtime Docker per il routing attraverso un proxy, vedere Configurazione HTTPproxy.
Importante
Queste impostazioni non sono disponibili quando utilizzi AWS Fargate.
Consigli sulla sicurezza della rete
Ti consigliamo di fare quanto segue durante la configurazione di AmazonVPC, i sistemi di bilanciamento del carico e la rete.
Usa la crittografia di rete, ove applicabile, con Amazon ECS
È consigliabile utilizzare la crittografia di rete laddove applicabile. Alcuni programmi di conformità, ad esempio PCIDSS, richiedono la crittografia dei dati in transito se i dati contengono dati del titolare della carta. Se il tuo carico di lavoro presenta requisiti simili, configura la crittografia di rete.
I browser moderni avvisano gli utenti quando si connettono a siti non sicuri. Se il tuo servizio è gestito da un sistema di bilanciamento del carico pubblico, usaTLS/SSLper crittografare il traffico dal browser del client al sistema di bilanciamento del carico e, se necessario, crittografarlo nuovamente nel backend.
Usa la modalità di awsvpc
rete e i gruppi di sicurezza per controllare il traffico tra attività e altre risorse in Amazon ECS
È consigliabile utilizzare la modalità di rete awsvpc
e i gruppi di sicurezza quando devi controllare il traffico tra le attività e tra le attività e altre risorse di rete. Se il tuo servizio è responsabile di unALB, utilizza i gruppi di sicurezza per consentire solo il traffico in entrata da altre risorse di rete che utilizzano lo stesso gruppo di sicurezza del tuo. ALB Se la tua applicazione è responsabile di unNLB, configura il gruppo di sicurezza dell'attività in modo da consentire solo il traffico in entrata dall'VPCCIDRintervallo Amazon e gli indirizzi IP statici assegnati a. NLB
I gruppi di sicurezza devono essere utilizzati anche per controllare il traffico tra le attività e altre risorse all'interno di AmazonVPC, come RDS i database Amazon.
Crea ECS cluster Amazon in Amazon separati VPCs quando il traffico di rete deve essere strettamente isolato
È necessario creare cluster in Amazon separati VPCs quando il traffico di rete deve essere strettamente isolato. Evita di eseguire carichi di lavoro con requisiti di sicurezza rigorosi su cluster con carichi di lavoro che non devono rispettare tali requisiti. Quando è obbligatorio un rigoroso isolamento della rete, crea cluster in Amazon separati VPCs ed esponi selettivamente i servizi ad altri Amazon utilizzando gli endpoint VPCs Amazon. VPC Per ulteriori informazioni, consulta la pagina relativa agli endpoint VPC.
Configura AWS PrivateLink gli endpoint quando richiesto per Amazon ECS
È necessario configurare gli AWS PrivateLink endpoint quando necessario. Se la tua politica di sicurezza ti impedisce di collegare un Internet Gateway (IGW) ad AmazonVPCs, configura gli AWS PrivateLink endpoint per Amazon ECS e altri servizi come Amazon ECR e Amazon. AWS Secrets Manager CloudWatch
Usa Amazon VPC Flow Logs per analizzare il traffico da e verso le attività a lunga durata in Amazon ECS
È necessario utilizzare Amazon VPC Flow Logs per analizzare il traffico da e verso le attività a esecuzione prolungata. Le attività che utilizzano la modalità awsvpc
di rete acquisiscono le proprie. ENI In questo modo, puoi monitorare il traffico da e verso le singole attività utilizzando Amazon VPC Flow Logs. Un recente aggiornamento di Amazon VPC Flow Logs (v3) arricchisce i log con metadati sul traffico tra cui l'ID vpc, l'ID di sottorete e l'ID dell'istanza. Questi metadati possono essere utilizzati per restringere un'indagine. Per ulteriori informazioni, consulta Amazon VPC Flow Logs.
Nota
A causa della natura temporanea dei container, i log di flusso potrebbero non essere sempre un modo efficace per analizzare i pattern di traffico tra diversi container o tra container e altre risorse di rete.