Informazioni sull'isolamento di rete in GKE


Questa pagina spiega come funzionano l'isolamento di rete e i controlli dell'accesso per il piano di controllo e i nodi del cluster Google Kubernetes Engine (GKE). Questa pagina sostituisce la pagina che descrive il concetto di cluster privati.

Esistono due aspetti da considerare quando decidi come configurare l'isolamento di rete:

  • Accesso al control plane, che riguarda chi può accedere al control plane del cluster.
  • Networking per il cluster, che riguarda l'isolamento dei nodi.

Questa pagina mostra come controllare e personalizzare chi può accedere al piano di controllo e ai nodi del cluster (in un cluster Standard) o ai carichi di lavoro (in un cluster Autopilot). Questa personalizzazione è pertinente quando decidi la configurazione di rete per il tuo cluster. Per passare direttamente alla definizione della configurazione di rete, vedi Personalizzare l'isolamento di rete.

Best practice:

Pianifica e progetta la configurazione dell'isolamento di rete con gli architetti di rete, gli ingegneri di rete, gli amministratori di rete o un altro team della tua organizzazione responsabile della definizione, dell'implementazione e della manutenzione dell'architettura di rete.

Accesso al control plane

In questa sezione, valuterai chi può accedere al control plane.

Ogni cluster GKE ha un control plane che gestisce le richieste dell'API Kubernetes. Il control plane viene eseguito su una macchina virtuale (VM) che si trova in una rete VPC in un progetto gestito da Google. Un cluster regionale ha più repliche del control plane, ognuna delle quali viene eseguita sulla propria VM.

Il control plane ha due tipi di endpoint per l'accesso al cluster:

  • Endpoint basato sul DNS
  • Endpoint basati su IP
Best practice:

Utilizza solo l'endpoint basato su DNS per accedere al control plane per una configurazione semplificata e un livello di sicurezza flessibile e basato su criteri.

Endpoint basato sul DNS

L'endpoint basato su DNS fornisce un nome DNS univoco o un nome di dominio completo (FQDN) per ogni control plane del cluster. Questo nome DNS può essere utilizzato per accedere al control plane. Il nome DNS viene risolto in un endpoint accessibile da qualsiasi rete raggiungibile dalle API Google Cloud , incluse le reti on-premise o di altri cloud. L'abilitazione dell'endpoint basato su DNS elimina la necessità di un bastion host o di nodi proxy per accedere al control plane da altre reti VPC o da località esterne.

Per accedere all'endpoint del control plane, devi configurare ruoli e criteri IAM e token di autenticazione. Per maggiori dettagli sulle autorizzazioni esatte richieste, vedi Personalizzare l'isolamento di rete.

Oltre a token e policy IAM, puoi configurare anche i seguenti attributi di accesso:

  • Controlli basati su indirizzi IP o rete con Controlli di servizio VPC: per migliorare la sicurezza del control plane del cluster GKE, i Controlli di servizio VPC aggiungono un altro livello di sicurezza dell'accesso. Utilizza l'accesso sensibile al contesto in base ad attributi come l'origine della rete.

    Controlli di servizio VPC non supporta direttamente i cluster con indirizzi IP pubblici per il control plane. Tuttavia, i cluster GKE, inclusi i cluster privati e pubblici, ottengono la protezione diControlli di servizio VPCls quando vi accedi utilizzando l'endpoint basato su DNS.

    Configura i controlli di servizio VPC per proteggere l'endpoint basato su DNS del cluster GKE includendo container.googleapis.com e kubernetesmetadata.googleapis.com nell'elenco dei servizi con limitazioni del perimetro di servizio. L'aggiunta di queste API al perimetro di servizio attiverà VPC-SC per tutte le operazioni API GKE. Questa configurazione contribuisce a garantire che i perimetri di sicurezza definiti regolino l'accesso al control plane.

    Utilizzando sia i criteri IAM sia i Controlli di servizio VPC per proteggere l'accesso all'endpoint basato su DNS, crei un modello di sicurezza multilivello per il control plane del cluster. I Controlli di servizio VPC si integrano con i servizi Google Cloud supportati. Allinea la configurazione di sicurezza del cluster ai dati che ospiti in altri servizi Google Cloud .

  • Private Service Connect o Cloud NAT: per accedere all'endpoint basato su DNS dai client che non hanno accesso a internet pubblico. Per impostazione predefinita, l'endpoint basato su DNS è accessibile tramite le API disponibili su internet pubblico. Google CloudPer saperne di più, consulta la sezione Endpoint basato su DNS nella pagina Personalizza l'isolamento di rete.

Endpoint basati su IP

Se vuoi, puoi anche configurare l'accesso al control plane utilizzando endpoint basati su IP.

Terminologia relativa a cluster e indirizzi IP

  • Google Cloud Indirizzi IP esterni:

    • Gli indirizzi IP esterni assegnati a qualsiasi VM utilizzata da qualsiasi cliente ospitato su Google Cloud. Google Cloud possiede questi indirizzi IP. Per saperne di più, consulta Dove posso trovare gli intervalli IP di Compute Engine?

    • Indirizzi IP esterni utilizzati da prodotti Google Cloud come Cloud Run o Cloud Run Functions. Qualsiasi client ospitato su Google Cloud può istanziare questi indirizzi IP. Google Cloud possiede questi indirizzi IP.

  • Indirizzi IP riservati a Google: indirizzi IP esterni per la gestione del cluster GKE. Questi indirizzi IP includono i processi gestiti di GKE e altri servizi Google di produzione. Questi indirizzi IP sono di proprietà di Google.

  • Intervalli di indirizzi IP del cluster GKE: indirizzi IP interni assegnati al cluster che GKE utilizza per i nodi, i pod e i servizi del cluster.

  • Indirizzi IP interni: indirizzi IP della rete VPC del cluster. Questi indirizzi IP possono includere l'indirizzo IP del cluster, le reti on-premise, gli intervalli RFC 1918 o gli indirizzi IP pubblici utilizzati privatamente (PUPI) che includono intervalli non RFC 1918.

  • Endpoint esterno: l'indirizzo IP esterno che GKE assegna al control plane.

  • Endpoint interno: l'indirizzo IP interno che GKE assegna al control plane.

  • Rete VPC: una rete virtuale in cui crei subnet con intervalli di indirizzi IP specifici per i nodi e i pod del cluster.

Quando utilizzi endpoint basati su IP, hai due opzioni:

  • Esporre il control plane sia sugli endpoint esterni che su quelli interni. Ciò significa che l'endpoint esterno del control plane è accessibile da un indirizzo IP esterno e l'endpoint interno è accessibile dalla rete VPC del cluster. I nodi comunicheranno con il control plane solo sull'endpoint interno.

  • Espone il control plane solo sull'endpoint interno. Ciò significa che i client su internet non possono connettersi al cluster e il control plane è accessibile da qualsiasi indirizzo IP della rete VPC del cluster. I nodi comunicheranno con il control plane solo sull'endpoint interno.

    Questa è l'opzione più sicura quando utilizzi endpoint basati su IP, in quanto impedisce qualsiasi accesso a internet al control plane. È una buona scelta se hai carichi di lavoro che, ad esempio, richiedono un accesso controllato a causa delle normative sulla privacy e sulla sicurezza dei dati.

In entrambe le opzioni precedenti, puoi limitare gli indirizzi IP che raggiungono gli endpoint configurando le reti autorizzate. Se utilizzi endpoint basati su IP, ti consigliamo vivamente di aggiungere almeno una rete autorizzata. Le reti autorizzate concedono l'accesso al control plane a un insieme specifico di indirizzi IPv4 attendibili e forniscono protezione e ulteriori vantaggi di sicurezza per il tuo cluster GKE.

Best practice:

Abilita le reti autorizzate quando utilizzi endpoint basati su IP per proteggere il cluster GKE.

Come funzionano le reti autorizzate

Le reti autorizzate forniscono un firewall basato su IP che controlla l'accesso al control plane GKE. L'accesso al control plane dipende dagli indirizzi IP di origine. Quando abiliti le reti autorizzate, configuri gli indirizzi IP per i quali vuoi consentire l'accesso all'endpoint del control plane del cluster GKE come elenco di blocchi CIDR.

La tabella seguente mostra:

  • Gli indirizzi IP preimpostati che possono sempre accedere al control plane GKE indipendentemente dal fatto che tu abiliti le reti autorizzate.
  • Gli indirizzi IP configurabili che possono accedere al control plane quando li inserisci nella lista consentita abilitando le reti autorizzate.
Endpoint del control plane Indirizzi IP preimpostati che possono sempre accedere agli endpoint Indirizzo IP configurabile che può accedere agli endpoint dopo l'attivazione delle reti autorizzate
Endpoint esterni e interni attivati
  • Indirizzi IP riservati a Google
  • Intervalli di indirizzi IP del cluster GKE
  • Indirizzi IP esterni consentiti
  • Indirizzi IP interni consentiti
  • Google Cloud Indirizzi IP esterni
È abilitato solo l'endpoint interno
  • Indirizzi IP riservati a Google
  • Intervalli di indirizzi IP del cluster GKE
  • Indirizzi IP interni consentiti.

Con una rete autorizzata, puoi anche configurare la regione da cui un indirizzo IP interno può raggiungere l'endpoint interno del control plane. Puoi scegliere di consentire l'accesso solo dalla rete VPC del cluster o da qualsiasi regione Google Cloud in un VPC o in un ambiente on-premise.

Limitazioni dell'utilizzo di endpoint basati su IP

  • Se espandi una subnet utilizzata da un cluster con reti autorizzate, devi aggiornare la configurazione delle reti autorizzate in modo da includere l'intervallo di indirizzi IP espanso.
  • Se hai client che si connettono da reti con indirizzi IP dinamici, ad esempio dipendenti su reti domestiche, devi aggiornare spesso l'elenco delle reti autorizzate per mantenere l'accesso al cluster.
  • La disabilitazione dell'accesso all'endpoint esterno del control plane impedisce l'interazione remota con il cluster. Se devi accedere in remoto al cluster, devi utilizzare un bastion host che inoltra il traffico client al cluster. Al contrario, l'utilizzo di un endpoint basato su DNS richiede solo la configurazione delle autorizzazioni IAM.
  • Gli endpoint basati su IP non si integrano direttamente con Controlli di servizio VPC. I Controlli di servizio VPC operano a livello di perimetro di servizio per controllare l'accesso ai dati e il loro movimento all'interno di Google Cloud. Ti consigliamo di utilizzare sia un endpoint basato su DNS conControlli di servizio VPCs per una difesa di sicurezza efficace.
  • Puoi specificare fino a 100 intervalli di indirizzi IP autorizzati (inclusi indirizzi IP esterni e interni).

Accesso al networking per il cluster

Questa sezione illustra l'isolamento dei nodi all'interno di un cluster Kubernetes.

Abilita nodi privati

Impedisci ai client esterni di accedere ai nodi eseguendo il provisioning di questi nodi solo con indirizzi IP interni, rendendoli privati. I carichi di lavoro in esecuzione sui nodi senza un indirizzo IP esterno non possono raggiungere internet a meno che NAT non sia abilitato sulla rete del cluster. Puoi modificare queste impostazioni in qualsiasi momento.

Puoi abilitare i nodi privati a livello di singolo cluster o a livello di pool di nodi (per Standard) o di workload (per Autopilot). L'attivazione dei nodi privati a livello di pool di nodi o workload sostituisce qualsiasi configurazione dei nodi a livello di cluster.

Se aggiorni un pool di nodi pubblico alla modalità privata, i carichi di lavoro che richiedono l'accesso al di fuori della rete del cluster potrebbero non riuscire nei seguenti scenari:

  • Cluster in una rete VPC condiviso in cui l'accesso privato Google non è abilitato. Abilita manualmente l'accesso privato Google per assicurarti che GKE scarichi l'immagine del nodo assegnata. Per i cluster che non si trovano in una rete VPC condiviso, GKE abilita automaticamente l'accesso privato Google.

  • Carichi di lavoro che richiedono l'accesso a internet in cui Cloud NAT non è abilitato o non è definita una soluzione NAT personalizzata. Per consentire il traffico in uscita verso internet, attiva Cloud NAT o una soluzione NAT personalizzata.

Indipendentemente dal fatto che i nodi privati siano abilitati o meno, il control plane comunica comunque con tutti i nodi solo tramite indirizzi IP interni.

Vantaggi dell'isolamento di rete

Di seguito sono riportati i vantaggi dell'isolamento di rete:

  • Flessibilità:

    • I cluster hanno una configurazione unificata e flessibile. I cluster con o senza endpoint esterni condividono la stessa architettura e supportano le stesse funzionalità. Puoi proteggere l'accesso in base ai controlli e alle best practice che soddisfano le tue esigenze. Tutte le comunicazioni tra i nodi del cluster e il control plane utilizzano un indirizzo IP interno.
    • Puoi modificare le impostazioni di accesso al control plane e di configurazione dei nodi del cluster in qualsiasi momento senza dover ricreare il cluster.
    • Puoi scegliere di abilitare l'endpoint esterno del control plane se devi gestire il cluster da qualsiasi posizione con accesso a internet o da reti o dispositivi non connessi direttamente al tuo VPC. In alternativa, puoi disattivare l'endpoint esterno per una maggiore sicurezza se devi mantenere l'isolamento della rete per i carichi di lavoro sensibili. In entrambi i casi, puoi utilizzare le reti autorizzate per limitare l'accesso a intervalli IP attendibili.
  • Sicurezza:

    • Gli endpoint basati su DNS con Controlli di servizio VPC forniscono un modello di sicurezza multilivello che protegge il cluster da reti non autorizzate e da identità non autorizzate che accedono al control plane. I Controlli di servizio VPC si integrano con Cloud Audit Logs per monitorare l'accesso al control plane.
    • I nodi privati e i carichi di lavoro in esecuzione su questi nodi non sono direttamente accessibili da internet pubblico, il che riduce significativamente il potenziale di attacchi esterni al tuo cluster.
    • Puoi bloccare l'accesso al control plane da Google Cloud indirizzi IP esterni o da indirizzi IP esterni per isolare completamente il control plane del cluster e ridurre l'esposizione a potenziali minacce alla sicurezza.
  • Conformità: se lavori in un settore con normative rigorose per l'accesso e l'archiviazione dei dati, i nodi privati ti aiutano a rispettare la conformità garantendo che i dati sensibili rimangano all'interno della tua rete privata.

  • Controllo: i nodi privati ti offrono un controllo granulare sul flusso di traffico in entrata e in uscita dal cluster. Puoi configurare regole firewall e criteri di rete per consentire solo la comunicazione autorizzata. Se operi in ambienti multi-cloud, i nodi privati possono aiutarti a stabilire una comunicazione sicura e controllata tra i diversi ambienti.

  • Costo: se abiliti i nodi privati, puoi ridurre i costi per i nodi che non richiedono un indirizzo IP esterno per accedere ai servizi pubblici su internet.

Passaggi successivi