Batch-Updates für Firewallrichtlinien-Regeln konfigurieren

Auf dieser Seite wird erläutert, wie Sie die Batchaktualisierung für alle Firewallrichtlinien (hierarchische und Netzwerk-Firewallrichtlinien) konfigurieren. Sie können die Batch-Aktualisierung mit der Google Cloud CLI oder der Compute Engine API ausführen.

Weitere Informationen zu Batch-Aktualisierungen finden Sie unter Übersicht.

Wenn Sie die gcloud CLI zum Batch-Aktualisieren der Firewallrichtlinien verwenden, verwenden Sie die folgenden gcloud CLI-Befehle:

  • export-rules: Mit dieser Option können Sie die Konfiguration der Firewallrichtlinienregeln in eine YAML-Datei exportieren. In der YAML-Datei können Sie dann die Konfiguration der Firewallrichtlinienregeln gemäß Ihren Anforderungen hinzufügen, ändern und entfernen.

  • import-rules: Mit dieser Option können Sie die Konfigurationsdatei der geänderten Firewallrichtlinienregeln importieren. Dadurch werden die vorhandenen Regeln der angegebenen Firewallrichtlinie ersetzt.

Wenn Sie REST APIs zum Batch-Aktualisieren der Firewallrichtlinienregeln verwenden, verwenden Sie die Methode patch. Mit der Methode patch können Sie alle Regeln in der Firewallrichtlinie ersetzen, indem Sie das Feld rules in der Anfrage angeben. Sie müssen keine YAML-Datei erstellen. Wenn Sie die Methode patch verwenden, belassen Sie die Standardregeln goto_next mit der niedrigsten Priorität.

Hinweise

Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Trusted Cloud by S3NS Dienste und APIs überprüft. Wenn Sie Code oder Beispiele aus einer lokalen Entwicklungsumgebung ausführen möchten, können Sie sich wie in diesem Abschnitt beschrieben bei der Compute Engine authentifizieren.

Console

Wenn Sie über die Trusted Cloud Console auf Dienste und APIs zugreifen Trusted Cloud by S3NS , müssen Sie die Authentifizierung nicht einrichten.

gcloud

  1. Nachdem Sie die Google Cloud CLI installiert haben, initialisieren Sie sie mit dem folgenden Befehl:

    
    gcloud init
    
    

    Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud-Befehlszeile anmelden.

  2. Legen Sie die Standardregion und -zone in Ihrem lokalen Client fest.

REST

Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

Nachdem Sie die Google Cloud CLI installiert haben, initialisieren Sie sie mit dem folgenden Befehl:


gcloud init

Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud-Befehlszeile anmelden.

Weitere Informationen finden Sie in derTrusted Cloud by S3NS -Authentifizierungsdokumentation unter Für die Verwendung von REST authentifizieren.

YAML-Datei erstellen

Mit dem Befehl export-rules können Sie vorhandene Firewallrichtlinienregeln in eine YAML-Datei exportieren. Weitere Informationen finden Sie unter Firewallrichtlinienregel exportieren. Die exportierte YAML-Datei enthält die Standardgoto_next-Regeln mit der niedrigsten Priorität (Regeln mit einer Priorität von mindestens 2147483644). Achten Sie darauf, diese Standardgoto_next-Regeln nicht zu ändern.

Wenn Sie den Befehl export-rules jedoch nicht verwenden möchten, können Sie auch manuell eine neue YAML-Datei erstellen, um die Regeln zu bearbeiten. So erstellen Sie eine neue YAML-Datei manuell:

  1. Erstellen Sie eine YAML-Datei vom Typ RULES_YAML_FILE. Ersetzen Sie RULES_YAML_FILE durch einen Dateinamen Ihrer Wahl.

  2. Fügen Sie der YAML-Datei das Feld rules hinzu. Das Feld rules enthält eine Liste Ihrer Firewallrichtlinienregeln. Ein Schema, das das Export- oder Importformat beschreibt, finden Sie unter CLOUDSDKROOT/lib/googlecloudsdk/schemas/compute/beta/FirewallPolicy.yaml. Dabei ist CLOUDSDKROOT das Installationsverzeichnis der Google Cloud CLI.

    Unten finden Sie ein Beispiel für ein YAML-Schema.

        rules:
        -action: deny
         description:
         priority: 1
         disabled: false
         enable-logging: false
         kind: compute#firewallPolicyRule
         ...
        -action: goto_next
         priority: 2
         disabled: false
         enable-logging: false
         ...
      

    Informationen zum Ändern von Firewallrichtlinienregeln finden Sie unter Firewallrichtlinienregeln ändern.

Firewallrichtlinienregel exportieren

Sie können Aktualisierungen entweder mit der gcloud CLI oder der Compute Engine API initiieren.

Hierarchische Firewallrichtlinie exportieren

Exportieren Sie die Firewallrichtlinienregeln aus der hierarchischen Firewallrichtlinie.

gcloud

Verwenden Sie den Befehl gcloud compute firewall-policies export-rules, um Regeln aus einer hierarchischen Firewallrichtlinie zu exportieren:

gcloud compute firewall-policies export-rules FIREWALL_POLICY \
    --destination=DESTINATION \
    --organization=ORGANIZATION

Ersetzen Sie Folgendes:

  • FIREWALL_POLICY: der Kurzname oder die ID der hierarchischen Firewallrichtlinie, aus der Regeln exportiert werden sollen
  • DESTINATION: Pfad zu einer YAML-Datei, in die die Konfiguration exportiert wird
  • ORGANIZATION: Organisation, in der die Firewall-Richtlinie aktualisiert werden soll. Muss festgelegt werden, wenn FIREWALL_POLICY ein Kurzname ist.

API

Verwenden Sie die Methode firewallPolicies.get in der Compute Engine API, um die vorhandenen Regeln aus der hierarchischen Firewallrichtlinie zu exportieren:

  GET https://compute.googleapis.com/compute/v1/locations/global/firewallPolicy/FIREWALL_POLICY_NAME
  

Ersetzen Sie Folgendes:

Netzwerk-Firewallrichtlinie exportieren

Exportieren Sie Firewallregeln aus der Netzwerk-Firewallrichtlinie.

gcloud

Verwenden Sie den Befehl gcloud compute network-firewall-policies export-rules, um die Konfiguration der Netzwerk-Firewallrichtlinienregeln in eine Datei zu exportieren:

gcloud compute network-firewall-policies export-rules FIREWALL_POLICY \
    --destination=RULES_YAML_FILE_PATH \
    --global | --region=REGION

Ersetzen Sie Folgendes:

  • FIREWALL_POLICY: Name der Netzwerk-Firewallrichtlinie, aus der Regeln exportiert werden sollen
  • RULES_YAML_FILE_PATH: Pfad zu einer YAML-Datei, in die die Konfiguration exportiert wird
  • REGION: Geben Sie entweder --global für eine globale Richtlinie oder REGION für eine regionale Richtlinie an.

API

Verwenden Sie die Methode networkFirewallPolicies.get in der Compute Engine API, um die vorhandenen Regeln aus der globalen Netzwerk-Firewallrichtlinie zu exportieren:

  GET https://compute.googleapis.com/compute/v1/projects/PROJECT/global/firewallPolicies/FIREWALL_POLICY_NAME
   

Ersetzen Sie Folgendes:

  • PROJECT: die Projekt-ID
  • FIREWALL_POLICY_NAME: der Name der Firewallrichtlinie, die Sie exportieren möchten

Verwenden Sie die Methode regionNetworkFirewallPolicies.get in der Compute Engine API, um die vorhandenen Regeln aus der regionalen Netzwerk-Firewallrichtlinie zu exportieren:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/firewallPolicies/FIREWALL_POLICY_NAME

Ersetzen Sie Folgendes:

  • PROJECT: die Projekt-ID
  • REGION: die Region der Firewallrichtlinien
  • FIREWALL_POLICY_NAME: der Name der Firewallrichtlinie, die Sie exportieren möchten

Diese Anfrage gibt eine Ressourcendefinition für Firewallrichtlinien zurück.

Firewallrichtlinien-Regeln ändern

Ändern Sie die Firewallrichtlinien, die Sie im vorherigen Abschnitt exportiert haben.

  1. Öffnen Sie die exportierte Datei. Beispiel: RULES_YAML_FILE.

  2. Fügen Sie das Feld rules wie im folgenden Beispiel hinzu.

        rules:
         -action: allow
          description: test-rule1
          direction: INGRESS
          disabled: false
          enableLogging: false
          kind: compute#firewallPolicyRule
      

  3. Fügen Sie die zusätzlichen Konfigurationsfelder wie action, direction und priority hinzu. Im Folgenden finden Sie ein Beispiel für eine einfache YAML-Datei.

        rules:
         -action: allow
          description: test-rule1
          direction: INGRESS
          disabled: false
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            layer4Configs:
            -ipProtocol: all
            srcIpRanges:
            -192.0.2.0/24
          priority: 1
          ruleTupleCount: 2
         -action: goto_next
          description: default egress rule
          direction: EGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            destIpRanges:
            -::/0
            layer4Configs:
            -ipProtocol: all
          priority: 2147483644
          ruleTupleCount: 2
         -action: goto_next
          description: default ingress rule
          direction: INGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            layer4Configs:
            -ipProtocol: all
            srcIpRanges:
            -::/0
          priority: 2147483645
          ruleTupleCount: 2
         -action: goto_next
          description: default egress rule
          direction: EGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            destIpRanges:
            -198.51.100.0/24
            layer4Configs:
            -ipProtocol: all
          priority: 2147483646
          ruleTupleCount: 2
         -action: goto_next
          description: default ingress rule
          direction: INGRESS
          enableLogging: false
          kind: compute#firewallPolicyRule
          match:
            layer4Configs:
            -ipProtocol: all
            srcIpRanges:
            -192.0.2.0/24
          priority: 2147483647
          ruleTupleCount: 2
      

Firewallrichtlinien-Regeln importieren

Importieren Sie die Regeln in Ihre Firewallrichtlinie, nachdem Sie die Datei mit den erforderlichen Batch-Aktualisierungen geändert haben. Wenn Sie die geänderte Datei importieren, werden die vorhandenen Firewallrichtlinien durch die angegebenen Regeln ersetzt.

Hierarchische Firewallrichtlinienregeln importieren

Importieren Sie Firewallregeln in die hierarchische Firewallrichtlinie.

gcloud

Verwenden Sie den Befehl gcloud compute firewall-policies import-rules, um Regeln in die hierarchische Firewallrichtlinie zu importieren:

gcloud compute firewall-policies import-rules FIREWALL_POLICY \
    --source=RULES_YAML_FILE_PATH \
    --organization=ORGANIZATION

Ersetzen Sie Folgendes:

  • FIREWALL_POLICY: der Kurzname oder die ID der zu aktualisierenden hierarchischen Firewallrichtlinie
  • RULES_YAML_FILE_PATH: Pfad zur YAML-Datei, aus der Regeln importiert werden sollen
  • ORGANIZATION: Organisation, in der die Firewall-Richtlinie aktualisiert werden soll. Muss festgelegt werden, wenn FIREWALL_POLICY ein Kurzname ist.

API

Verwenden Sie die Methode firewallPolicies.patch in der Compute Engine API, um die Firewallrichtlinienregeln zu importieren:

  PATCH https://compute.googleapis.com/compute/v1/locations/global/firewallPolicy/FIREWALL_POLICY_NAME
  

Ersetzen Sie Folgendes:

Netzwerk-Firewallrichtlinie importieren

Importieren Sie die geänderte YAML-Datei mit den Firewallregeln in die Netzwerk-Firewallrichtlinie.

gcloud

Verwenden Sie den Befehl gcloud compute network-firewall-policies import-rules, um Regeln in die Netzwerk-Firewallrichtlinie zu importieren:

gcloud compute network-firewall-policies import-rules FIREWALL_POLICY \
    --source=RULES_YAML_FILE_PATH \
    --global | --region=REGION

Ersetzen Sie Folgendes:

  • FIREWALL_POLICY: Name der zu aktualisierenden Netzwerk-Firewallrichtlinie
  • RULES_YAML_FILE_PATH: der ausgewählte Pfad für den Import der Regeln
  • REGION: Geben Sie entweder --global für eine globale oder REGION für eine regionale Richtlinie an.

API

Verwenden Sie die Methode networkFirewallPolicies.patch in der Compute Engine API, um die geänderten Netzwerk-Firewallrichtlinien zu importieren:

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/global/firewallPolicy/FIREWALL_POLICY_NAME
  

Ersetzen Sie Folgendes:

  • PROJECT: die Projekt-ID der Richtlinienregeln für Netzwerk-Firewalls
  • FIREWALL_POLICY_NAME: der Name der Richtlinie für Netzwerkfirewalls, die Sie exportieren möchten

Verwenden Sie die Methode regionNetworkFirewallPolicies.patch in der Compute Engine API, um die geänderten Regeln für regionale Netzwerk-Firewallrichtlinien zu importieren:

  PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/firewallPolicies/FIREWALL_POLICY_NAME
   

Ersetzen Sie Folgendes:

  • PROJECT: die Projekt-ID der regionalen Richtlinien für Netzwerk-Firewalls
  • REGION: die Region der Firewallrichtlinien
  • FIREWALL_POLICY_NAME: der Name der Firewallrichtlinie, die Sie exportieren möchten

    Diese Anfrage gibt eine Ressourcendefinition für Netzwerk-Firewallrichtlinien zurück.

Nächste Schritte

  • Eine Einführung in Firewallregeln finden Sie unter Firewallrichtlinien-Regeln.
  • Eine Übersicht über die Batchaktualisierung von Firewallrichtlinienregeln finden Sie unter Übersicht.