AWS - VPC & Networking Basic Information

Supporta HackTricks

AWS Networking in a Nutshell

Un VPC contiene un network CIDR come 10.0.0.0/16 (con la sua tabella di routing e network ACL).

Questa rete VPC è divisa in sottoreti, quindi una sottorete è direttamente relazionata con il VPC, tabella di routing e network ACL.

Poi, le Network Interface collegate ai servizi (come le istanze EC2) sono connesse alle sottoreti con security group(s).

Pertanto, un security group limiterà le porte esposte delle interfacce di rete che lo utilizzano, indipendentemente dalla sottorete. E un network ACL limiterà le porte esposte all'intera rete.

Inoltre, per accedere a Internet, ci sono alcune configurazioni interessanti da controllare:

  • Una sottorete può assegnare automaticamente indirizzi IPv4 pubblici

  • Un'istanza creata nella rete che assegna automaticamente indirizzi IPv4 può ottenerne uno

  • Un Internet gateway deve essere collegato al VPC

  • Potresti anche usare Egress-only internet gateways

  • Potresti anche avere un NAT gateway in una sottorete privata così è possibile connettersi a servizi esterni da quella sottorete privata, ma non è possibile raggiungerli dall'esterno.

  • Il NAT gateway può essere pubblico (accesso a internet) o privato (accesso ad altri VPC)

VPC

Amazon Virtual Private Cloud (Amazon VPC) ti consente di lanciare risorse AWS in una rete virtuale che hai definito. Questa rete virtuale avrà diverse sottoreti, Internet Gateways per accedere a Internet, ACL, Security groups, IP...

Subnets

Le sottoreti aiutano a imporre un livello maggiore di sicurezza. Raggruppare logicamente risorse simili ti aiuta anche a mantenere una facilità di gestione della tua infrastruttura.

  • CIDR validi vanno da una netmask /16 a una netmask /28.

  • Una sottorete non può essere in diverse zone di disponibilità contemporaneamente.

  • AWS riserva i primi tre indirizzi IP host di ogni sottorete per uso interno AWS: il primo indirizzo host utilizzato è per il router VPC. Il secondo indirizzo è riservato per AWS DNS e il terzo indirizzo è riservato per usi futuri.

  • Si chiamano sottoreti pubbliche quelle che hanno accesso diretto a Internet, mentre le sottoreti private no.

Route Tables

Le tabelle di routing determinano il routing del traffico per una sottorete all'interno di un VPC. Determinano quale traffico di rete viene inoltrato a Internet o a una connessione VPN. Di solito troverai accesso a:

  • VPC locale

  • NAT

  • Internet Gateways / Egress-only Internet gateways (necessari per dare a un VPC accesso a Internet).

  • Per rendere una sottorete pubblica è necessario creare e collegare un Internet gateway al tuo VPC.

  • VPC endpoints (per accedere a S3 da reti private)

Nelle immagini seguenti puoi controllare le differenze in una rete pubblica predefinita e una privata:

ACLs

Network Access Control Lists (ACLs): Le Network ACLs sono regole firewall che controllano il traffico di rete in entrata e in uscita verso una sottorete. Possono essere utilizzate per consentire o negare il traffico a indirizzi IP specifici o intervalli.

  • È più frequente consentire/negare l'accesso utilizzando i security groups, ma questo è l'unico modo per interrompere completamente le reverse shells stabilite. Una regola modificata in un security group non interrompe le connessioni già stabilite.

  • Tuttavia, questo si applica all'intera sottorete, fai attenzione quando vieti qualcosa perché la funzionalità necessaria potrebbe essere disturbata.

Security Groups

I security groups sono un firewall virtuale che controlla il traffico di rete in entrata e in uscita verso le istanze in un VPC. Relazione 1 SG a M istanze (di solito 1 a 1). Di solito questo viene utilizzato per aprire porte pericolose nelle istanze, come la porta 22 per esempio:

Elastic IP Addresses

Un Elastic IP address è un indirizzo IPv4 statico progettato per il cloud computing dinamico. Un Elastic IP address è allocato al tuo account AWS, ed è tuo fino a quando non lo rilasci. Utilizzando un Elastic IP address, puoi mascherare il fallimento di un'istanza o di un software rimappando rapidamente l'indirizzo a un'altra istanza nel tuo account.

Connessione tra sottoreti

Per impostazione predefinita, tutte le sottoreti hanno l'assegnazione automatica degli indirizzi IP pubblici disattivata, ma può essere attivata.

Una rotta locale all'interno di una tabella di routing consente la comunicazione tra le sottoreti VPC.

Se stai collegando una sottorete con una sottorete diversa, non puoi accedere alle sottoreti collegate con l'altra sottorete, devi creare una connessione con loro direttamente. Questo vale anche per gli internet gateways. Non puoi passare attraverso una connessione di sottorete per accedere a Internet, devi assegnare l'internet gateway alla tua sottorete.

VPC Peering

Il VPC peering ti consente di collegare due o più VPC insieme, utilizzando IPV4 o IPV6, come se fossero parte della stessa rete.

Una volta stabilita la connettività peer, le risorse in un VPC possono accedere alle risorse nell'altro. La connettività tra i VPC è implementata attraverso l'infrastruttura di rete AWS esistente, quindi è altamente disponibile senza colli di bottiglia di larghezza di banda. Poiché le connessioni peer operano come se fossero parte della stessa rete, ci sono restrizioni quando si tratta di intervalli di blocchi CIDR che possono essere utilizzati. Se hai intervalli CIDR sovrapposti o duplicati per il tuo VPC, allora non sarai in grado di collegare i VPC insieme. Ogni VPC AWS comunicherà solo con il suo peer. Ad esempio, se hai una connessione peer tra VPC 1 e VPC 2, e un'altra connessione tra VPC 2 e VPC 3 come mostrato, allora VPC 1 e 2 potrebbero comunicare tra loro direttamente, così come VPC 2 e VPC 3, tuttavia, VPC 1 e VPC 3 non potrebbero. Non puoi instradare attraverso un VPC per raggiungere un altro.

VPC Flow Logs

All'interno del tuo VPC, potresti potenzialmente avere centinaia o addirittura migliaia di risorse che comunicano tra diverse sottoreti sia pubbliche che private e anche tra diversi VPC attraverso connessioni VPC peering. I VPC Flow Logs ti consentono di catturare informazioni sul traffico IP che fluisce tra le interfacce di rete delle tue risorse all'interno del tuo VPC.

A differenza dei log di accesso S3 e dei log di accesso CloudFront, i dati di log generati dai VPC Flow Logs non sono memorizzati in S3. Invece, i dati di log catturati sono inviati ai log di CloudWatch.

Limitazioni:

  • Se stai eseguendo una connessione VPC peered, allora sarai in grado di vedere solo i flow logs dei VPC peered che sono all'interno dello stesso account.

  • Se stai ancora eseguendo risorse all'interno dell'ambiente EC2-Classic, purtroppo non sei in grado di recuperare informazioni dalle loro interfacce.

  • Una volta creato un VPC Flow Log, non può essere modificato. Per alterare la configurazione del VPC Flow Log, devi eliminarlo e poi ricrearne uno nuovo.

  • Il seguente traffico non è monitorato e catturato dai log. Traffico DHCP all'interno del VPC, traffico dalle istanze destinato al server DNS Amazon.

  • Qualsiasi traffico destinato all'indirizzo IP per il router predefinito del VPC e traffico da e verso i seguenti indirizzi, 169.254.169.254 che è utilizzato per raccogliere i metadati delle istanze, e 169.254.169.123 che è utilizzato per il servizio di sincronizzazione dell'ora di Amazon.

  • Traffico relativo a una licenza di attivazione di Windows Amazon da un'istanza Windows.

  • Traffico tra un'interfaccia di bilanciamento del carico di rete e un'interfaccia di endpoint.

Per ogni interfaccia di rete che pubblica dati al gruppo di log di CloudWatch, utilizzerà un flusso di log diverso. E all'interno di ciascuno di questi flussi, ci saranno i dati degli eventi del flow log che mostrano il contenuto delle voci di log. Ciascuno di questi log cattura dati durante una finestra di circa 10-15 minuti.

VPN

Componenti di base della VPN AWS

  1. Customer Gateway:

  • Un Customer Gateway è una risorsa che crei in AWS per rappresentare il tuo lato di una connessione VPN.

  • È essenzialmente un dispositivo fisico o un'applicazione software sul tuo lato della connessione VPN Site-to-Site.

  • Fornisci informazioni di routing e l'indirizzo IP pubblico del tuo dispositivo di rete (come un router o un firewall) ad AWS per creare un Customer Gateway.

  • Serve come punto di riferimento per configurare la connessione VPN e non comporta costi aggiuntivi.

  1. Virtual Private Gateway:

  • Un Virtual Private Gateway (VPG) è il concentratore VPN sul lato Amazon della connessione VPN Site-to-Site.

  • È collegato al tuo VPC e serve come obiettivo per la tua connessione VPN.

  • VPG è il punto finale lato AWS per la connessione VPN.

  • Gestisce la comunicazione sicura tra il tuo VPC e la tua rete on-premises.

  1. Site-to-Site VPN Connection:

  • Una connessione VPN Site-to-Site collega la tua rete on-premises a un VPC tramite un tunnel VPN sicuro IPsec.

  • Questo tipo di connessione richiede un Customer Gateway e un Virtual Private Gateway.

  • È utilizzato per una comunicazione sicura, stabile e coerente tra il tuo data center o rete e il tuo ambiente AWS.

  • Tipicamente utilizzato per connessioni regolari e a lungo termine ed è fatturato in base alla quantità di dati trasferiti sulla connessione.

  1. Client VPN Endpoint:

  • Un Client VPN endpoint è una risorsa che crei in AWS per abilitare e gestire le sessioni VPN client.

  • È utilizzato per consentire ai singoli dispositivi (come laptop, smartphone, ecc.) di connettersi in modo sicuro alle risorse AWS o alla tua rete on-premises.

  • Differisce dalla VPN Site-to-Site in quanto è progettato per singoli client piuttosto che per collegare intere reti.

  • Con Client VPN, ogni dispositivo client utilizza un software client VPN per stabilire una connessione sicura.

Site-to-Site VPN

Collega la tua rete on-premises con il tuo VPC.

  • VPN connection: Una connessione sicura tra le tue apparecchiature on-premises e i tuoi VPC.

  • VPN tunnel: Un collegamento crittografato attraverso il quale i dati possono passare dalla rete del cliente a o da AWS.

Ogni connessione VPN include due tunnel VPN che puoi utilizzare simultaneamente per alta disponibilità.

  • Customer gateway: Una risorsa AWS che fornisce informazioni ad AWS sul tuo dispositivo customer gateway.

  • Customer gateway device: Un dispositivo fisico o un'applicazione software sul tuo lato della connessione VPN Site-to-Site.

  • Virtual private gateway: Il concentratore VPN sul lato Amazon della connessione VPN Site-to-Site. Utilizzi un virtual private gateway o un transit gateway come gateway per il lato Amazon della connessione VPN Site-to-Site.

  • Transit gateway: Un hub di transito che può essere utilizzato per interconnettere i tuoi VPC e le reti on-premises. Utilizzi un transit gateway o un virtual private gateway come gateway per il lato Amazon della connessione VPN Site-to-Site.

Limitazioni

  • Il traffico IPv6 non è supportato per le connessioni VPN su un virtual private gateway.

  • Una connessione VPN AWS non supporta Path MTU Discovery.

Inoltre, prendi in considerazione quanto segue quando utilizzi Site-to-Site VPN.

  • Quando colleghi i tuoi VPC a una rete on-premises comune, ti consigliamo di utilizzare blocchi CIDR non sovrapposti per le tue reti.

Client VPN

Connettiti dalla tua macchina al tuo VPC

Concetti

  • Client VPN endpoint: La risorsa che crei e configuri per abilitare e gestire le sessioni VPN client. È la risorsa in cui tutte le sessioni VPN client sono terminate.

  • Target network: Una target network è

Last updated