Google Cloud Armor Adaptive Protection konfigurieren

Auf dieser Seite finden Sie Informationen zum Konfigurieren des adaptiven Schutzes. Bevor Sie Adaptive Protection konfigurieren, sollten Sie sich mit den Informationen in der Übersicht über Adaptive Protection und den Anwendungsfällen für Adaptive Protection vertraut machen.

Hinweise

In den folgenden Abschnitten werden alle IAM-Rollen (Identity and Access Management) und Berechtigungen beschrieben, die zum Konfigurieren von Google Cloud Armor-Sicherheitsrichtlinien erforderlich sind. Für die Anwendungsfälle in diesem Dokument benötigen Sie nur die Berechtigung compute.securityPolicies.update.

IAM-Berechtigungen für Google Cloud Armor-Sicherheitsrichtlinien einrichten

Für die folgenden Vorgänge ist die Rolle Compute-Sicherheitsadministrator (roles/compute.securityAdmin) für Identity and Access Management (IAM) erforderlich:

  • Google Cloud Armor-Sicherheitsrichtlinien konfigurieren, ändern, aktualisieren und löschen
  • Mithilfe der folgenden API-Methoden:
    • SecurityPolicies insert
    • SecurityPolicies delete
    • SecurityPolicies patch
    • SecurityPolicies addRule
    • SecurityPolicies patchRule
    • SecurityPolicies removeRule

Ein Nutzer mit der Rolle Compute-Netzwerkadministrator (roles/compute.networkAdmin) kann die folgenden Vorgänge ausführen:

  • Google Cloud Armor-Sicherheitsrichtlinie für einen Back-End-Dienst festlegen
  • Mithilfe der folgenden API-Methoden:
    • BackendServices setSecurityPolicy
    • BackendServices list (nur gcloud)

Nutzer mit der Rolle Sicherheitsadministrator (roles/iam.securityAdmin) und der Rolle „Compute-Netzwerkadministrator“ können sich die Google Cloud Armor-Sicherheitsrichtlinien mithilfe der SecurityPolicies API-Methoden get, list und getRule ansehen.

IAM-Berechtigungen für benutzerdefinierte Rollen einrichten

In der folgenden Tabelle sind die grundlegenden Berechtigungen der IAM-Rollen und die zugehörigen API-Methoden aufgeführt.

IAM-Berechtigung API-Methoden
compute.securityPolicies.create SecurityPolicies insert
compute.securityPolicies.delete SecurityPolicies delete
compute.securityPolicies.get SecurityPolicies get
SecurityPolicies getRule
compute.securityPolicies.list SecurityPolicies list
compute.securityPolicies.use BackendServices setSecurityPolicy
compute.securityPolicies.update SecurityPolicies patch
SecurityPolicies addRule
SecurityPolicies patchRule
SecurityPolicies removeRule
compute.backendServices.setSecurityPolicy BackendServices setSecurityPolicy

Adaptive Protection aktivieren

Führen Sie die folgenden Schritte aus, um Adaptive Protection für Ihre Sicherheitsrichtlinie zu aktivieren. Adaptive Protection wird für jede Sicherheitsrichtlinie einzeln angewendet.

Console

So aktivieren Sie Adaptive Protection für eine Sicherheitsrichtlinie:

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.

    Netzwerksicherheit aufrufen

  2. Klicken Sie auf der Seite Richtlinien auf den Namen einer Sicherheitsrichtlinie.

  3. Klicken Sie auf Bearbeiten.

  4. Wählen Sie unter Adaptive Protection die Option Aktivieren aus.

  5. Klicken Sie auf Aktualisieren.

So deaktivieren Sie Adaptive Protection für eine Sicherheitsrichtlinie:

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.

    Netzwerksicherheit aufrufen

  2. Klicken Sie auf der Seite Richtlinien auf den Namen einer Sicherheitsrichtlinie.

  3. Klicken Sie auf Bearbeiten.

  4. Entfernen Sie unter Adaptive Protection das Häkchen bei Aktivieren.

  5. Klicken Sie auf Aktualisieren.

gcloud

So aktivieren Sie Adaptive Protection für eine Sicherheitsrichtlinie:

gcloud compute security-policies update MY-SECURITY-POLICY \
    --enable-layer7-ddos-defense

So deaktivieren Sie Adaptive Protection für eine Sicherheitsrichtlinie:

gcloud compute security-policies update MY-SECURITY-POLICY \
    --no-enable-layer7-ddos-defense

Detaillierte Modelle konfigurieren

Mit der Funktion für detaillierte Modelle können Sie bestimmte Hosts oder Pfade als detailliert konfigurierte Einheiten konfigurieren, die von Adaptive Protection analysiert werden. In den folgenden Beispielen erstellen Sie detaillierte Traffic-Einheiten für jeden Host, passen eine detaillierte Traffic-Einheit an und konfigurieren den adaptiven Schutz so, dass Maßnahmen ergriffen werden, wenn der Traffic die Anzahl der Abfragen pro Sekunde (QPS) überschreitet. Weitere Informationen zu detaillierten Modellen finden Sie in der Übersicht über den adaptiven Schutz.

Detaillierte Traffic-Einheiten konfigurieren

In den Beispielen in diesem Abschnitt wird der Befehl add-layer7-ddos-defense-threshold-config mit einigen oder allen der folgenden Flags verwendet:

Flag Beschreibung
--threshold-config-name Der Name der Grenzwertkonfiguration.
--traffic-granularity-configs Konfigurationsoptionen zum Aktivieren des adaptiven Schutzes für die angegebene Dienstgranularität.
--auto-deploy-impacted-baseline-threshold Grenzwert für die geschätzte Auswirkung von Adaptive Protection auf den Basistraffic der vorgeschlagenen Risikominderungsregel für einen erkannten Angriff. Automatische Schutzmaßnahmen werden nur angewendet, wenn der Grenzwert nicht überschritten wird.
--auto-deploy-expiration-sec Die Dauer der Aktionen, die bei der automatischen Bereitstellung ausgeführt werden.
--detection-load-threshold Erkennungsgrenzwert basierend auf der Auslastung des Backend-Dienstes.
--detection-absolute-qps Erkennungsgrenzwert basierend auf absoluten Abfragen pro Sekunde.
--detection-relative-to-baseline-qps Erkennungsgrenzwert basierend auf den Abfragen pro Sekunde im Verhältnis zum Durchschnitt des Basistraffics.

Im ersten Beispiel konfigurieren Sie Adaptive Protection so, dass Angriffe auf Ihre Back-End-Dienste erkannt und unabhängige Abhilfemaßnahmen für jeden Host vorgeschlagen werden, ohne Standardgrenzwerte zu überschreiben.

gcloud

  1. Erstellen Sie eine Sicherheitsrichtlinie mit dem Namen POLICY_NAME oder verwenden Sie eine vorhandene Sicherheitsrichtlinie.
  2. Wenn Adaptive Protection noch nicht aktiviert ist, verwenden Sie den folgenden Befehl, um Adaptive Protection für Ihre Richtlinie zu aktivieren:
    gcloud compute security-policies update POLICY_NAME 
    --enable-layer7-ddos-defense
  3. Wenden Sie die Sicherheitsrichtlinie auf einen Back-End-Dienst mit mehreren Hosts an.
  4. Verwenden Sie den folgenden add-layer7-ddos-defense-threshold-config-Befehl mit dem Flag --traffic-granularity-configs, um eine detaillierte Besuchergruppe zu konfigurieren:
    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME 
    --threshold-config-name=per-host-config
    --traffic-granularity-configs=type=HTTP_HEADER_HOST;enableEachUniqueValue=true

Im zweiten Beispiel konfigurieren Sie unterschiedliche Grenzwerte für die automatische Bereitstellung und Erkennung für einige oder alle der detaillierten Traffic-Einheiten, die Sie im ersten Beispiel konfiguriert haben.

gcloud

  1. Wenn die automatische Bereitstellung von Adaptive Protection noch nicht aktiviert ist, erstellen Sie eine Platzhalterregel.
  2. Mit dem folgenden Befehl wird der Grenzwert für die automatische Bereitstellung für eine detaillierte Traffic-Einheit mit einem HTTP_HEADER_HOST von HOST und einem HTTP_PATH von PATH angepasst. Verwenden Sie diesen Befehl für jede detaillierte Traffic-Einheit, die Sie anpassen möchten. Ersetzen Sie die Variablen nach Bedarf für jeden Host und URL-Pfad:
    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME 
    --threshold-config-name=my-host-config
    --auto-deploy-impacted-baseline-threshold=0.01
    --auto-deploy-expiration-sec=3600
    --traffic-granularity-configs=type=HTTP_HEADER_HOST;value=HOST,type=HTTP_PATH;value=PATH

Erkennen, wenn das Angriffsvolumen den durchschnittlichen Basiswert für die Abfragen pro Sekunde überschreitet

Im folgenden Beispiel konfigurieren Sie den adaptiven Schutz so, dass ein Angriff nur erkannt wird, wenn das Angriffsvolumen den durchschnittlichen QPS-Wert der Baseline um mehr als 50 % übersteigt und die Last des Backend-Dienstes mehr als 90% seiner Kapazität beträgt.

gcloud

  1. Erstellen Sie eine Sicherheitsrichtlinie mit dem Namen POLICY_NAME oder verwenden Sie eine vorhandene Sicherheitsrichtlinie.
  2. Wenn Adaptive Protection noch nicht aktiviert ist, verwenden Sie den folgenden Befehl, um Adaptive Protection für Ihre Richtlinie zu aktivieren:

    gcloud compute security-policies update POLICY_NAME \
      --enable-layer7-ddos-defense
    
  3. Wenden Sie die Sicherheitsrichtlinie auf einen Back-End-Dienst an.

  4. Verwenden Sie den folgenden Befehl, um den adaptiven Schutz mit benutzerdefinierten Erkennungsgrenzwerten zu konfigurieren:

    gcloud compute security-policies add-layer7-ddos-defense-threshold-config POLICY_NAME \
       --threshold-config-name=my-customized-thresholds \
       --detection-load-threshold=0.9 \
       --detection-relative-to-baseline-qps=1.5
    

Nächste Schritte