Controllare i cluster per verificare la conformità agli standard

Questa pagina mostra come eseguire automaticamente la verifica dei cluster per rilevare eventuali problemi di conformità e ricevere consigli utili per migliorare la conformità dei cluster Google Kubernetes Engine (GKE) Enterprise. I controlli di conformità sono una funzionalità della dashboard GKE Compliance. Per ulteriori informazioni, consulta Informazioni sulla dashboard Conformità GKE.

Standard di conformità supportati

Il controllo della conformità analizza i tuoi cluster per verificare la conformità ai seguenti standard e fornisce consigli per migliorare la tua posizione di conformità:

Nome

Descrizione

CIS Google Kubernetes Engine Benchmark v1.5.0

Un insieme di controlli di sicurezza consigliati per la configurazione di Google Kubernetes Engine (GKE), basato sui benchmark di Google Kubernetes Engine (GKE) del CIS v1.5.0.

Standard di sicurezza dei pod - Baseline

Un insieme di protezioni consigliate per i cluster Kubernetes, basate sui criteri Baseline degli standard di sicurezza dei pod di Kubernetes (PSS).

Standard di sicurezza dei pod - Restricted

Un insieme di protezioni consigliate per i cluster Kubernetes, basate sui criteri con restrizioni degli standard di sicurezza dei pod di Kubernetes (PSS).

L'insieme di standard predefinito include tutti e tre gli standard supportati:

  • CIS Google Kubernetes Engine Benchmark v1.5.0
  • Standard di sicurezza dei pod - Baseline
  • Standard di sicurezza dei pod - Restricted

Prezzi

La dashboard GKE Compliance è disponibile per gli utenti che hanno attivato GKE Enterprise.

Prima di iniziare

Prima di iniziare, assicurati di aver eseguito le seguenti operazioni:

Requisiti

Per ottenere le autorizzazioni necessarie per utilizzare il controllo della conformità, chiedi all'amministratore di concederti i seguenti ruoli IAM nel tuo Google Cloud progetto:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per utilizzare il controllo della conformità. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

Per utilizzare il controllo della conformità sono necessarie le seguenti autorizzazioni:

  • resourcemanager.projects.get
  • resourcemanager.projects.list
  • containersecurity.locations.list
  • containersecurity.locations.get
  • containersecurity.clusterSummaries.list
  • containersecurity.findings.list
  • container.clusters.list
  • gkehub.features.get
  • gkehub.memberships.list

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Attivare i controlli su un cluster esistente

Puoi attivare il controllo di conformità sul tuo cluster utilizzando la console Google Cloud.

  1. Vai alla pagina Conformità nella console Google Cloud.

    Vai a Conformità

  2. Nella scheda Impostazioni, fai clic su Seleziona cluster.

  3. Nella scheda Controllo disattivato, seleziona le caselle di controllo per i cluster che vuoi aggiungere.

  4. Fai clic su Attiva per attivare i controlli su questi cluster.

Esegui il deployment di un carico di lavoro di test

Esegui il deployment di un pod di esempio che viola intenzionalmente gli standard di sicurezza dei pod.

  1. Salva il seguente manifest come noncompliant-sample.yaml:

    apiVersion: v1
    kind: Pod
    metadata:
      namespace: default
      name: wp-non-compliant
      labels:
        app: wordpress
    spec:
      containers:
      - image: nginx
        name: wordpress
        securityContext:
          capabilities:
            add:
            - NET_RAW
    
  2. Applica la risorsa al cluster:

    kubectl apply -f noncompliant-sample.yaml
    

Se vuoi provare altre violazioni, modifica noncompliant-sample.yaml con una configurazione diversa e non conforme.

Visualizzare e risolvere i problemi di conformità

Il controllo iniziale può richiedere fino a 30 minuti per restituire i risultati. Puoi visualizzare i risultati nella pagina Conformità o come voci nei log del cluster.

Visualizza risultati

Per visualizzare una panoramica dei problemi di conformità nei cluster del progetto:

  1. Vai alla pagina Conformità nella console Google Cloud.

    Vai a Conformità

  2. Fai clic sulla scheda Problemi.

  3. Nel riquadro Filtra problemi, nella sezione Standard, seleziona lo standard per il quale vuoi visualizzare i dettagli.

Visualizzare i dettagli e i consigli relativi allo standard

Per visualizzare informazioni dettagliate su uno standard specifico, espandi la sezione dello standard finché non vedi il link alla descrizione, quindi fai clic sulla descrizione dello standard per aprire il riquadro Limitazione di conformità.

La scheda Dettagli mostra le seguenti informazioni:

  • Descrizione: una descrizione dello standard.
  • Azione consigliata: una panoramica delle azioni che puoi intraprendere per risolvere il problema di conformità.

La scheda Risorse interessate elenca le risorse interessate dallo standard.

Visualizza i log relativi ai problemi rilevati

GKE aggiunge voci al bucket dei log _Default in Logging per ogni problema rilevato. Questi log vengono conservati solo per un periodo specifico. Per maggiori dettagli, consulta Periodi di conservazione dei log.

  1. Nella console Google Cloud, vai a Esplora log:

    Vai a Esplora log
  2. Nel campo Query, specifica la seguente query:

    resource.type="k8s_cluster"
    jsonPayload.@type="type.googleapis.com/cloud.kubernetes.security.containersecurity_logging.Finding"
    jsonPayload.type="FINDING_TYPE_MISCONFIG"
    jsonPayload.configuration.violation:*
  3. Fai clic su Esegui query.

Per ricevere notifiche quando GKE aggiunge nuovi risultati a Logging, configura gli avvisi basati su log per questa query. Per ulteriori informazioni, consulta Configurare gli avvisi basati su log.

Esegui la pulizia

Elimina il pod di esempio di cui hai eseguito il deployment:

kubectl delete pod wp-non-compliant

Disattivare i controlli di conformità

Puoi disattivare il controllo della conformità utilizzando la console Google Cloud.

  1. Vai alla pagina Conformità nella console Google Cloud.

    Vai a Conformità

  2. Nella scheda Impostazioni, fai clic su Seleziona cluster.

  3. Nella scheda Controllo abilitato, seleziona le caselle di controllo per i cluster che vuoi rimuovere.

  4. Fai clic su Disattiva per disattivare i controlli su questi cluster.

Limitazioni

  • I node pool Windows Server non sono supportati.
  • Il controllo della conformità non esegue la scansione dei carichi di lavoro gestiti da GKE, ad esempio i carichi di lavoro nello spazio dei nomi kube-system.
  • Il controllo della conformità è disponibile solo per i cluster con meno di 1000 nodi.

Passaggi successivi