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à.
Implementa la soluzione Security Automations for AWS WAF utilizzando Terraform
Creato dal dott. Rahul Sharad Gaikwad (AWS) e Tamilselvan P (AWS)
aws-waf-automation-terraformArchivio di | Ambiente: PoC o pilota | Tecnologie: sicurezza, identità, conformità; infrastruttura; distribuzione dei contenuti; DevOps |
Carico di lavoro: tutti gli altri carichi di lavoro | Servizi AWS: AWS WAF |
Riepilogo
AWS WAF è un firewall per applicazioni Web che aiuta a proteggere le applicazioni dagli exploit comuni utilizzando regole personalizzabili, che definisci e distribuisci nelle liste di controllo degli accessi Web (ACL). La configurazione delle regole di AWS WAF può essere difficile, soprattutto per le organizzazioni che non dispongono di team di sicurezza dedicati. Per semplificare questo processo, Amazon Web Services (AWS) offre la soluzione Security Automations for AWS
La soluzione Security Automations for AWS WAF può essere implementata utilizzando AWS secondo le istruzioni contenute nella Security Automations for CloudFormation AWS WAF Implementation Guide. Questo modello fornisce un'opzione di implementazione alternativa per le organizzazioni che utilizzano HashiCorp Terraform come strumento preferito di infrastruttura come codice (IaC) per fornire e gestire la propria infrastruttura cloud. Quando distribuisci questa soluzione, Terraform applica automaticamente le modifiche nel cloud e distribuisce e configura le impostazioni e le funzionalità di protezione di AWS WAF.
Prerequisiti e limitazioni
Prerequisiti
Un account AWS attivo.
AWS Command Line Interface (AWS CLI) installata e configurata con le autorizzazioni necessarie. Per ulteriori informazioni, consulta Getting started (documentazione AWS CLI).
Terraform installato e configurato. Per ulteriori informazioni, consulta Install Terraform (documentazione
Terraform).
Versioni del prodotto
AWS CLI versione 2.4.25 o successiva
Terraform versione 1.1.9 o successiva
Architettura
Architettura Target
Questo modello implementa la soluzione Security Automations for AWS WAF. Per ulteriori informazioni sull'architettura di destinazione, consulta la panoramica dell'architettura nella Guida all'implementazione di Security Automations for AWS WAF. Per ulteriori informazioni sulle automazioni AWS Lambda in questa distribuzione, l'Application log parser, il parser di log AWS WAF, il parser di elenchi IP e il gestore di accesso, consulta i dettagli dei componenti nella Security Automations for AWS WAF Implementation Guide.
Distribuzione di Terraform
Quando corriterraform apply
, Terraform esegue le seguenti operazioni:
Terraform crea ruoli IAM e funzioni Lambda in base agli input del file testing.tfvars.
Terraform crea regole ACL e set IP AWS WAF in base agli input del file testing.tfvars.
Terraform crea i bucket Amazon Simple Storage Service (Amazon S3), le regole Amazon EventBridge , le tabelle del database AWS Glue e i gruppi di lavoro Amazon Athena in base agli input del file testing.tfvars.
Terraform implementa lo CloudFormation stack AWS per fornire le risorse personalizzate.
Terraform crea le risorse Amazon API Gateway in base agli input forniti dal file testing.tfvars.
Automazione e scalabilità
Puoi utilizzare questo modello per creare regole AWS WAF per più account AWS e regioni AWS per distribuire la soluzione Security Automations for AWS WAF in tutto il tuo ambiente cloud AWS.
Strumenti
Servizi AWS
AWS Command Line Interface (AWS CLI) è uno strumento open source che ti aiuta a interagire con i servizi AWS tramite comandi nella tua shell a riga di comando.
AWS WAF è un firewall per applicazioni Web che ti aiuta a monitorare le richieste HTTP e HTTPS che vengono inoltrate alle risorse delle tue applicazioni Web protette.
Altri servizi
Git
è un sistema di controllo delle versioni distribuito e open source. HashiCorp Terraform
è un'applicazione di interfaccia a riga di comando che consente di utilizzare il codice per fornire e gestire l'infrastruttura e le risorse cloud.
Archivio di codice
Il codice per questo modello è disponibile nel repository GitHub AWS WAF Automation Using Terraform
Best practice
Inserisci i file statici in bucket S3 separati.
Evita le variabili di codifica rigida.
Limita l'uso di script personalizzati.
Adotta una convenzione di denominazione.
Epiche
Attività | Descrizione | Competenze richieste |
---|---|---|
Installa Git. | Segui le istruzioni in Guida introduttiva | DevOps ingegnere |
Clonare il repository. | Sulla tua workstation locale, inserisci il seguente comando per clonare il repository di codice. Per copiare il comando completo, incluso l'URL del repository, consultate la sezione Informazioni aggiuntive di questo modello.
| DevOps ingegnere |
Aggiorna le variabili. |
| DevOps ingegnere |
Attività | Descrizione | Competenze richieste |
---|---|---|
Inizializza la configurazione Terraform. | Immettete il seguente comando per inizializzare la directory di lavoro che contiene i file di configurazione Terraform.
| DevOps ingegnere |
Visualizza l'anteprima del piano Terraform. | Inserire il seguente comando. Terraform valuta i file di configurazione per determinare lo stato di destinazione per le risorse dichiarate. Quindi confronta lo stato di destinazione con lo stato attuale e crea un piano.
| DevOps ingegnere |
Verifica il piano. | Rivedi il piano e conferma che configuri l'architettura richiesta nel tuo account AWS di destinazione. | DevOps ingegnere |
Distribuire la soluzione. |
| DevOps ingegnere |
Attività | Descrizione | Competenze richieste |
---|---|---|
Verifica le modifiche. |
| DevOps ingegnere |
(Facoltativo) Pulisci l'infrastruttura. | Se desideri rimuovere tutte le risorse e le modifiche alla configurazione apportate da questa soluzione, procedi come segue:
| DevOps ingegnere |
Risoluzione dei problemi
Problema | Soluzione |
---|---|
Errore | Se si riceve questo errore quando si esegue il |
Risorse correlate
Riferimenti AWS
Riferimenti Terraform
Informazioni aggiuntive
Il comando seguente clona il GitHub repository per questo pattern.
git clone https://github.com/aws-samples/aws-waf-automation-terraform-samples.git