Mastering dei componenti di rete su AWS

Le subnet AWS sono un’importante funzionalità della piattaforma di cloud computing Amazon Web Services (AWS). Le subnet AWS consentono di suddividere una rete VPC (Virtual Private Cloud) in subnet più piccole, che possono essere usate per isolare diversi servizi e applicazioni.

In questo modo, è possibile controllare e proteggere il traffico di rete e migliorare la sicurezza complessiva del sistema Come abbiamo menzionato precedentemente nell’articolo “Cosa sono le Subnet AWS”

Le subnet pubbliche e private lavorano in sinergia all’interno di una VPC per fornire una combinazione di connettività a Internet e isolamento della rete. La corretta progettazione e configurazione di subnet pubbliche e private è fondamentale per garantire la sicurezza e il corretto funzionamento delle risorse all’interno della VPC.

In questo articolo, esamineremo come configurare  le subnet AWS, esaminando i loro componenti, le caratteristiche delle risorse abbinate e come utilizzarle correttamente.

Il nostro obiettivo sarà esaminare tutti gli oggetti presenti nella seguente immagine.

Che cosa è un subnet?

La progettazione di una rete scalabile e sicura è fondamentale per garantire le prestazioni e la protezione delle risorse all’interno della tua infrastruttura cloud. Nella Virtual Private Cloud (VPC) di Amazon Web Services (AWS), l’utilizzo di subnet pubbliche e private offre un approccio flessibile e sicuro per organizzare la tua rete

Un subnet è essenzialmente un pool di indirizzi IP (v4 e v6).

Possiamo assegnare indirizzi IP a risorse all’interno del nostro VPC. Queste risorse possono essere istanze EC2, gateway NAT, NLB, ecc.

Un subnet deve vivere all’interno di una singola zona di disponibilità.

Una regione di AWS ha più zone di disponibilità. Un VPC copre tutte le zone di disponibilità in una regione.

Una zona di disponibilità può avere più subnet.

Per i requisiti di bassa latenza, possiamo aggiungere una subnet in una zona locale dove possiamo posizionare il calcolo, lo storage e altre risorse.

A ciascuna subnet è assegnata una tabella di routing. Questa tabella è un insieme di regole che specificano le rotte consentite per il traffico in uscita. Ogni subnet può essere assegnato con una sola tabella di routing.

Un subnet può essere pubblica, privata o solo VPN. Il VPC pre-creato ( Default VPC)  contiene una subnet pubblica.

Subnet pubblica

Un subnet che può accedere a Internet è una subnet pubblica. È la subnet che ha una rotta nella tabella di routing che punta un gateway Internet. Le risorse necessarie per affrontare o ricevere il traffico Internet possono essere aggiunte a una subnet pubblica.

Subnet privata

Un subnet che non può accedere a Internet è una subnet privata. È la subnet che non ha una rotta nella tabella di routing che punta un gateway Internet. Le risorse che non sono necessarie per essere disponibili al pubblico si trovano all’interno di una subnet privata.

Subnet solo VPN

C’è anche una subnet VPN-only che è la subnet in cui il traffico viene indirizzato a una connessione VPN sito-a-sito attraverso un gateway privato virtuale (VPG). Come abbiamo menzionato precedentemente nell’articolo Come configurare un Virtual Private Gateway.

Che cosa è un Gateway?

I gateway sono necessari per condividere il traffico tra le sottoreti pubbliche e private. Un gateway collega essenzialmente un VPC ad un’altra rete. Ad esempio, se vogliamo collegare un VPC a Internet, utilizzeremo un gateway Internet. Per impostazione predefinita, il VPC di default include un gateway Internet.
Il VPC predefinito ha una subnet pubblica in ogni zona di disponibilità insieme a un gateway Internet.
Questa immagine mostra come tre subnet pubbliche all’interno di un VPC sono connessi a un gateway Internet per indirizzare il traffico su Internet.

Per accedere privatamente ai servizi AWS, possiamo utilizzare un endpoint VPC.

Un gateway di transito ruota il traffico tra i VPC e le connessioni VPC/direct connect. Si tratta di un percorso virtuale regionale che collega i VPC su AWS e le reti locali.
In sostanza, le connessioni VPC ci permettono di collegare i nostri VPC alle reti locali utilizzando AWS VPN.

Possiamo anche aprire una connessione VPN da sito a sito che consiste essenzialmente di due tunnel VPN tra un VPC e una rete locale.

Il peering VPC può anche essere utilizzato per indirizzare il traffico tra due VPC privati.

NAT Gateway

Nell’ecosistema di Amazon Web Services (AWS), il NAT Gateway è un servizio chiave che consente alle risorse all’interno di una rete privata virtuale (VPC) di comunicare con le risorse esterne a Internet, come ad esempio servizi di terze parti o risorse al di fuori della VPC stessa.

Un NAT Gateway è un dispositivo di network address translation (NAT) gestito da AWS. Funziona come un’interfaccia tra una VPC privata e Internet, consentendo il traffico bidirezionale tra le risorse all’interno della VPC e le risorse esterne a Internet. Il NAT Gateway traduce gli indirizzi IP dei pacchetti provenienti dalla VPC privata in un indirizzo IP pubblico e viceversa, consentendo così alle risorse all’interno della VPC di comunicare con le risorse esterne.

Quando una risorsa all’interno della VPC privata invia una richiesta a una risorsa esterna a Internet, il traffico viene instradato al NAT Gateway associato alla VPC. Il NAT Gateway traduce l’indirizzo IP sorgente della richiesta, sostituendolo con il proprio indirizzo IP pubblico, prima di inviarlo al destinatario su Internet. Una volta che la risposta viene ricevuta, il NAT Gateway traduce nuovamente l’indirizzo IP destinazione con l’indirizzo IP privato della risorsa all’interno della VPC e instrada il traffico verso di essa.

Cosa sono le tabelle di routing?

Le tabelle di routing sono uno dei componenti fondamentali per la configurazione di una rete nella Virtual Private Cloud (VPC) di Amazon Web Services (AWS). Le tabelle di routing determinano come vengono instradati i pacchetti di rete tra le diverse subnet e le destinazioni esterne.

Una tabella di routing è un insieme di regole che definiscono il percorso dei pacchetti di rete all’interno di una VPC. Ogni subnet nella VPC è associata a una tabella di routing che determina come i pacchetti di rete vengono instradati tra le subnet, le risorse all’interno della VPC e le destinazioni esterne, come Internet o altre VPC.

Una tabella di routing ha una destinazione che è essenzialmente la gamma di indirizzi IP dove vogliamo che il traffico vada e una meta che è il gateway o un’interfaccia di rete o una connessione attraverso la quale inviare il traffico.

La tabella dei percorsi specificherà una gamma di destinazioni e indirizzi IP di destinazione.

Una tabella di routing può anche essere assegnata a un gateway, ad esempio Internet o Virtual Private Gateway. La tabella dei percorsi può aiutarci a controllare il traffico che entra nel VPC.

Ad esempio, potremmo avere una tabella di routing:

Questa voce consente alle istanze all’interno di un VPC di comunicare tra loro. Oppure potremmo avere una tabella di routing:

Questa voce invia tutto l’altro traffico subnet a un gateway NAT con l’ID specificato.

Come monitorare il VPC?

Il monitoraggio della Virtual Private Cloud (VPC) , Come abbiamo menzionato precedentemente nell’articolo Virtual Private Cloud,  è una parte essenziale dell’operatività delle infrastrutture su Amazon Web Services (AWS).

Una VPC ben monitorata offre una visibilità completa sulle risorse di rete, le prestazioni e la sicurezza, consentendo agli amministratori di sistema di rilevare tempestivamente eventuali problemi e prendere provvedimenti.

Strumenti di monitoraggio della VPC su AWS:

  • Amazon CloudWatch: CloudWatch è un servizio di monitoraggio e gestione dei log di AWS. Consente di raccogliere e visualizzare metriche dettagliate sulla VPC, come il traffico di rete, l’utilizzo delle risorse, i contatori di pacchetti e altro ancora. CloudWatch consente inoltre di impostare allarmi per monitorare le soglie di prestazione e ricevere notifiche in caso di superamento di tali soglie.
  • VPC Flow Logs: I VPC Flow Logs sono un meccanismo di logging che cattura informazioni dettagliate sul traffico di rete all’interno della VPC. Puoi abilitare i VPC Flow Logs per monitorare il traffico in ingresso e in uscita, registrando gli indirizzi IP sorgente e destinazione, le porte utilizzate, il protocollo e altre informazioni pertinenti. I VPC Flow Logs possono essere inviati a CloudWatch Logs per analisi e archiviazione.
  • AWS Config: AWS Config monitora lo stato delle risorse AWS nel tempo, consentendo di tenere traccia delle modifiche apportate alla VPC e ai suoi componenti. Puoi utilizzare AWS Config per valutare la conformità alle best practice, rilevare eventuali modifiche non autorizzate e ripristinare la configurazione precedente se necessario.
  • AWS CloudTrail: CloudTrail registra tutte le azioni API effettuate nella tua VPC e offre un registro dettagliato delle attività degli utenti, consentendo di identificare potenziali minacce alla sicurezza o azioni non autorizzate. Puoi utilizzare CloudTrail per monitorare gli eventi di gestione delle risorse, le modifiche alle impostazioni di sicurezza e altro ancora.

Conclusione e considerazioni

La progettazione di una rete robusta e sicura è fondamentale per il successo delle infrastrutture cloud su Amazon Web Services (AWS). Nei precedenti paragrafi, abbiamo esaminato i componenti chiave della rete di AWS, compresi i Gateway di rete NAT, il monitoraggio della VPC e le tabelle di routing. Questi componenti sono fondamentali per creare un’infrastruttura scalabile, performante e sicura.

Il NAT Gateway svolge un ruolo cruciale nel consentire alle risorse all’interno delle subnet private di accedere a Internet in modo sicuro, senza esporre direttamente gli indirizzi IP privati. È importante configurare correttamente il NAT Gateway per garantire una connettività affidabile e una gestione efficiente del traffico di rete.

Il monitoraggio della VPC è essenziale per mantenere la visibilità sulle risorse di rete, le prestazioni e la sicurezza. Utilizzando strumenti come Amazon CloudWatch, VPC Flow Logs, AWS Config e AWS CloudTrail, è possibile raccogliere e analizzare metriche dettagliate, registrare attività di rete, monitorare le modifiche apportate alla configurazione e rilevare eventuali anomalie o minacce alla sicurezza.

Le tabelle di routing definiscono come vengono instradati i pacchetti di rete all’interno della VPC. La corretta progettazione e gestione delle tabelle di routing consentono una comunicazione efficace tra le subnet, controllano l’accesso alle risorse e creano connessioni tra VPC diverse, garantendo al contempo la sicurezza dei dati e delle risorse.

In conclusione, la progettazione e la gestione dei componenti network di AWS sono fondamentali per creare un’infrastruttura cloud solida e performante. Assicurati di considerare attentamente le tue esigenze di connettività, sicurezza e scalabilità, utilizzando le best practice e gli strumenti offerti da AWS per ottimizzare la tua rete. Con una pianificazione accurata e una corretta configurazione dei componenti network, sarai in grado di creare una VPC resiliente, sicura e pronta a supportare le esigenze della tua organizzazione.

Condividi l’articolo!!


Scopri i nostri corsi!

Formazione Cloud-Native in presenza o da remoto
Picture of Evangelista Tragni

Evangelista Tragni

VMware Instructor – AWS Instructor – Linux Foundation Instructor
Mi prefiggo di ottenere una buona reputazione professionale come formatore IT conosciuto in tutto il mondo per AWS, VMware, Kubernetes e forse anche per altri settori come Google e cosi via. Mi piace essere parte del percorso di apprendimento di ognuno dei miei studenti, pertanto cerco di lasciare un segno in ognuno di loro integrando l’esperienza del corso con le loro attivita quotidiane. Spero di vedervi presto tra i miei allievi!

Find me on Linkedin!