

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

# Controlla automaticamente i gruppi AWS di sicurezza che consentono l'accesso da indirizzi IP pubblici
<a name="audit-security-groups-access-public-ip"></a>

*Eugene Shifer e Stephen DiCato, Amazon Web Services*

## Riepilogo
<a name="audit-security-groups-access-public-ip-summary"></a>

Come best practice in materia di sicurezza, è fondamentale ridurre al minimo l'esposizione delle AWS risorse solo a ciò che è assolutamente necessario. Ad esempio, i server Web destinati al pubblico in generale devono consentire l'accesso in entrata da Internet, ma l'accesso ad altri carichi di lavoro deve essere limitato a reti specifiche per ridurre l'esposizione non necessaria. [I gruppi di sicurezza](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-security-groups.html) in Amazon Virtual Private Cloud (Amazon VPC) sono un controllo efficace per aiutarti a limitare l'accesso alle risorse. Tuttavia, la valutazione dei gruppi di sicurezza può essere un compito complicato, specialmente nelle architetture con più account. [AWS Config regole](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) e [AWS Security Hub CSPM controlli](https://docs.aws.amazon.com/securityhub/latest/userguide/controls-view-manage.html) possono aiutarti a identificare i gruppi di sicurezza che consentono l'accesso dalla rete Internet pubblica (0.0.0.0/0) a protocolli di comunicazione di rete specifici, come Secure Shell (SSH), HTTP, HTTPS e Windows Remote Desktop Protocol (RDP). Tuttavia, queste regole e controlli non sono applicabili se i servizi vengono eseguiti su porte non standard o se l'accesso è limitato a determinati indirizzi IP pubblici. Ad esempio, ciò potrebbe verificarsi quando un servizio Web è associato alla porta TCP 8443 anziché alla porta TCP standard 443. Ciò può verificarsi anche quando gli sviluppatori hanno accesso al server dalle proprie reti domestiche, ad esempio a scopo di test.

Per risolvere questo problema, è possibile utilizzare la soluzione Infrastructure as Code (IaC) fornita in questo modello per identificare i gruppi di sicurezza che consentono l'accesso da qualsiasi indirizzo IP non privato (non conforme alla [RFC 1918](https://datatracker.ietf.org/doc/html/rfc1918)) a qualsiasi carico di lavoro dell'azienda o dell'organizzazione. Account AWS AWS Il [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)modello fornisce una AWS Config regola personalizzata, una funzione e le autorizzazioni necessarie. [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) Puoi distribuirlo come [stack](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacks.html) in un singolo account o come [stack impostato](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) nell'intera organizzazione, gestito tramite. AWS Organizations

## Prerequisiti e limitazioni
<a name="audit-security-groups-access-public-ip-prereqs"></a>

**Prerequisiti**
+ Un attivo Account AWS
+ Esperienza nell'utilizzo [GitHub](https://github.com/skills/introduction-to-github?tab=readme-ov-file)
+ Se stai distribuendo in un'unica Account AWS soluzione:
  + [Autorizzazioni](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) per creare pile CloudFormation 
  + AWS Config [configurato](https://docs.aws.amazon.com/config/latest/developerguide/getting-started.html) nell'account di destinazione
  + (Facoltativo) Security Hub CSPM [configurato](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-settingup.html#securityhub-manual-setup-overview) nell'account di destinazione
+ Se stai distribuendo in un'organizzazione: AWS 
  + [Autorizzazioni](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-iam-template.html) per creare set di stack CloudFormation 
  + [Configurazione CSPM di Security Hub con](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-settingup.html#securityhub-orgs-setup-overview) integrazione AWS Organizations 
  + AWS Config [configuralo](https://docs.aws.amazon.com/config/latest/developerguide/getting-started.html) negli account in cui stai distribuendo questa soluzione
  +  Account AWS Designare un amministratore delegato per AWS Config Sand Security Hub CSPM

**Limitazioni**
+ Se esegui la distribuzione su un account individuale che non ha il CSPM di Security Hub abilitato, puoi utilizzarlo AWS Config per valutare i risultati.
+ Se stai eseguendo la distribuzione in un'organizzazione che non dispone di un amministratore delegato per AWS Config Security Hub CSPM, devi accedere agli account dei singoli membri per visualizzare i risultati.
+ [Se lo utilizzi AWS Control Tower per gestire e governare gli account della tua organizzazione, distribuisci IaC secondo questo schema utilizzando Customizations for (cFCT). AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/cfct-overview.html) L'utilizzo della CloudFormation console comporterebbe differenze di configurazione e richiederebbe la AWS Control Tower nuova registrazione delle unità organizzative () o degli account gestiti. OUs
+ Alcuni Servizi AWS non sono disponibili in tutti. Regioni AWS Per la disponibilità per regione, vedi [Servizi AWS per regione](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/). Per endpoint specifici, consulta la pagina [Endpoint e quote del servizio](https://docs.aws.amazon.com/general/latest/gr/aws-service-information.html) e scegli il link relativo al servizio.

## Architecture
<a name="audit-security-groups-access-public-ip-architecture"></a>

**Implementazione in un individuo Account AWS**

Il seguente diagramma di architettura mostra l'implementazione delle AWS risorse all'interno di una singola unità. Account AWS Il provisioning delle risorse viene effettuato utilizzando un CloudFormation modello direttamente tramite la CloudFormation console. Se Security Hub CSPM è abilitato, è possibile visualizzare i risultati in uno AWS Config o in Security Hub CSPM. Se Security Hub CSPM non è abilitato, è possibile visualizzare i risultati solo in. AWS Config

![Distribuzione del modello IaC come CloudFormation stack in un singolo account AWS.](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/caa8013b-3578-434b-b2c0-5ca7faf45d2d/images/01318e4c-49b5-415f-ac7a-e45451c374cf.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Crei uno stack CloudFormation . Questo implementa una funzione Lambda e AWS Config una regola. Sia la regola che la funzione sono configurate con le autorizzazioni AWS Identity and Access Management (IAM) necessarie per pubblicare le valutazioni delle risorse nei AWS Config log.

1. La AWS Config regola funziona in [modalità di valutazione investigativa](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config-rules.html#aws-config-rules-evaluation-modes) e richiama la funzione Lambda ogni 24 ore.

1. La funzione Lambda valuta i gruppi di sicurezza e invia aggiornamenti a. AWS Config

1. Security Hub CSPM riceve tutti i AWS Config risultati.

1. È possibile visualizzare i risultati in Security Hub CSPM o in AWS Config, a seconda dei servizi configurati nell'account.

**Implementazione in un'organizzazione AWS **

Il diagramma seguente mostra la distribuzione del pattern su più account gestiti tramite AWS Organizations e. AWS Control Tower Il CloudFormation modello viene distribuito tramite cFCT. I risultati della valutazione sono centralizzati in Security Hub CSPM nell'account amministratore delegato. La sezione del diagramma relativa al AWS CodePipeline flusso di lavoro mostra i passaggi di base che si verificano durante l'implementazione di cFCT.

![Distribuzione del modello IaC come set di CloudFormation stack in un'organizzazione AWS.](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/caa8013b-3578-434b-b2c0-5ca7faf45d2d/images/f4500347-a481-4cd3-ba14-25a034af7531.png)


Il diagramma mostra il flusso di lavoro seguente:

1. Nell'account di gestione, carichi un file compresso (ZIP) del modello IaC in un bucket Amazon Simple Storage Service (Amazon S3) distribuito da cFCT.

1. La pipeline cFct decomprime il file, esegue i controlli [cfn-nag](https://github.com/stelligent/cfn_nag) () e distribuisce il modello come set di stack. GitHub CloudFormation 

1. A seconda della configurazione specificata nel file manifest cFCT, distribuisce gli stack in account individuali o specificati. CloudFormation StackSets OUs Questo implementa una funzione Lambda e AWS Config una regola negli account di destinazione. Sia la regola che la funzione sono configurate con le autorizzazioni IAM necessarie per pubblicare le valutazioni delle risorse nei AWS Config log.

1. La AWS Config regola funziona in [modalità di valutazione investigativa](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config-rules.html#aws-config-rules-evaluation-modes) e richiama la funzione Lambda ogni 24 ore.

1. La funzione Lambda valuta i gruppi di sicurezza e invia aggiornamenti a. AWS Config

1. AWS Config inoltra tutti i risultati a Security Hub CSPM.

1. I risultati del Security Hub CSPM vengono aggregati nell'account amministratore delegato.

1. È possibile visualizzare i risultati aggregati in Security Hub CSPM nell'account amministratore delegato.

## Tools (Strumenti)
<a name="audit-security-groups-access-public-ip-tools"></a>

**Servizi AWS**
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)ti aiuta a configurare AWS le risorse, a fornirle in modo rapido e coerente e a gestirle durante tutto il loro ciclo di vita attraverso e. Account AWS Regioni AWS
+ [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html)fornisce una visione dettagliata delle risorse presenti Account AWS e di come sono configurate. Ti aiuta a identificare in che modo le risorse sono correlate tra loro e in che modo le loro configurazioni sono cambiate nel tempo. Una AWS Config [regola](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config.html) definisce le impostazioni di configurazione ideali per una risorsa e consente di AWS Config valutare se le AWS risorse soddisfano le condizioni della regola.
+ [AWS Control Tower](https://docs.aws.amazon.com/controltower/latest/userguide/what-is-control-tower.html)ti aiuta a configurare e gestire un ambiente con AWS più account, seguendo le migliori pratiche prescrittive. [Customizations for AWS Control Tower (cFct)](https://docs.aws.amazon.com/controltower/latest/userguide/cfct-overview.html) ti aiuta a personalizzare la tua AWS Control Tower landing zone e a rimanere in linea con AWS le migliori pratiche. Le personalizzazioni di questa soluzione sono implementate tramite CloudFormation modelli e politiche di [controllo del AWS Organizations servizio](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_policies_scps.html) (). SCPs
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) è un servizio di calcolo che consente di eseguire il codice senza gestire i server o effettuarne il provisioning. Esegue il codice solo quando necessario e si ridimensiona automaticamente, quindi paghi solo per il tempo di elaborazione che utilizzi.
+ [AWS Organizations](https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html)è un servizio di gestione degli account che ti aiuta a consolidare più account Account AWS in un'organizzazione da creare e gestire centralmente.
+ [AWS Security Hub CSPM](https://docs.aws.amazon.com/securityhub/latest/userguide/what-is-securityhub.html)fornisce una visione completa dello stato di sicurezza in AWS. Inoltre, consente di verificare la conformità AWS dell'ambiente agli standard e alle best practice del settore della sicurezza.

**Altri strumenti**
+ [Python](https://www.python.org/) è un linguaggio di programmazione per computer generico.

**Archivio di codice**

Il codice di questo modello è disponibile nell'archivio GitHub [Detect vulnerable security groups](https://github.com/aws-samples/detect-public-security-groups/tree/main).

## Best practice
<a name="audit-security-groups-access-public-ip-best-practices"></a>

Ti consigliamo di attenerti alle migliori pratiche riportate nelle seguenti risorse:
+ [Best practice per le unità organizzative con AWS Organizations](https://aws.amazon.com/blogs/mt/best-practices-for-organizational-units-with-aws-organizations/) (blog AWS Cloud Operations & Migrations)
+ [Guida per la creazione di una base iniziale utilizzando AWS Control Tower on AWS](https://aws.amazon.com/solutions/guidance/establishing-an-initial-foundation-using-control-tower-on-aws/) (AWS Solutions Library)
+ [Linee guida per la creazione e la modifica AWS Control Tower delle risorse](https://docs.aws.amazon.com/controltower/latest/userguide/getting-started-guidance.html) (AWS Control Tower documentazione)
+ [Considerazioni sull'implementazione del cFCT (documentazione](https://docs.aws.amazon.com/controltower/latest/userguide/cfct-considerations.html))AWS Control Tower 
+ [Applica le autorizzazioni con privilegi minimi (](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)documentazione IAM)

## Epiche
<a name="audit-security-groups-access-public-ip-epics"></a>

### Rivedi il modello CloudFormation
<a name="review-the-cfnshort-template"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Determina la tua strategia di implementazione. | Esamina la soluzione e il codice per determinare la strategia di implementazione per il tuo AWS ambiente. Determina se stai implementando in un unico account o in un' AWS organizzazione. | Proprietario dell'app, General AWS | 
| Clonare il repository. | Inserisci il seguente comando per clonare il repository [Detect vulnerable security groups](https://github.com/aws-samples/detect-public-security-groups.git):<pre>git clone https://github.com/aws-samples/detect-public-security-groups.git</pre> | Sviluppatore di app, proprietario dell'app | 
| Convalida la versione di Python. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/audit-security-groups-access-public-ip.html) | Amministratore AWS, sviluppatore di app | 

### Implementa il modello CloudFormation
<a name="deploy-the-cfnshort-template"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Implementa il CloudFormation modello. | Implementa il CloudFormation modello nel tuo AWS ambiente. Esegui una delle seguenti operazioni:[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/audit-security-groups-access-public-ip.html) | Sviluppatore di app, amministratore AWS, General AWS | 
| Verifica la distribuzione. | Nella [CloudFormation console](https://console.aws.amazon.com/cloudformation/), verifica che lo stack o il set di stack siano stati distribuiti correttamente. | Amministratore AWS, proprietario dell'app | 

### Esamina i risultati
<a name="review-the-findings"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Visualizza i risultati delle AWS Config regole. | In Security Hub CSPM, procedi come segue per visualizzare un elenco di risultati individuali:[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/audit-security-groups-access-public-ip.html)<br />In Security Hub CSPM, procedi come segue per visualizzare un elenco di risultati totali raggruppati per: Account AWS[See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/audit-security-groups-access-public-ip.html)<br />Inoltre AWS Config, per visualizzare un elenco di risultati, segui le istruzioni in [Visualizzazione delle informazioni sulla conformità e dei risultati della valutazione](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_view-compliance.html) nella AWS Config documentazione. | Amministratore AWS, amministratore di sistema AWS, amministratore cloud | 

## risoluzione dei problemi
<a name="audit-security-groups-access-public-ip-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| La creazione o l'eliminazione CloudFormation dello stack set non riesce. | Quando AWS Control Tower viene distribuito, impone i guardrail necessari e assume il controllo degli aggregatori e delle regole. AWS Config Ciò include la prevenzione di eventuali modifiche dirette. CloudFormation Per distribuire o rimuovere correttamente questo CloudFormation modello, incluse tutte le risorse associate, è necessario utilizzare cFCT. | 
| cFct non riesce a eliminare il modello. CloudFormation  | Se il CloudFormation modello persiste anche dopo aver apportato le modifiche necessarie nel file manifesto e aver rimosso i file modello, verificate che il file manifesto contenga il `enable_stack_set_deletion` parametro e che il valore sia impostato su. `false` Per ulteriori informazioni, consulta [Eliminare uno stack set nella documentazione](https://docs.aws.amazon.com/controltower/latest/userguide/cfct-delete-stack.html) cFct. | 

## Risorse correlate
<a name="audit-security-groups-access-public-ip-resources"></a>
+ [AWS Config Regole personalizzate](https://docs.aws.amazon.com/config/latest/developerguide/evaluate-config_develop-rules.html) (documentazione)AWS Config 