Configura i criteri di sicurezza perimetrale della rete

I criteri di sicurezza del perimetro della rete ti consentono di configurare regole per consentire o bloccare il traffico sul perimetro della rete di Google. Puoi configurare i criteri di sicurezza di edge della rete per i seguenti tipi di frontend:

  • Bilanciatori del carico di rete passthrough esterni
  • Forwarding del protocollo
  • VM con indirizzi IP pubblici

Puoi utilizzare i criteri di sicurezza perimetrale della rete per filtrare in base agli intervalli di indirizzi IP di origine e di destinazione in modo simile a Cloud Next Generation Firewall, ma senza consumare le tue risorse. Nel Inoltre, un criterio di sicurezza perimetrale della rete è l'unico tipo di criterio di sicurezza con il supporto del filtro degli offset di byte.

Configura regole personalizzate per i criteri di sicurezza sul perimetro della rete

Come per i criteri di sicurezza perimetrale e backend, puoi configurare regole personalizzate criteri di sicurezza perimetrale della rete. Nell'esempio seguente, crei un criterio di sicurezza perimetrale della rete, configuri una regola personalizzata per consentire il traffico solo da un determinato intervallo di indirizzi IP di origine e colleghi il criterio al servizio di backend.

I criteri di sicurezza perimetrale della rete supportano diversi filtri Google Cloud Armor, inclusi filtri univoci come il filtro offset di byte. Per ulteriori informazioni sulle funzionalità supportate dai criteri di sicurezza di Edge della rete, consulta la panoramica dei criteri di sicurezza. Inoltre, puoi eseguire il deployment dei criteri di sicurezza perimetrale della rete modalità anteprima.

Prima di procedere, devi registrarti a Google Cloud Armor Enterprise e configurare la protezione DDoS di rete avanzata. Non puoi utilizzare regole personalizzate per i criteri di sicurezza perimetrale della rete senza un abbonamento attivo a Cloud Armor Enterprise e la protezione DDoS di rete avanzata.

Per configurare le regole personalizzate:

  1. Crea un nuovo criterio di sicurezza perimetrale della rete con il nome POLICY_NAME nella regione REGION. Non usare lo stesso criterio di sicurezza utilizzata per attivare la protezione DDoS di rete avanzata.

    gcloud compute security-policies create POLICY_NAME \
       --type=CLOUD_ARMOR_NETWORK \
       --region=REGION
    
  2. Modifica il criterio regola predefinita da Da allow a deny per bloccare il traffico non consentito esplicitamente da altre regole.

    gcloud compute security-policies rules update 2147483647 \
       --security-policy=POLICY_NAME \
       --action=deny \
       --region=REGION
    
  3. Nello stesso criterio di sicurezza, aggiungi una regola prioritaria RULE_PRIORITY che consente le richieste nell'IP di origine intervallo di indirizzi RANGE.

    gcloud compute security-policies rules create RULE_PRIORITY \
       --security-policy=POLICY_NAME \
       --network-src-ip-ranges=RANGE \
       --action=allow \
       --region=REGION
    
  4. Associa il criterio di sicurezza al servizio di backendBACKEND_SERVICE_NAME.

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
       --security-policy=POLICY_NAME \
       --region=REGION
    

    In alternativa, puoi associare il criterio di sicurezza a una singola istanza VM utilizzando il seguente comando:

    gcloud beta compute instances network-interfaces update VM_NAME \
       --security-policy=POLICY_NAME \
       --security-policy-region=REGION \
       --network-interface=NETWORK_INTERFACE \
       --zone=ZONE_NAME
    
  5. (Facoltativo) Puoi verificare che il criterio di sicurezza sia collegato utilizzando il metodo . In caso di esito positivo, il campo securityPolicy nell'output include un link alla risorsa del criterio di sicurezza.

    gcloud compute instances describe VM_NAME --zone=ZONE_NAME
    

Dopo aver creato l'esempio precedente, puoi continuare ad aggiungere regole al tuo criterio di sicurezza perimetrale della rete usando il comando security-policies rules update. I campi supportati per i criteri di sicurezza perimetrale della rete sono i seguenti:

Campo Bandiera Descrizione
Indirizzo IP di origine --network-src-ip-ranges Indirizzi IPv4/6 di origine o prefissi CIDR in formato di testo standard.
Porte di origine --network-src-ports Numeri di porte di origine per TCP/UDP/SCTP. Ogni elemento può essere un file numero (ad es. "80") o intervallo (ad es. "0-1023").
Codici regione di origine --network-src-region-codes Codice paese di due lettere (ISO 3166-1 alpha-2).
ASN di origine --network-src-asns Numero di sistema autonomo BGP dell'indirizzo IP di origine.
Intervalli di indirizzi IP di destinazione --network-dest-ip-ranges Indirizzi IPv4/6 di destinazione o prefissi CIDR in testo standard formato.
Porte di destinazione --network-dest-ports Numeri di porte di destinazione per TCP/UDP/SCTP. Ogni elemento può essere un numero (a 16 bit) (ad esempio "80") o un intervallo (ad esempio "0-1023").
Protocolli degli indirizzi IP --network-ip-protocols Intestazione successiva del protocollo IPv4 / IPv6 (dopo le intestazioni delle estensioni). Ciascuna può essere un numero a 8 bit (come "6"), un intervallo (come "253-254") o uno dei seguenti nomi di protocollo:
  • tcp
  • udp
  • icmp
  • esp
  • ah
  • ipip
  • sctp
Filtro dell'offset in byte N/D Consulta la sezione che segue.

Quando utilizzi il flag --network-src-region-codes con una sicurezza perimetrale della rete puoi utilizzare i codici regione per i seguenti territori in conformità alle sanzioni complete negli Stati Uniti:

Territori Codice assegnato
Crimea XC
La cosiddetta Repubblica popolare di Donetsk (DNR) e
la cosiddetta Repubblica popolare di Lugansk (LNR)
XD

Configurazione del filtro per l'offset di byte

Se utilizzi bilanciatori del carico di rete esterni passthrough, forwarding del protocollo o VM con indirizzi IP pubblici, Google Cloud Armor può eseguire un'ispezione approfondita dei pacchetti sul traffico in entrata. Puoi configurare una regola del criterio di sicurezza che corrisponda a un valore di offset di byte TCP/UDP specifico. Puoi configurare la regola per applicare l'azione corrispondente quando il valore configurato è presente o, in alternativa, quando è assente.

L'esempio seguente consente il traffico quando il valore è presente e nega tutto il resto del traffico:

  1. Crea un nuovo criterio di sicurezza perimetrale della rete. Puoi saltare questo passaggio se hai già un criterio di sicurezza perimetrale della rete.

    gcloud compute security-policies create POLICY_NAME \
       --type=CLOUD_ARMOR_NETWORK \
       --region=REGION_NAME
    
  2. Aggiorna il criterio di sicurezza perimetrale della rete per aggiungere campi definiti dall'utente utilizzando i seguenti parametri:

    • Base: il valore può essere IPv4, IPv6, TCP o UDP
    • Offset: offset del campo dalla base in byte
    • Dimensione: dimensioni del campo in byte (il valore massimo è 4)
    • Maschera: la maschera per i bit nel campo da abbinare

    Puoi utilizzare fino a otto campi definiti dall'utente per criterio. Nell'esempio seguente, crei due campi definiti dall'utente.

    gcloud compute security-policies add-user-defined-field POLICY_NAME \
       --user-defined-field-name=USER_DEFINED_FIELD_NAME_TCP \
       --base=TCP \
       --offset=OFFSET \
       --size=SIZE \
       --mask=MASK \
       --region=REGION_NAME
    
    gcloud compute security-policies add-user-defined-field POLICY_NAME \
       --user-defined-field-name=USER_DEFINED_FIELD_NAME_UDP \
       --base=UDP \
       --offset=OFFSET \
       --size=SIZE \
       --mask=MASK \
       --region=REGION_NAME
    
  3. Nel criterio di sicurezza perimetrale della rete, aggiungi una regola con lo stesso nome del campo personalizzato utilizzato nell'esempio precedente. Sostituisci VALUE1 e VALUE2 con i valori corrispondenti al traffico che vuoi consentire.

    gcloud compute security-policies rules create RULE_PRIORITY \
       --security-policy=POLICY_NAME \
       --network-user-defined-fields="USER_DEFINED_FIELD_NAME_TCP;VALUE1:VALUE2,USER_DEFINED_FIELD_NAME_UDP;VALUE1:VALUE2,USER_DEFINED_FIELD_NAME_UDP;VALUE1,VALUE2" \
       --action=allow \
       --region=REGION_NAME
    
  4. Imposta la regola predefinita nel criterio di sicurezza perimetrale della rete come una regola di rifiuto. Puoi saltare questo passaggio se la regola predefinita nel tuo è già una regola di negazione.

    gcloud compute security-policies rules update 2147483647 \
       --security-policy=POLICY_NAME \
       --action=deny \
       --region=REGION_NAME
    
  5. Associa il criterio di sicurezza perimetrale della rete al servizio di backend del bilanciatore del carico di rete passthrough esterno.

    gcloud compute backend-services update BACKEND_SERVICE_NAME \
       --security-policy=POLICY_NAME \
       --region=REGION_NAME
    

Monitoraggio

Google Cloud Armor esporta le seguenti metriche in Cloud Monitoring per ciascuna regola del criterio di sicurezza perimetrale della rete:

  • packet_count
    • Blocked: un valore booleano che rappresenta il risultato di allow o deny
      azione della regola
    • Count: il valore di packet_count incrementato una volta per ogni 10.000 pacchetti, ad esempio un valore packet_count di 5 indica che almeno 50.000 pacchetti corrispondano alla regola
  • preview_packet_count: uguale a packet_count, utilizzato per le regole in modalità di anteprima

Per visualizzare le metriche per i criteri di sicurezza dell'edge di rete, devi prima attivare l'API Network Security (networksecurity.googleapis.com). Questa autorizzazione è inclusa nel ruolo Amministratore della sicurezza di Compute (roles/compute.securityAdmin). Dopo aver attivato l'API Network Security, puoi visualizzare le metriche in Monitoraggio nella console Google Cloud.

Vai a Monitoring