GCP - VPC & Networking
Networking di Calcolo GCP in breve
Le VPC contengono regole del Firewall per consentire il traffico in ingresso alla VPC. Le VPC contengono anche sottoreti dove le macchine virtuali verranno collegate. Paragonando con AWS, il Firewall sarebbe la cosa più simile a Gruppi di Sicurezza AWS e NACLs, ma in questo caso sono definiti nella VPC e non in ogni istanza.
VPC, Sottoreti e Firewall in GCP
Le istanze di calcolo sono collegate a sottoreti che fanno parte delle VPC (Virtual Private Clouds). In GCP non ci sono gruppi di sicurezza, ci sono firewall VPC con regole definite a questo livello di rete ma applicate a ciascuna istanza VM.
Sottoreti
Una VPC può avere diverse sottoreti. Ogni sottorete è in 1 regione.
Firewall
Per impostazione predefinita, ogni rete ha due regole del firewall implicite: consenti in uscita e negare in ingresso.
Quando viene creato un progetto GCP, viene creata anche una VPC chiamata default
, con le seguenti regole del firewall:
default-allow-internal: consente tutto il traffico da altre istanze sulla rete
default
default-allow-ssh: consente 22 da ovunque
default-allow-rdp: consente 3389 da ovunque
default-allow-icmp: consente il ping da ovunque
Come puoi vedere, le regole del firewall tendono ad essere più permissive per gli indirizzi IP interni. La VPC predefinita permette tutto il traffico tra le istanze di calcolo.
Possono essere create ulteriori regole del firewall per la VPC predefinita o per nuove VPC. Le regole del firewall possono essere applicate alle istanze tramite i seguenti metodi:
Tutte le istanze all'interno di una VPC
Purtroppo non esiste un semplice comando gcloud
per elencare tutte le istanze di calcolo con porte aperte su Internet. È necessario collegare i puntini tra le regole del firewall, i tag di rete, gli account di servizio e le istanze.
Questo processo è stato automatizzato utilizzando questo script python che esporterà quanto segue:
File CSV che mostra istanza, IP pubblico, TCP consentito, UDP consentito
Scansione nmap per mirare a tutte le istanze su porte ingress consentite da Internet pubblico (0.0.0.0/0)
masscan per mirare all'intero intervallo TCP di quelle istanze che consentono TUTTE le porte TCP da Internet pubblico (0.0.0.0/0)
Politiche del Firewall Gerarchico
Le politiche del firewall gerarchico ti consentono di creare e applicare una politica del firewall coerente in tutta l'organizzazione. Puoi assegnare politiche del firewall gerarchico all'organizzazione nel suo complesso o a singole cartelle. Queste politiche contengono regole che possono esplicitamente negare o consentire connessioni.
Crei e applichi le politiche del firewall come passaggi separati. Puoi creare e applicare le politiche del firewall ai nodi dell'organizzazione o della cartella della gerarchia delle risorse. Una regola della politica del firewall può bloccare connessioni, consentire connessioni o posticipare la valutazione della regola del firewall alle regole del firewall di livello inferiore definite nelle reti VPC.
Per impostazione predefinita, tutte le regole delle politiche del firewall gerarchico si applicano a tutte le VM in tutti i progetti sotto l'organizzazione o la cartella in cui è associata la politica. Tuttavia, puoi limitare quali VM ottengono una determinata regola specificando reti di destinazione o account di servizio di destinazione.
Puoi leggere qui come creare una Politica del Firewall Gerarchico.
Valutazione delle Regole del Firewall
Org: Politiche del firewall assegnate all'Organizzazione
Cartella: Politiche del firewall assegnate alla Cartella
VPC: Regole del firewall assegnate alla VPC
Globale: Un altro tipo di regole del firewall che possono essere assegnate alle VPC
Regionale: Regole del firewall associate alla rete VPC della scheda di rete della VM e alla regione della VM.
Interconnessione delle Reti VPC
Consente di collegare due reti Virtual Private Cloud (VPC) in modo che le risorse in ciascuna rete possano comunicare tra loro. Le reti VPC interconnesse possono essere nello stesso progetto, in progetti diversi della stessa organizzazione o in progetti diversi di organizzazioni diverse.
Questi sono i permessi necessari:
compute.networks.addPeering
compute.networks.updatePeering
compute.networks.removePeering
compute.networks.listPeeringRoutes
Maggiori informazioni nella documentazione.
Riferimenti
Last updated