Questa pagina descrive come assicurarsi che VM Manager sia abilitato su tutte le istanze Compute Engine, incluse le VM Google Kubernetes Engine in un'organizzazione, una cartella o un progetto, utilizzando Organization Policy Service.
Questa guida è destinata ai team di sicurezza che vogliono assicurarsi che tutti i programmi richiesti, come gli agenti di sicurezza e monitoraggio, vengano eseguiti su tutte le istanze di un'organizzazione, una cartella o un progetto. Per applicare la configurazione solo con i criteri dell'organizzazione, utilizza questa guida. Per un approccio di configurazione come codice, utilizza Config Sync. Config Sync ti consente di configurare e controllare molti aspetti dei tuoi cluster e offre un valore aggiunto rispetto ai criteri dell'organizzazione.
Prima di leggere questa pagina, assicurati di avere familiarità con VM Manager e i vincoli di Resource Manager.
Questa guida mostra come applicare l'utilizzo di VM Manager in ogni progetto di un'organizzazione o una cartella. Questa guida non mostra come configurare e utilizzare VM Manager con le policy del sistema operativo. Per queste istruzioni, vedi Creare un'assegnazione delle policy del sistema operativo.
Informazioni su VM Manager
VM Manager è una suite di strumenti che possono gestire sistemi operativi per grandi gruppi di macchine virtuali (VM) che eseguono Windows e Linux su Compute Engine. Puoi utilizzare VM Manager per applicare le policy del sistema operativo per personalizzare i programmi eseguiti sulle VM. Ad esempio, puoi definire una policy per installare un agente su una risorsa e riutilizzare questa policy in più risorse. VM Manager è disabilitato per impostazione predefinita nei progettiGoogle Cloud .
Puoi perfezionare la posizione in cui VM Manager applica le policy utilizzando
OSPolicyAssignments
, che ti consente di limitare l'ambito delle policy del sistema operativo a VM specifiche utilizzando
i selettori. Ad esempio, tutte le VM dei nodi GKE hanno l'etichetta
goog-gke-node
, che puoi scegliere come target con un'assegnazione di policy del sistema operativo.
Criteri dell'organizzazione e VM Manager
Se la tua organizzazione Google Cloud ha più livelli di gerarchia
come cartelle e sottocartelle, l'abilitazione manuale di VM Manager in tutti
questi progetti potrebbe causare un sovraccarico di gestione non necessario. Puoi
richiedere che tutti i progetti nelle cartelle o in un'organizzazione abilitino
VM Manager su tutte le VM utilizzando il servizio Organization Policy con il
vincolo constraints/compute.requireOsConfig
. Alcuni vantaggi dell'applicazione di VM Manager utilizzando una policy dell'organizzazione includono:
- Tutti i nuovi progetti aggiungono l'etichetta dei metadati
enable-osconfig=TRUE
a ogni progetto e VM. - Se qualcuno tenta di rimuovere questa etichetta o di impostarla su un valore diverso da
true
, la modifica viene rifiutata. - Se qualcuno tenta di creare o aggiornare una VM in modo da impostare la chiave dei metadati
enable-osconfig
su un valore diverso datrue
, la modifica viene rifiutata.
Prima di iniziare
Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:
- Attiva l'API Google Kubernetes Engine. Attiva l'API Google Kubernetes Engine
- Se vuoi utilizzare Google Cloud CLI per questa attività,
installala e poi
inizializza
gcloud CLI. Se hai già installato gcloud CLI, scarica l'ultima versione
eseguendo
gcloud components update
.
- Assicurati di utilizzare già VM Manager con le policy del sistema operativo e le assegnazioni delle policy del sistema operativo per eseguire gli agenti sulle VM. Per istruzioni, vedi Crea un'assegnazione delle policy del sistema operativo.
-
Enable the Cloud Resource Manager API, OS Config API APIs.
Limitazioni
Il criterio dell'organizzazione constraints/compute.requireOsConfig
presenta le seguenti
limitazioni:
- Le risorse con violazioni preesistenti non vengono modificate dal nuovo criterio dell'organizzazione. Puoi impostare i metadati per il criterio manualmente o utilizzando
gcloud
sulle risorse esistenti. - Chiunque disponga dell'autorizzazione per modificare i metadati sulle istanze Compute Engine nel progetto può disattivare
osconfig-agent
sulla VM impostando il campo dei metadatiosconfig-disabled-features
. - Se
osconfig-agent
non è in esecuzione, la VM viene visualizzata come non conforme nella dashboard di VM Manager. Ad esempio, questo potrebbe accadere se un utente ha disattivato manualmente l'agente.
Ruoli obbligatori
Per ottenere le autorizzazioni
necessarie per gestire le policy dell'organizzazione,
chiedi all'amministratore di concederti il ruolo IAM
Amministratore delle policy dell'organizzazione (roles/orgpolicy.policyAdmin
)
nell'organizzazione.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Abilita compute.requireOsConfig in un'organizzazione
Dopo aver abilitato VM Manager e definito l'ambito di un
OSPolicyAssignment
per le tue VM, puoi assicurarti che VM Manager
sia abilitato per impostazione predefinita su tutti i nuovi progetti con la
policy dell'organizzazione constraints/compute.requireOsConfig
. La modalità di applicazione di
constraints/compute.requireOsConfig
dipende dalla versione dell'API che utilizzi.
API Organization Policy v2
Puoi applicare il vincolo constraints/compute.requireOsConfig
a una risorsaGoogle Cloud come una cartella o un'organizzazione utilizzando gcloud CLI o la console Google Cloud .
gcloud
Verifica che il vincolo
compute.requireOsConfig
non sia già applicato:gcloud org-policies describe \ constraints/compute.requireOsConfig \ --organization=ORGANIZATION_ID
Sostituisci
ORGANIZATION_ID
con il tuo ID organizzazione.Se un criterio non è impostato, questo comando restituisce un errore
NOT_FOUND
:ERROR: (gcloud.org-policies.describe) NOT_FOUND: Requested entity was not found.
Se la policy esiste, il comando restituisce la policy corrente. L'applicazione di una nuova policy sovrascrive quella esistente, se presente.
Crea un file temporaneo
/tmp/policy.yaml
per archiviare il criterio:name: organizations/ORGANIZATION_ID/policies/constraints/compute.requireOsConfig spec: rules: - enforce: true
Esegui il comando
set-policy
:gcloud org-policies set-policy /tmp/policy.yaml
Verifica che il nuovo criterio sia applicato:
gcloud org-policies describe \ constraints/compute.requireOsConfig --effective \ --organization=ORGANIZATION_ID
L'output di questo comando è simile al seguente:
name: organizations/ORGANIZATION_ID/policies/constraints/compute.requireOsConfig spec: rules: - enforce: true
console
Nella console Google Cloud , vai alla pagina Policy dell'organizzazione.
Nel selettore di progetti, seleziona il progetto, la cartella o l'organizzazione per cui vuoi modificare le policy dell'organizzazione.
Nella pagina Policy dell'organizzazione, utilizza il filtro per cercare
compute.requireOsConfig
.Fai clic sul nome della norma per aprire la pagina Dettagli norma.
Fai clic su Gestisci policy per aggiornare la policy dell'organizzazione per questa risorsa.
Nella pagina Modifica policy, seleziona Esegui override della policy dell'unità organizzativa principale.
Seleziona Aggiungi una regola.
In Applicazione, attiva l'applicazione di questa policy dell'organizzazione.
Per applicare la policy, fai clic su Imposta policy.
API Resource Manager v1
Verifica che il vincolo
compute.requireOsConfig
non sia già applicato:gcloud resource-manager org-policies describe constraints/compute.requireOsConfig \ --organization ORGANIZATION_ID
Sostituisci
ORGANIZATION_ID
con il tuo ID organizzazione.Se non è impostata una policy, questo comando restituisce una policy incompleta, come il seguente esempio:
constraint: "constraints/compute.requireOsConfig" etag: BwVJi0OOESU=
Se la policy esiste, il comando restituisce la policy corrente. L'applicazione di una nuova policy sovrascrive quella esistente, se presente.
Imposta la policy da applicare all'organizzazione:
gcloud resource-manager org-policies enable-enforce constraints/compute.requireOsConfig \ --organization ORGANIZATION_ID
L'output di questo comando è simile al seguente:
booleanPolicy: enforced: true constraint: constraints/compute.requireOsConfig etag: BwVJitxdiwY=
Verifica che il nuovo criterio sia applicato:
gcloud resource-manager org-policies describe constraints/compute.requireOsConfig \ --effective \ --organization ORGANIZATION_ID
L'output di questo comando è simile al seguente:
booleanPolicy: enforced: true constraint: constraints/compute.requireOsConfig
L'applicazione completa delle modifiche alle norme dell'organizzazione può richiedere fino a 15 minuti.
Per ulteriori informazioni su altre norme che puoi applicare o su come modificare o eliminare le norme, consulta la documentazione di Resource Manager.
Passaggi successivi
Scopri di più sui log di controllo di GKE.