Assicurati che i sistemi di bilanciamento del AWS carico utilizzino protocolli listener sicuri (HTTPS,/) SSL TLS - Prontuario AWS

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à.

Assicurati che i sistemi di bilanciamento del AWS carico utilizzino protocolli listener sicuri (HTTPS,/) SSL TLS

Creato da Chandini Penmetsa () e Purushotham G K () AWS AWS

Ambiente: produzione

Tecnologie: sicurezza, identità, conformità

Carico di lavoro: tutti gli altri carichi di lavoro

AWSservizi: AmazonSNS; Amazon AWS CloudFormation; AWS Lambda CloudWatch; Elastic Load Balancing () ELB

Riepilogo

Sul cloud Amazon Web Services (AWS), Elastic Load Balancing distribuisce automaticamente il traffico delle applicazioni in entrata su più destinazioni, come istanze Amazon Elastic Compute Cloud (EC2Amazon), contenitori, indirizzi IP e funzioni Lambda. AWS I sistemi di bilanciamento del carico utilizzano i listener per definire le porte e i protocolli utilizzati dal sistema di bilanciamento del carico per accettare il traffico dagli utenti. Gli Application Load Balancer prendono decisioni di routing a livello di applicazione e utilizzano. HTTP/HTTPS protocols. Network Load Balancers make routing decisions at the transport layer and use the Transmission Control Protocol (TCP), Transport Layer Security (TLS), User Datagram Protcol (UDP), or TCP_UDP protocols. Classic Load Balancers make routing decisions at either the transport layer, using TCP or Secure Sockets Layer (SSL) protocols, or at the application layer, using HTTP/HTTPS

La tua organizzazione potrebbe avere un requisito di sicurezza o conformità secondo cui i sistemi di bilanciamento del carico accettano il traffico proveniente dagli utenti solo su protocolli sicuri, come o/. HTTPS SSL TLS

Questo modello fornisce un controllo di sicurezza che utilizza una EventBridge regola Amazon per monitorare le ModifyListener API chiamate CreateListener e per Application Load Balancer e Network Load Balancer e le CreateLoadBalancer API chiamate CreateLoadBalancerListeners e per i Classic Load Balancer. Se HTTPUDP,TCP/o TCP _ UDP viene utilizzato per il protocollo listener del load balancer, il controllo richiama una funzione Lambda. La funzione Lambda pubblica un messaggio su un argomento di Amazon Simple Notification Service (AmazonSNS) per inviare una notifica contenente i dettagli del load balancer.

Prerequisiti e limitazioni

Prerequisiti

  • Un account attivo AWS

  • Un indirizzo email a cui desideri ricevere la notifica di violazione

  • Un bucket Amazon Simple Storage Service (Amazon S3) per archiviare il file.zip con codice Lambda

Limitazioni

  • Questo controllo di sicurezza non verifica la presenza di sistemi di bilanciamento del carico esistenti a meno che non venga effettuato un aggiornamento dei listener di bilanciamento del carico.

  • Questo controllo di sicurezza è regionale e deve essere distribuito nelle AWS regioni che si intende monitorare.

Architettura

Stack tecnologico Target

  • Funzione Lambda

  • SNSArgomento Amazon

  • EventBridge regola

Architettura di destinazione

Una EventBridge regola che monitora le API chiamate del sistema di bilanciamento del carico e avvia una notifica Amazon. SNS

Automazione e scalabilità

  • Se utilizzi AWS Organizations, puoi utilizzare AWSCloudformation StackSets per distribuire questo modello in più account che desideri vengano monitorati.

Strumenti

  • AWS CloudFormation— AWS CloudFormation è un servizio che consente di modellare e configurare AWS le risorse utilizzando l'infrastruttura come codice.

  • Amazon EventBridge — Amazon EventBridge fornisce un flusso di dati in tempo reale dalle tue applicazioni, applicazioni SaaS (SaaS) e AWS servizi, indirizzando tali dati verso destinazioni come le funzioni Lambda.

  • AWSLambda: Lambda supporta l'esecuzione di codice senza effettuare il provisioning o la gestione di server.

  • Amazon S3 — Amazon Simple Storage Service (Amazon S3) è un servizio di storage di oggetti altamente scalabile che può essere utilizzato per un'ampia gamma di soluzioni di storage, tra cui siti Web, applicazioni mobili, backup e data lake.

  • Amazon SNS — Amazon Simple Notification Service (AmazonSNS) coordina e gestisce la consegna o l'invio di messaggi tra editori e clienti, inclusi server Web e indirizzi e-mail. I sottoscrittori ricevono tutti gli stessi messaggi pubblicati sugli argomenti ai quali sono hanno effettuato la sottoscrizione.

Best practice

Assicurati che l'SNSargomento utilizzato non sia accessibile al pubblico. Per ulteriori informazioni, consulta la AWSdocumentazione.

Epiche

AttivitàDescrizioneCompetenze richieste

Definisci il bucket S3.

Sulla console Amazon S3, scegli o crea un bucket S3 con un nome univoco che non contenga barre iniziali. Il nome di un bucket S3 è unico a livello globale e lo spazio dei nomi è condiviso da tutti gli account. AWS Il bucket S3 deve trovarsi nella stessa regione del sistema di bilanciamento del carico che viene valutato.

Architetto del cloud

Carica il codice Lambda nel bucket S3.

Carica il file.zip con codice Lambda fornito nella sezione «Allegati» nel bucket S3 definito.

Architetto del cloud

Implementa il AWS CloudFormation modello.

Sulla AWS CloudFormation console, nella stessa AWS regione del bucket S3, distribuisci il modello fornito nella sezione «Allegati». Nella prossima epopea, fornisci i valori per i parametri.

Architetto del cloud
AttivitàDescrizioneCompetenze richieste

Assegna un nome al bucket S3.

Inserisci il nome del bucket S3 che hai creato nella prima epic.

Architetto del cloud

Fornisci il prefisso Amazon S3.

Fornisci la posizione del file.zip del codice Lambda nel tuo bucket S3, senza barre iniziali (ad esempio,). <directory>/<file-name>.zip

Architetto del cloud

Fornisci l'SNSargomentoARN.

Fornisci l'SNSargomento Amazon Resource Name (ARN) se desideri utilizzare un SNS argomento esistente per le notifiche di violazione. Per creare un nuovo SNS argomento, mantieni il valore as None (il valore predefinito).

Architetto del cloud

Fornisci un indirizzo email.

Fornisci un indirizzo email attivo per ricevere SNS le notifiche di Amazon.

Architetto del cloud

Definisci il livello di registrazione.

Definisci il livello e la frequenza di registrazione per la tua funzione Lambda. Infoindica messaggi informativi dettagliati sullo stato di avanzamento dell'applicazione. Errorindica eventi di errore che potrebbero comunque consentire all'applicazione di continuare a funzionare. Warningindica situazioni potenzialmente dannose.

Architetto del cloud
AttivitàDescrizioneCompetenze richieste

Eseguire il download del modello .

Scarica il CloudFormation modello fornito nella sezione Allegati.

Architetto del cloud

Creare lo stack.

Nella stessa regione del bucket S3, accedi alla console di CloudFormation servizio e distribuisci il modello scaricato. Fai riferimento all'epopea precedente per i dettagli dei parametri.

Architetto del cloud

Verifica le risorse.

Dopo aver creato completamente lo stack, vai alla scheda Risorse e verifica le risorse. Il modello creerà le seguenti risorse:

  • EventBridge regola

  • Funzione Lambda

  • Ruolo di esecuzione Lambda

  • Autorizzazione di invocazione Lambda

Architetto del cloud
AttivitàDescrizioneCompetenze richieste

Confermare la sottoscrizione.

Quando il modello viene distribuito correttamente, se è stato creato un nuovo SNS argomento, viene inviato un messaggio e-mail di sottoscrizione all'indirizzo e-mail fornito nei parametri. È necessario confermare questa sottoscrizione e-mail per ricevere le notifiche di violazione.

Architetto del cloud

Risoluzione dei problemi

ProblemaSoluzione

Creazione dello stack non riuscita. Si è verificato un errore durante GetObject. Codice di errore S3: PermanentRedirect. Messaggio di errore S3: Il bucket si trova in questa regione: xx-xxxx-1. Utilizza questa regione per riprovare la richiesta.

Assicurati che la regione del bucket S3 e la regione in cui viene distribuito lo stack siano le stesse.

Creazione dello stack non riuscita. Il parametro runtime di python3.6 non è più supportato per la creazione o l'aggiornamento di funzioni Lambda. AWS

Aggiorna il modello scaricato alla riga 186 dalla versione di Python da 3.6 a 3.9.

Risorse correlate

Allegati

Per accedere al contenuto aggiuntivo associato a questo documento, decomprimi il seguente file: attachment.zip