Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Esempi di criteri firewall gerarchici

Questa pagina mostra esempi di implementazioni di criteri firewall gerarchici. Si presume che tu abbia dimestichezza con i concetti descritti nei criteri firewall gerarchici.

Esempio 1: consenti a Prober di accedere a tutte le VM

In questo caso d'uso, tutte le istanze di macchine virtuali (VM) di un'organizzazione devono essere analizzate e sottoposte a inventario utilizzando probe da un determinato indirizzo IP (10.100.0.1) a una porta di destinazione specifica (123). L'amministratore della sicurezza dell'organizzazione garantisce che nessun amministratore di rete o altri amministratori di sicurezza possano bloccare quella porta su qualsiasi istanza VM dell'organizzazione.

In questo esempio si presuppone che non siano stati implementati criteri firewall a livello di cartella.

La configurazione della configurazione per questo caso d'uso è descritta nel diagramma seguente.

Consenti ad Prober di accedere a tutte le VM
Consenti al prober di accedere a tutte le VM

Criterio applicato applicato nelle VM

In questo esempio, il criterio firewall VM effettivo dopo la valutazione delle regole nella gerarchia è il seguente.

Connessioni in entrata

  • Le connessioni in entrata con IP di origine 10.100.0.1 e porta di destinazione 123 sono consentite, come definito nel criterio. A seguito di una corrispondenza nel criterio dell'organizzazione, le connessioni del probe sono consentite e non vengono valutate ulteriori regole nella gerarchia.

  • Non esiste una corrispondenza per le connessioni in entrata diverse dall'IP di origine 10.100.0.1 e dalla porta di destinazione 123; pertanto, viene applicata la regola predefinita in entrata nelle regole del firewall VPC.

Connessione in uscita

  • Non esiste una corrispondenza con le regole definite dalla gerarchia. Pertanto, si applica la regola di traffico in uscita predefinita nelle regole del firewall VPC, che consente le connessioni in uscita.

Modalità di configurazione

  1. Crea un criterio firewall per contenere la regola:

    gcloud compute firewall-policies create \
         --organization=123456789012 \
         --short-name="example-firewall-policy" \
         --description="rules that apply to all VMs in the organization"
    
  2. Aggiungi la regola al criterio firewall:

    gcloud compute firewall-policies rules create 1000 \
        --action=allow \
        --description="allow-scan-probe" \
        --layer4-configs=tcp:123 \
        --firewall-policy=example-firewall-policy \
        --organization=123456789012 \
        --src-ip-ranges=10.100.0.1/32
  3. Associa il criterio firewall al nodo organizzazione:

    gcloud compute firewall-policies associations create \
        --firewall-policy=example-firewall-policy \
        --organization=123456789012

Esempio 2: rifiutare tutte le connessioni esterne ad alcune porte

In questo caso d'uso, un criterio firewall blocca tutte le connessioni da origini Internet esterne ad eccezione delle connessioni sulle porte di destinazione 80, 443 e 22. Una connessione a Internet in entrata su una porta diversa da 80, 443 e 22 è bloccata indipendentemente dalle regole firewall a livello di rete VPC. Per qualsiasi connessione sulla porta 80, 443 o 22, il criterio delega all'amministratore di sicurezza VPC il comportamento che vuole applicare nella rispettiva rete VPC per tali porte.

La configurazione della configurazione per questo caso d'uso è descritta nel diagramma seguente.

Nega tutte le connessioni esterne tranne alcune porte di destinazione
Nega tutte le connessioni esterne tranne determinate porte di destinazione

Criterio applicato applicato nelle VM

In questo esempio, il criterio firewall VM effettivo dopo la valutazione delle regole nella gerarchia è il seguente.

Connessioni in entrata

  • Qualsiasi connessione in entrata da 10.0.0.0/8 corrisponde alla regola con livello di priorità delegate-internal-traffic superiore e ignora le altre regole nel criterio dell'organizzazione per la valutazione in base alle regole firewall configurate a livello di rete VPC. Nella regola firewall VPC, le connessioni da 10.2.0.0/16 sono consentite e il resto delle connessioni viene valutato rispetto alla regola in entrata implicita, che è deny.

  • Le connessioni in entrata con un intervallo IP di origine diverso da 10.0.0.0/8 per le porte di destinazione 22, 80 e 443 sono delegate al livello successivo, dove le porte 80 e 443 sono consentite, mentre 22 non lo è.

  • Tutte le altre connessioni vengono bloccate.

Connessioni in uscita

  • Non esiste una corrispondenza con le regole definite dalla gerarchia. Pertanto, si applica la regola di traffico in uscita predefinita nelle regole del firewall VPC, che consente le connessioni in uscita.

Modalità di configurazione

  1. Crea un criterio firewall per contenere la regola:

    gcloud compute firewall-policies create \
        --organization=123456789012 \
        --short-name="example-firewall-policy" \
        --description="rules that apply to all VMs in the organization"
    
  2. Aggiungi una regola per delegare le connessioni interne al proprietario del progetto:

    gcloud compute firewall-policies rules create 1000 \
        --action=goto_next \
        --description="delegate-internal-traffic" \
        --organization=123456789012 \
        --firewall-policy="example-firewall-policy" \
        --src-ip-ranges=10.0.0.0/8
    
  3. Aggiungi una regola per delegare le regole per le connessioni esterne alle porte 80/443/22 al proprietario del progetto:

    gcloud compute firewall-policies rules create 2000 \
        --action=goto_next \
        --description="delegate-external-traffic-spec-ports" \
        --layer4-configs=tcp:80,tcp:443,tcp:22 \
        --organization=123456789012 \
        --firewall-policy="example-firewall-policy"
  4. Aggiungi una regola per negare tutte le altre connessioni esterne:

    gcloud compute firewall-policies rules create 3000 \
        --action=deny \
        --description="block-other-external-traffic-spec-ports" \
        --organization=123456789012 \
        --firewall-policy="example-firewall-policy" \
        --src-ip-ranges=0.0.0.0/0
    
  5. Associa il criterio firewall al nodo organizzazione:

    gcloud compute firewall-policies associations create \
        --organization=123456789012 \
        --firewall-policy="example-firewall-policy"
  6. Nel progetto, aggiungi una regola firewall per consentire le connessioni interne dalla subnet designata:

    gcloud compute firewall-rules create allow-internal-traffic \
        --action=allow \
        --priority=1000 \
        --source-ranges=10.2.0.0/16
    
  7. Nel progetto, aggiungi una regola firewall per consentire le connessioni 80/443 TCP esterne:

    gcloud compute firewall-rules create allow-external-traffic \
        --action=allow \
        --priority=2000 \
        --rules=tcp:80,tcp:443
    

Esempio 3: rifiuta le connessioni in uscita, tranne che da una specifica rete VPC

In questo caso d'uso, l'amministratore della sicurezza dell'organizzazione non consente le connessioni in uscita in nessuna rete VPC, ad eccezione delle connessioni che hanno origine nella rete VPC myvpc. L'amministratore delega la decisione di aprire il traffico in uscita al server pubblico 203.0.113.1 all'amministratore della sicurezza di myvpc.

In questo esempio si presuppone che non siano stati implementati criteri firewall a livello di cartella. La configurazione della configurazione per questo caso d'uso è descritta nel diagramma seguente.

Nega le connessioni in uscita, tranne che da una rete specifica
Nega le connessioni in uscita, tranne che da una rete specifica

Criterio applicato applicato nelle VM

In questo esempio, il criterio firewall VM effettivo dopo la valutazione delle regole nella gerarchia è il seguente.

Connessioni in entrata

  • Non esiste una corrispondenza con le regole definite dalla gerarchia. Pertanto, si applica la regola predefinita in entrata nelle regole del firewall VPC, che nega le connessioni in entrata.

Connessioni in uscita

  • Sono consentite tutte le connessioni in uscita destinate a 203.0.113.1, mentre le altre sono rifiutate. Tutte le connessioni in uscita destinate a 203.0.113.1 corrispondono alla regola delegate-egress-my-vpc e ignorano le altre regole nel criterio dell'organizzazione.

  • Le connessioni in uscita vengono quindi valutate in base alle regole firewall configurate in myvpc. La regola predefinita consente le connessioni in uscita. La regola block-egress-traffic-sepc-ports nel criterio a livello di organizzazione rifiuta il resto delle connessioni.

Modalità di configurazione

  1. Crea un criterio firewall per contenere la regola:

    gcloud compute firewall-policies create \
        --organization=123456789012 \
        --short-name="example-firewall-policy" \
        --description="rules that apply to all VMs in the organization"
    
  2. Aggiungi una regola per delegare determinate connessioni in uscita:

    gcloud compute firewall-policies rules create 1000 \
        --action=goto_next \
        --description="delegate-egress-myvpc" \
        --dest-ip-ranges=203.0.113.1/32
        --direction=egress
        --organization=123456789012 \
        --short-name="example-firewall-policy" \
        --target-resources=projects/PROJECT_ID/networks/myvpc
    
  3. Aggiungi una regola per negare tutte le altre connessioni in uscita:

    gcloud compute firewall-policies rules create 2000 \
        --action=deny \
        --description="block-egress-external-traffic-spec-ports" \
        --direction=egress \
        --dest-ip-ranges=0.0.0.0/0 \
        --organization=123456789012 \
        --short-name="example-firewall-policy"
  4. Associa il criterio firewall al nodo organizzazione:

    gcloud compute firewall-policies associations create \
        --organization=123456789012 \
        --short-name="example-firewall-policy"

Esempio 4: configurare regole a livello di organizzazione e di cartelle specifiche

In questo caso d'uso, un amministratore della sicurezza non consente le connessioni in entrata verso le VM dell'organizzazione, tranne quelle provenienti dall'intervallo della lista consentita 203.0.113.0/24. L'amministratore delega ulteriori decisioni su cosa fare con le connessioni da 203.0.113.0/24 ad amministratori della sicurezza a livello di cartella.

Esistono due cartelle diverse:

  • Cartella 1, in cui il criterio consente le connessioni solo alle porte 80 e 443 sulle VM di backend, mentre il resto delle porte viene bloccato.
  • Cartella2, in cui il criterio impone che nessuna VM nella Cartella2 possa bloccare qualsiasi porta di destinazione per il traffico dall'indirizzo IP 203.0.113.1. L'amministratore di sicurezza Cartella2 delega altre decisioni all'amministratore di sicurezza VPC, che decide di aprire le porte 80, 443 e 22 e di negare le altre porte.

La configurazione della configurazione per questo caso d'uso è descritta nel diagramma seguente.

Regole a livello di organizzazione e di cartelle specifiche
Regole a livello di organizzazione e di cartella

Criterio applicato applicato nelle VM

In questo esempio, il criterio firewall VM effettivo dopo la valutazione delle regole nella gerarchia è il seguente.

Per le VM che appartengono a my-vpc

  • Sono consentite tutte le connessioni in entrata da 203.0.113.0/24 con le porte TCP 80 e 443 di destinazione. Qualsiasi altra connessione in entrata è rifiutata.

  • Tutte le connessioni in uscita sono accettate in base alla regola firewall VPC applicata perché non esiste una corrispondenza nelle regole dei criteri firewall di livello superiore.

Per le VM che appartengono a vpc2

  • Sono consentite tutte le connessioni in entrata da 203.0.113.1. Le connessioni in entrata da altre origini 203.0.113.0/24 diverse da 203.0.113.1 sono consentite solo per le porte 80, 443 e 22. Tutte le altre connessioni in entrata sono rifiutate.

  • Tutte le connessioni in uscita sono accettate in base alla regola firewall VPC applicata perché non esiste una corrispondenza nelle regole dei criteri firewall di livello superiore.

Modalità di configurazione

  1. Crea un criterio firewall per contenere le regole per Org_A:

    gcloud compute firewall-policies create \
        --organization=100000000000 \
        --short-name="example-firewall-policy-org-a" \
        --description="rules that apply to all VMs in the organization"
    
  2. Aggiungi una regola per delegare il traffico in entrata da 203.0.113.0/24 al proprietario del progetto:

    gcloud compute firewall-policies rules create 1000 \
        --action=goto_next \
        --description="delegate-ingress" \
        --organization=100000000000 \
        --short-name="example-firewall-policy-org-a" \
        --src-ip-ranges=203.0.113.0/24
    
  3. Aggiungi una regola per negare tutte le altre connessioni esterne:

    gcloud compute firewall-policies rules create 2000 \
        --action=deny
        --description="block-ingress-external-traffic"
        --organization=100000000000 \
        --short-name="example-firewall-policy-org-a" \
        --src-ip-ranges=0.0.0.0/0
    
  4. Associa il criterio firewall al nodo organizzazione:

    gcloud compute firewall-policies associations create \
        --organization=100000000000 \
        --short-name="example-firewall-policy-org-a"
  5. Crea un criterio firewall per contenere le regole per la Cartella 1:

    gcloud compute firewall-policies create \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder1" \
        --description="rules that apply to all VMs under Folder1"
    
  6. Aggiungi una regola per consentire tutto il traffico in entrata HTTP(S):

    gcloud compute firewall-policies rules create 1000 \
        --action=allow \
        --description="allow-http-s-ingress" \
        --layer4-configs=tcp:80,tcp:443 \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder1"
  7. Aggiungi una regola per negare il traffico in entrata su tutti gli altri protocolli/porte:

    gcloud compute firewall-policies rules create 2000 \
        --action=deny \
        --description="block-ingress-external-traffic" \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder1" \
        --src-ip-ranges=0.0.0.0/0
  8. Associa il criterio firewall alla Cartella 1:

    gcloud compute firewall-policies associations create \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder1" \
        --folder=200000000000
  9. Crea un criterio firewall per contenere le regole per la cartella 2:

    gcloud compute firewall-policies create \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder2" \
        --description="rules that apply to all VMs under Folder2"
  10. Aggiungi una regola per consentire il traffico in entrata da 203.0.113.1:

    gcloud compute firewall-policies rules create 1000 \
        --action=allow \
        --description="allow-vul-scan-ingress" \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder2" \
        --src-ip-ranges=203.0.113.1/32
  11. Associa il criterio firewall alla Cartella2:

    gcloud compute firewall-policies associations create \
        --organization=100000000000 \
        --short-name="example-firewall-policy-folder2" \
        --folder=300000000000
  12. Aggiungi una regola firewall per consentire il traffico in entrata tramite HTTP(S):

    gcloud compute firewall-rules create allow-internal-traffic \
        --action=allow \
        --rules=tcp:80,tcp:443,tcp:22
    

Passaggi successivi