Mit Adressgruppen können Sie mehrere IP-Adressen und IP-Adressbereiche zu eine einzelne benannte logische Einheit, die Sie für mehrere Produkte verwenden können. Dieses Dokument zeigt Ihnen, wie Sie Adressgruppen mit der Google Cloud Armor-Sicherheit verwenden Richtlinien. Sie benötigen ein aktives Google Cloud Armor Enterprise-Abo zur Verwendung Adressgruppen.
IAM-Rollen
Zum Erstellen und Verwalten einer Adressgruppe benötigen Sie die Rolle „Netzwerkadministrator“ (compute.networkAdmin
) oder die Rolle „Sicherheitsadministrator“ (compute.securityAdmin
). Sie können auch eine benutzerdefinierte Rolle mit einem entsprechenden Satz von Berechtigungen definieren.
Die folgende Tabelle enthält eine Liste der IAM-Berechtigungen (Identity and Access Management) erforderlich, um eine Reihe von Aufgaben für Adressgruppen auszuführen.
Aufgabe | Name der IAM-Rolle | IAM-Berechtigungen |
---|---|---|
Adressgruppen erstellen und verwalten | compute.networkAdmin
|
networksecurity.addressGroups.* |
Adressgruppen suchen und ansehen | compute.networkUser |
networksecurity.addressGroups.list
|
Weitere Informationen dazu, welche Rollen bestimmte IAM-Berechtigungen enthalten, finden Sie in der Referenz für IAM-Berechtigungen.
Adressgruppen erstellen oder ändern
In den folgenden Abschnitten wird erläutert, wie Sie Adressgruppen erstellen, Adressgruppen hinzufügen und entfernen und Adressgruppen löschen
Adressgruppe erstellen
Beim Erstellen einer Adressgruppe müssen Sie deren Kapazität und IP-Adresse angeben
Version mit den Flags --capacity
bzw. --type
. Sie können nicht
ändern Sie diese Werte, nachdem Sie die Adressgruppe erstellt haben.
Darüber hinaus kann die maximale Kapazität für Google Cloud Armor höher sein als die maximale Kapazität für andere Produkte wie Cloud Next Generation Firewall. Wenn also Sie dieselbe Adressgruppe für mehr als ein Produkt verwenden möchten, müssen Sie Stellen Sie die Kapazität so ein, dass sie kleiner oder gleich der niedrigsten maximalen Kapazität unter für diese Produkte.
Console
Rufen Sie in der Google Cloud Console die Seite Adressgruppen auf.
Wählen Sie im Projektauswahlmenü, falls verfügbar, Ihr Projekt aus.
Klicken Sie auf Adressgruppe erstellen.
Geben Sie im Feld Name einen Namen ein.
Optional: Geben Sie in das Feld Beschreibung eine Beschreibung ein.
Wählen Sie für Umfang die Option Global aus.
Wählen Sie als Typ IPv4 oder IPv6 aus.
Wählen Sie für Zweck die Option Cloud Armor aus. wählen Sie alternativ Firewall und Cloud Armor, wenn Sie auch die Adressgruppe verwenden möchten mit Cloud-Richtlinien der nächsten Generation.
Weitere Informationen zur Auswahl eines Zwecks finden Sie unter Adressgruppenspezifikation an.
Geben Sie im Feld Kapazität die Kapazität der Adressgruppe ein.
Listen Sie im Feld IP-Adressen die IP-Adressen oder IP-Bereiche auf, die die Sie durch Kommas getrennt in die Adressgruppe aufnehmen möchten. Beispiel:
1.1.1.0/24,1.2.0.0
Klicken Sie auf Erstellen.
gcloud
Verwenden Sie dazu folgendes Beispiel:
gcloud beta network-security address-groups create
-Befehl
zum Erstellen einer Adressgruppe namens GROUP_NAME mit einem
Kapazität von 1.000 IPv4
-Adressen, die mit beiden verwendet werden können
Google Cloud Armor oder Cloud NGFW:
gcloud beta network-security address-groups create GROUP_NAME \ --location global \ --description "address group description" \ --capacity 1000 \ --type IPv4 \ --purpose DEFAULT,CLOUD_ARMOR
Alternativ können Sie eine Adressgruppe mit einer höheren Kapazität erstellen, indem Sie
ausschließlich für CLOUD_ARMOR
bestimmt. Im folgenden Beispiel erstellen Sie
Eine Adressgruppe mit einer Kapazität von 10.000 IPv6
-IP-Adressbereichen:
gcloud beta network-security address-groups create GROUP_NAME \ --location global \ --description "address group description" \ --capacity 10000 \ --type IPv6 \ --purpose CLOUD_ARMOR
Einer Adressgruppe Elemente hinzufügen
Nachdem Sie eine Adressgruppe erstellt haben, können Sie über die Google Cloud Console Elemente hinzufügen
oder die
gcloud beta network-security address-groups add-items
-Befehl
Console
Rufen Sie in der Google Cloud Console die Seite Adressgruppen auf.
Wählen Sie im Projektauswahlmenü, falls verfügbar, Ihr Projekt aus.
Wenn Sie eine Adressgruppe bearbeiten möchten, klicken Sie auf ihren Namen.
Klicken Sie auf Bearbeiten.
Fügen Sie im Feld IP-Adressen die neuen Elemente Liste von IP-Adressen. Alternativ können Sie auf Adressen importieren klicken, um eine CSV-Datei mit einer Liste von IP-Adressen hochladen.
Klicken Sie auf Speichern.
gcloud
Im folgenden Beispiel fügen Sie die IP-Adressen 192.168.1.2
,
192.168.1.8
und 192.168.1.9
mit der Adressgruppe GROUP_NAME.
Mit dem Flag --item
geben Sie eine durch Kommas getrennte Liste von Elementen an:
gcloud beta network-security address-groups add-items GROUP_NAME \ --location global \ --items 192.168.1.2,192.168.1.8,192.168.1.9
Elemente aus einer Adressgruppe entfernen
Über die Google Cloud Console können Sie Elemente aus einer Adressgruppe entfernen
oder die
gcloud beta network-security address-groups remove-items
-Befehl
Console
Rufen Sie in der Google Cloud Console die Seite Adressgruppen auf.
Wählen Sie im Projektauswahlmenü, falls verfügbar, Ihr Projekt aus.
Wenn Sie eine Adressgruppe bearbeiten möchten, klicken Sie auf ihren Namen.
Klicken Sie auf Bearbeiten.
Löschen Sie im Feld IP-Adressen die Elemente, die Sie entfernen möchten. aus der durch Kommas getrennten Liste von IP-Adressen aus.
Klicken Sie auf Speichern.
gcloud
Mit dem folgenden Befehl werden die IP-Adressen 192.168.1.2
, 192.168.1.8
,
und 192.168.1.9
, die Sie im vorherigen Befehl hinzugefügt haben:
gcloud beta network-security address-groups remove-items GROUP_NAME \ --location global \ --items 192.168.1.2,192.168.1.8,192.168.1.9
Adressgruppen löschen
Sie können eine Adressgruppe nicht löschen, wenn von einer Ressource auf sie verwiesen wird, einschließlich eines Firewall- oder Sicherheitsrichtlinie. So löschen Sie eine Adresse Gruppe:
Console
Rufen Sie in der Google Cloud Console die Seite Adressgruppen auf.
Wählen Sie im Projektauswahlmenü, falls verfügbar, Ihr Projekt aus.
Wählen Sie das Kästchen neben der Adressgruppe aus, die Sie löschen möchten. Achten Sie darauf, dass kein Verweis auf die ausgewählte Adressgruppe Firewall- oder Sicherheitsrichtlinie.
Klicken Sie auf Löschen und dann noch einmal auf Löschen, um den Löschvorgang zu bestätigen.
gcloud
Im folgenden Beispiel wird die Methode
gcloud beta network-security address-groups delete
-Befehl
um eine Adressgruppe namens GROUP_NAME zu löschen.
gcloud beta network-security address-groups delete GROUP_NAME \ --location global
Adressgruppen mit Sicherheitsrichtlinien verwenden
Nachdem Sie eine Adressgruppe erstellt und ihr IP-Adressen hinzugefügt haben, können Sie Sie können es mit jeder vorhandenen Google Cloud Armor-Back-End-Sicherheitsrichtlinie verwenden. Die Die folgenden Beispiele zeigen zwei verschiedene Möglichkeiten, Adressgruppen zu verwenden.
Gruppe von IP-Adressen ablehnen
Stellen Sie sich für dieses Beispiel vor, Sie haben eine IP-Adressgruppe namens
BAD_IPS durch 10.000 IP-Adressen, von denen Sie wissen, dass sie schädlich sind. Ich
kann alle diese IP-Adressen mit einer einzigen Sicherheitsrichtlinie ablehnen.
deny
-Regel mit der folgenden Übereinstimmungsbedingung:
evaluateAddressGroup('BAD_IPS', origin.ip)
Gruppe von IP-Adressbereichen in mehreren Sicherheitsrichtlinien wiederverwenden
Stellen Sie sich für dieses Beispiel vor, Sie haben
dieselbe Liste von 10.000 IP-Adressen wie
im vorherigen Beispiel gezeigt, aber einige der IP-Adressen sind bekanntermaßen
Web-Crawler. Sie möchten alle diese IP-Adressen von einem Backend blockieren.
und den Web-Crawlern Zugriff auf andere Backend-Dienste gewähren,
Suchmaschinenoptimierung (SEO) zu verstehen. Führen Sie die folgenden Schritte aus, um alle
IP-Adressen haben Zugriff auf BACKEND_SERVICE_1
für den Zugriff auf die Bereiche 66.249.77.32/27
und 66.249.77.64/27
BACKEND_SERVICE_2:
- Erstellen Sie eine Back-End-Sicherheitsrichtlinie namens POLICY_1 und hängen Sie sie an. an BACKEND_SERVICE_1.
Erstellen Sie in POLICY_1 eine
deny
-Regel mit der folgenden Übereinstimmung Bedingung:evaluateAddressGroup('BAD_IPS', origin.ip)
Erstellen Sie eine zweite Back-End-Sicherheitsrichtlinie mit dem Namen POLICY_2 und an BACKEND_SERVICE_2 anhängen.
Erstellen Sie in POLICY_2 eine
deny
-Regel mit der folgenden Übereinstimmung Bedingung, die66.249.77.32/27
und66.249.77.64/27
ausschließt:evaluateAddressGroup('BAD_IPS', origin.ip, [66.249.77.32/27, 66.249.77.64/27])
Adressgruppe für den Abgleich mit Nutzer-IP-Adressen verwenden
Stellen Sie sich für dieses Beispiel vor, Sie haben eine IP-Adressgruppe namens
BAD_IPS durch 10.000 IP-Adressen, von denen Sie wissen, dass sie schädlich sind. In
Außerdem verwenden Sie einen Upstream-Proxy, der Informationen über die
Ursprungskunden im Header. Sie können alle diese IP-Adressen mit
eine einzelne deny
-Regel der Sicherheitsrichtlinie mit der folgenden Übereinstimmung
Bedingung:
evaluateAddressGroup('BAD_IPS', origin.user_ip)
Weitere Informationen zu IP-Adressen von Nutzern finden Sie unter Regeln für Sprachattribute festlegen.