Gestire il logging delle regole delle policy del firewall

Questa pagina mostra come attivare e disattivare il logging per le regole dei criteri firewall gerarchici e di rete. Per istruzioni sul logging per le regole delle policy del firewall, consulta Attivare e disattivare il logging delle regole delle policy del firewall. Puoi anche scoprire come visualizzare i log generati per le regole delle policy del firewall. Per comprendere il logging delle regole delle policy del firewall, consulta Panoramica del logging delle regole delle policy del firewall.

Se abiliti il logging per una regola del criterio firewall, puoi visualizzare approfondimenti e consigli per la regola da Firewall Insights. Per saperne di più, consulta Firewall Insights nella documentazione di Network Intelligence Center.

Autorizzazioni

Per modificare le regole dei criteri firewall o accedere ai log, le entità Identity and Access Management (IAM) devono disporre di uno dei seguenti ruoli.

Attività Ruolo richiesto
Creare, eliminare o aggiornare le regole firewall Proprietario del progetto o Editor o Ruolo Security Admin (roles/compute.securityAdmin)
Visualizza i log Proprietario, editor o visualizzatore del progetto o Ruolo Visualizzatore log (roles/logging.viewer)
Per informazioni dettagliate sui ruoli e sulle autorizzazioni IAM di Logging, consulta Ruoli predefiniti.

Attivare e disattivare la registrazione delle regole delle policy del firewall

Quando crei una regola della policy del firewall, puoi abilitare il logging delle regole della policy del firewall. Per ulteriori informazioni, consulta le seguenti risorse:

Quando abiliti la registrazione, puoi specificare se includere i campi dei metadati. Se li ometti, puoi risparmiare sui costi di archiviazione. Per attivare o disattivare il logging delle regole delle policy del firewall per una regola delle policy del firewall esistente, consulta le sezioni seguenti.

Attivare la registrazione delle regole dei criteri del firewall per un criterio del firewall gerarchico

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Nel menu del selettore dei progetti, seleziona il nome dell'organizzazione in cui hai creato la policy del firewall gerarchica.

  3. Nella sezione Criteri firewall situati in questa organizzazione, fai clic sul nome del criterio firewall gerarchico.

  4. Nella colonna Log, determina se la registrazione delle regole delle policy del firewall è Disattivata o Attivata per ogni regola delle policy del firewall.

  5. Per attivare il logging per una regola di policy del firewall, fai clic sulla priorità della regola e poi su Modifica.

  6. Nella sezione Log, seleziona Attivato.

  7. Fai clic su Salva.

gcloud

Per aggiornare le regole delle policy del firewall dell'organizzazione, utilizza il comando gcloud compute firewall-policies rules update:

gcloud compute firewall-policies rules update PRIORITY \
    --firewall-policy= FIREWALL_POLICY \
    --enable-logging

Sostituisci quanto segue:

  • PRIORITY: la priorità della regola della policy firewall da aggiornare.
  • FIREWALL_POLICY: il nome della policy del firewall in cui viene aggiornata la regola.

Per saperne di più, consulta la documentazione di riferimento dell'SDK.

Terraform

Puoi utilizzare la risorsa Terraform per creare una regola della policy del firewall con il logging abilitato.

resource "google_compute_firewall_policy_rule" "primary" {
  firewall_policy = google_compute_firewall_policy.POLICY_ID
  description     = "Creates an ingress firewall policy rule with logging enabled"
  priority        = PRIORITY
  enable_logging  = true
  action          = "allow"
  direction       = "INGRESS"
  disabled        = false
  match {
    layer4_configs {
      ip_protocol = "tcp"
      ports = [8080]
    }
    layer4_configs {
      ip_protocol = "udp"
      ports = [22]
    }
    src_ip_ranges = ["SOURCE_IP_ADDRESS"]
  }
}

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

API

Attiva il logging delle regole dei criteri del firewall per una regola dei criteri del firewall gerarchici esistente.

POST https://compute.googleapis.com/compute/v1/locations/global/firewallPolicies/POLICY_ID/patchRule?priority=PRIORITY

{
  "enableLogging": true,
}

Sostituisci quanto segue:

  • POLICY_ID: l'ID della policy del firewall gerarchica in cui si trova la regola della policy del firewall.
  • PRIORITY: la priorità della regola della policy del firewall.

Per saperne di più, consulta il metodo firewallPolicies.patchRule.

Disattivare la registrazione delle regole dei criteri firewall per un criterio firewall gerarchico

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Nel menu del selettore dei progetti, seleziona il nome dell'organizzazione in cui hai creato la policy del firewall gerarchica.

  3. Nella sezione Criteri firewall situati in questa organizzazione, fai clic sul nome del criterio firewall gerarchico.

  4. Nella colonna Log, determina se la registrazione delle regole delle policy del firewall è Disattivata o Attivata per ogni regola delle policy del firewall.

  5. Per disattivare il logging per una policy del firewall, fai clic sulla priorità della regola e poi su Modifica.

  6. Nella sezione Log, seleziona Disabilitati.

  7. Fai clic su Salva.

gcloud

Per aggiornare le regole delle policy del firewall dell'organizzazione, utilizza il comando gcloud compute firewall-policies rules update:

gcloud compute firewall-policies rules update PRIORITY \
    --firewall-policy= FIREWALL_POLICY \
    --no-enable-logging

Sostituisci quanto segue:

  • PRIORITY: la priorità della regola della policy firewall da aggiornare.
  • FIREWALL_POLICY: il nome della policy del firewall in cui viene aggiornata la regola.

Per saperne di più, consulta la documentazione di riferimento dell'SDK.

API

Disattivare la registrazione delle regole dei criteri firewall per una regola dei criteri firewall gerarchici esistente

POST https://compute.googleapis.com/compute/v1/locations/global/firewallPolicies/POLICY_ID/patchRule?priority=PRIORITY

{
  "enableLogging": false,
}

Sostituisci quanto segue:

  • POLICY_ID: l'ID della policy del firewall gerarchica in cui si trova la regola della policy del firewall.
  • PRIORITY: la priorità della regola della policy del firewall.

Per saperne di più, consulta il metodo firewallPolicies.patchRule.

Attiva il logging delle regole dei criteri del firewall per una policy firewall di rete

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Nel menu del selettore dei progetti, seleziona il nome del progetto in cui hai creato la policy del firewall di rete.

  3. Nella sezione Criteri firewall di rete, fai clic sul nome del criterio firewall di rete per cui vuoi attivare la registrazione.

  4. Nella colonna Log, determina se la registrazione delle regole delle policy del firewall è Disattivata o Attivata per ogni regola delle policy del firewall.

  5. Per abilitare il logging per una regola dei criteri firewall di rete, fai clic sulla priorità della regola e poi su Modifica.

  6. Nella sezione Log, seleziona Attivato.

  7. Fai clic su Salva.

gcloud

Per aggiornare le regole delle policy del firewall di rete, utilizza il comando gcloud compute network-firewall-policies rules update:

gcloud compute network-firewall-policies rules update PRIORITY \
    --firewall-policy= FIREWALL_POLICY \
    --enable-logging

Sostituisci quanto segue:

  • PRIORITY: la priorità della regola della policy firewall da aggiornare.
  • FIREWALL_POLICY: il nome della policy del firewall di rete in cui si trova la regola della policy del firewall.

Per saperne di più, consulta la documentazione di riferimento dell'SDK.

Terraform

Puoi utilizzare la risorsa Terraform per creare una regola della policy del firewall con il logging abilitato.

resource "google_compute_firewall_policy_rule" "primary" {
  firewall_policy = google_compute_firewall_policy.POLICY_ID
  description     = "Creates an ingress firewall policy rule with logging enabled"
  priority        = PRIORITY
  enable_logging  = true
  action          = "allow"
  direction       = "INGRESS"
  disabled        = false
  match {
    layer4_configs {
      ip_protocol = "tcp"
      ports = [8080]
    }
    layer4_configs {
      ip_protocol = "udp"
      ports = [22]
    }
    src_ip_ranges = ["SOURCE_IP_ADDRESS"]
  }
}

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

API

Attiva il logging delle regole della policy del firewall per una regola della policy del firewall di rete esistente.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewallPolicies/POLICY_ID/patchRule?priority=PRIORITY

{
  "enableLogging": true,
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID del progetto in cui si trova la tua policy di rete.
  • POLICY_ID: l'ID della policy del firewall gerarchica in cui si trova la regola della policy del firewall.
  • PRIORITY: la priorità della regola della policy del firewall.

Per saperne di più, consulta il metodo networkFirewallPolicies.patchRule.

Disattiva la registrazione delle regole dei criteri firewall per un criterio firewall di rete

Console

  1. Nella console Google Cloud , vai alla pagina Policy del firewall.

    Vai a Criteri firewall

  2. Nel menu del selettore dei progetti, seleziona il nome del progetto in cui hai creato la policy del firewall di rete.

  3. Nella sezione Criteri firewall di rete, fai clic sul nome del criterio firewall di rete per cui vuoi attivare la registrazione.

  4. Nella colonna Log, determina se la registrazione delle regole delle policy del firewall è Disattivata o Attivata per ogni regola delle policy del firewall.

  5. Per disattivare il logging per una regola dei criteri firewall di rete, fai clic sulla priorità della regola e poi su Modifica.

  6. Nella sezione Log, seleziona Disabilitati.

  7. Fai clic su Salva.

gcloud

Per aggiornare le regole delle policy del firewall di rete, utilizza il comando gcloud compute network-firewall-policies rules update:

gcloud compute network-firewall-policies rules update PRIORITY \
    --firewall-policy= FIREWALL_POLICY \
    --no-enable-logging

Sostituisci quanto segue:

  • PRIORITY: la priorità della regola della policy firewall da aggiornare.
  • FIREWALL_POLICY: il nome della policy del firewall di rete in cui si trova la regola della policy del firewall.

Per saperne di più, consulta la documentazione di riferimento dell'SDK.

API

Disattivare la registrazione delle regole dei criteri firewall per una regola dei criteri firewall gerarchici esistente

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewallPolicies/POLICY_ID/patchRule?priority=PRIORITY

{
  "enableLogging": false,
}

Sostituisci quanto segue:

  • POLICY_ID: l'ID della policy del firewall gerarchica in cui si trova la regola della policy del firewall.
  • PRIORITY: la priorità della regola della policy del firewall.

Per saperne di più, consulta il metodo networkFirewallPolicies.patchRule.

Visualizza i log

I log delle regole dei criteri firewall vengono creati nel progetto che ospita la rete contenente le istanze VM e le regole firewall. Con il VPC condiviso, crei istanze VM nei progetti di servizio, ma queste istanze utilizzano una rete VPC condivisa che si trova nel progetto host. In questi scenari, il progetto host archivia i log delle regole delle policy del firewall.

Per visualizzare i log delle regole delle policy del firewall, utilizza la sezione Esplora log della console Google Cloud . Per saperne di più, vedi Visualizzare e analizzare i log.

Le seguenti query mostrano come cercare eventi firewall specifici.

Visualizzare tutti i log firewall

Per visualizzare i log delle regole delle policy del firewall, utilizza una delle seguenti opzioni.

Opzione 1

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Fai clic su Tutte le risorse.

  3. Nell'elenco Seleziona risorsa, fai clic su Subnet e poi su Applica.

  4. Fai clic su Tutti i nomi di log, quindi seleziona firewall nell'elenco.

  5. Fai clic su Applica.

Opzione 2

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Incolla quanto segue nel campo dell'editor di query.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    

    Sostituisci PROJECT_ID con l'ID progetto.

  3. Se non vedi il campo dell'editor di query, fai clic sul pulsante di attivazione/disattivazione Mostra query.

  4. Fai clic su Esegui query.

Visualizza i log per subnet specifiche

Per visualizzare i log delle regole della policy del firewall per subnet specifiche, utilizza una delle seguenti opzioni.

Opzione 1

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Fai clic su Tutte le risorse.

  3. Nell'elenco Seleziona risorsa, fai clic su Subnet.

  4. Seleziona la subnet per la quale vuoi visualizzare i log, quindi fai clic su Applica.

  5. Fai clic su Tutti i nomi di log, quindi seleziona firewall nell'elenco.

  6. Fai clic su Applica.

Opzione 2

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Incolla quanto segue nel campo dell'editor di query.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    resource.labels.subnetwork_name="SUBNET_NAME"
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • SUBNET_NAME: il nome della tua subnet
  3. Se non vedi il campo dell'editor di query, fai clic sul pulsante di attivazione/disattivazione Mostra query.

  4. Fai clic su Esegui query.

Visualizzare i log in VM specifiche

Per visualizzare i log delle regole delle policy del firewall per VM specifiche, utilizza una delle seguenti opzioni.

Opzione 1

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Fai clic su Tutte le risorse.

  3. Nell'elenco Seleziona risorsa, fai clic su Istanza VM.

  4. Seleziona l'istanza per cui vuoi visualizzare i log, quindi fai clic su Applica.

  5. Fai clic su Tutti i nomi di log, quindi seleziona firewall nell'elenco.

  6. Fai clic su Applica.

Opzione 2

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Incolla quanto segue nel campo dell'editor di query.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    jsonPayload.instance.vm_name="INSTANCE_ID"
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • INSTANCE_ID: l'ID della VM per cui vuoi visualizzare i log
  3. Se non vedi il campo dell'editor di query, fai clic sul pulsante di attivazione/disattivazione Mostra query.

  4. Fai clic su Esegui query.

Visualizzare i log per le connessioni da un paese specifico

Per visualizzare i log delle regole dei criteri firewall per un paese specifico:

  1. Nella console Google Cloud , vai alla pagina Esplora log.

    Vai a Esplora log

  2. Incolla quanto segue nel campo dell'editor di query.

    resource.type="gce_subnetwork"
    logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
    jsonPayload.remote_location.country=COUNTRY
    

    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto
    • COUNTRY: il codice ISO 3166-1 alpha-3 del paese per cui vuoi visualizzare i log
  3. Se non vedi il campo dell'editor di query, fai clic sul pulsante di attivazione/disattivazione Mostra query.

  4. Fai clic su Esegui query.

Esporta log

Per esportare i log delle regole della policy del firewall, consulta Instrada i log verso destinazioni supportate. Puoi utilizzare le query di esempio per restringere i log che esporti.

Tabella delle interazioni

  • Nel caso di comunicazione da VM a VM, i record di log potrebbero essere generati da entrambe le VM, a seconda delle rispettive regole firewall.
  • La connessione registrata include pacchetti che scorrono in entrambe le direzioni se il pacchetto iniziale è stato consentito dal firewall.
  • Per una determinata VM, le connessioni in entrata vengono confrontate con le regole firewall configurate sulla VM e le connessioni in uscita vengono confrontate con la regola firewall in uscita configurata sulla VM.
  • Una connessione consentita che corrisponde a una regola firewall con "consenti e registra" viene registrata una sola volta. La voce di log non viene ripetuta ogni 5 secondi anche se la connessione persiste.
  • Una connessione negata che corrisponde a una regola firewall con "negata e registrazione" ripete la voce di log ogni 5 secondi finché vengono osservati pacchetti in quella connessione negata.
  • Se attivi la registrazione in una regola firewall che corrisponde a una connessione TCP o UDP già attiva, non viene generata una nuova voce di log. Una voce di log viene creata solo se la connessione rimane inattiva per almeno 10 minuti e viene inviato un nuovo pacchetto sulla stessa connessione. Per il traffico continuo con periodi di inattività inferiori a 10 minuti, viene generata una sola voce di log per la connessione.

Questa tabella mostra il comportamento di logging del firewall dal punto di vista di una singola VM.

In uno scenario in cui una VM1 ha una regola in entrata R1 che corrisponde ai pacchetti e una regola in uscita R2 che corrisponde anche ai pacchetti, il comportamento della registrazione firewall è il seguente:

VM1 ha la regola di ingresso R1 (pacchetti corrispondenti) VM1 ha la regola in uscita R2 (pacchetti corrispondenti) Direzione della connessione Azione Log
Consenti + Registra Consenti In entrata Consenti Una voce di log:
disposition=allow, rule=R1
Nega
Consenti + Registra
Nega + Registra
Consenti Consenti In entrata Consenti Nessun logging
Nega
Consenti + Registra
Nega + Registra
Nega + Registra N/D In entrata Nega Una voce di log ogni 5 secondi:
disposition=deny, rule=R1
Nega N/D In entrata Nega Nessun logging
Consenti Consenti + Registra In uscita Consenti Una voce di log:
disposition=allow, rule=R2
Nega
Consenti + Registra
Nega + Registra
Consenti Consenti In uscita Consenti Nessun log
Nega
Consenti + Registra
Nega + Registra
N/D Nega + Registra In uscita Nega Una voce di log ogni 5 secondi:
disposition=deny, rule=R2
N/D Nega In uscita Nega Nessun logging

Tieni presente che l'ingresso e l'uscita sono simmetrici.

Di seguito è riportata la descrizione dettagliata della semantica dei log firewall:

  • Consenti + Log (il logging è supportato solo per TCP e UDP)

    • La connessione avviata nella direzione a cui si applica la regola causa la creazione di un singolo record di log.
    • Il traffico di risposta è consentito grazie al monitoraggio della connessione. Il traffico di risposta non causa alcun logging, indipendentemente dalle regole firewall VPC in quella direzione.
    • Se la connessione scade dal firewall (inattiva per 10 minuti o TCP RST ricevuto), un altro pacchetto in una delle due direzioni potrebbe attivare la registrazione.
    • La registrazione si basa su 5 tuple. I flag TCP non influiscono sul comportamento di logging.
  • Nega + Log (il logging è supportato solo per TCP e UDP)

    • I pacchetti vengono eliminati (non viene avviata alcuna connessione).
    • Ogni pacchetto che corrisponde a una tupla a 5 elementi univoca viene registrato come tentativo di connessione non riuscito.
    • La stessa 5-tupla viene registrata di nuovo ogni 5 secondi se continua a ricevere pacchetti.

Passaggi successivi