Auf dieser Seite werden die Befehle für die Arbeit mit VPC-Firewallregeln (Virtual Private Cloud) und einige Beispiele für ihre Verwendung beschrieben. Mit VPC-Firewallregeln können Sie den Traffic zu oder von VM-Instanzen in einem VPC-Netzwerk (Virtual Private Cloud) anhand einer Portnummer, eines Tags oder eines Protokolls zulassen oder ablehnen.
Vorbereitung
Weitere Informationen zu VPC-Firewallregeln, wie z. B. implizierte Regeln und automatisch generierte Regeln für Standardnetzwerke, finden Sie unter VPC-Firewallregeln.
Sehen Sie sich vor dem Konfigurieren von Firewallregeln die Komponenten von Firewallregeln gründlich an, damit Sie sich mit den in Google Cloudverwendeten Firewallkomponenten vertraut machen.
VPC-Firewallregeln erstellen
VPC-Firewallregeln werden auf Netzwerkebene definiert und gelten nur für das Netzwerk, in dem sie erstellt werden. Der Name für jede Regel muss jedoch für das Projekt eindeutig sein.
Eine Firewallregel kann entweder IPv4- oder IPv6-Bereiche enthalten, aber nicht beides.
Wenn Sie eine Firewallregel erstellen, können Sie das Logging von Firewallregeln aktivieren. Wenn Sie das Logging aktivieren, können Sie Metadatenfelder ausschließen, um Speicherkosten zu sparen. Weitere Informationen finden Sie unter Logging von VPC-Firewallregeln verwenden.
Wenn Sie mehrere Dienstkonten für das Ziel- oder Quelldienstkontofeld angeben möchten, verwenden Sie die Google Cloud CLI, die API oder die Clientbibliotheken.
Das Standardnetzwerk bietet automatische Firewallregeln bei der Erstellung. Mit benutzerdefinierten und automatischen Netzwerken können Sie während der Netzwerkerstellung ähnliche Firewalls erstellen, wenn Sie die Google Cloud Konsole verwenden. Wenn Sie die gcloud CLI oder die API verwenden und ähnliche Firewallregeln erstellen möchten, die vom Standardnetzwerk bereitgestellt werden, finden Sie weitere Informationen unter Firewallregeln für gängige Anwendungsfälle konfigurieren.
Console
Rufen Sie in der Google Cloud Console die Seite Firewallrichtlinien auf.
Klicken Sie auf Firewallregel erstellen.
Geben Sie einen Namen für die Firewallregel ein.
Dieser Name muss für das Projekt eindeutig sein.
(Optional) So aktivieren Sie das Logging von Firewallregeln:
- Klicken Sie auf Logs > Ein.
- Wenn Sie Metadaten weglassen möchten, maximieren Sie Logdetails ansehen und entfernen Sie dann das Häkchen aus dem Kästchen Metadaten einschließen.
Geben Sie das Netzwerk für die Firewallregel an.
Legen Sie die Priorität der Regel fest.
Je niedriger die Zahl, desto höher die Priorität.
Wählen Sie unter Trafficrichtung die Option "Eingehend" oder "Ausgehend".
Wählen Sie unter Aktion bei Übereinstimmung die Option "Zulassen" oder "Ablehnen".
Geben Sie die Ziele der Regel an.
- Wenn diese Regel für alle Instanzen im Netzwerk gelten soll, wählen Sie All instances in the network aus.
- Wenn Sie die Regel auf bestimmte Instanzen nach Netzwerktag (Ziel) anwenden möchten, wählen Sie Angegebene Zieltags aus und geben Sie im Feld Zieltags die Tags ein, auf die Sie die Regel anwenden möchten.
- Wenn Sie die Regel auf bestimmte Instanzen nach verknüpftem Dienstkonto anwenden möchten, wählen Sie Angegebenes Dienstkonto aus und geben Sie unter Umfang des Dienstkontos an, ob sich das Dienstkonto im aktuellen oder in einem anderen Projekt befindet. Wählen Sie dann im Feld Zieldienstkonto den Namen des Dienstkontos aus oder geben Sie ihn ein.
Geben Sie für Eingangsregeln den Quellfilter an:
- Wenn Sie eingehenden Traffic nach IPv4-Quellbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie dann die CIDR-Blöcke in das Feld IPv4-Quellbereiche ein. Verwenden Sie
0.0.0.0/0für jede IPv4-Quelle. - Wenn Sie eingehenden Traffic nach IPv6-Quellbereichen filtern möchten, wählen Sie IPv6-Bereiche aus und geben Sie dann die CIDR-Blöcke in das Feld IPv6-Quellbereiche ein. Verwenden Sie
::/0für jede IPv6-Quelle. - Wenn Sie eingehenden Traffic nach Netzwerk-Tag filtern möchten, wählen Sie Quell-Tags aus und geben Sie dann die Netzwerk-Tags in das Feld Quell-Tags ein. Das Limit für die Anzahl der Quelltags finden Sie unter Limits pro Netzwerk. Das Filtern nach Quell-Tag ist nur verfügbar, wenn das Ziel nicht nach Dienstkonto angegeben ist.
- Wenn Sie eingehenden Traffic nach Dienstkonto filtern möchten, wählen Sie Dienstkonto aus und geben Sie unter Umfang des Dienstkontos an, ob sich das Dienstkonto im aktuellen oder in einem anderen Projekt befindet. Danach geben Sie das Dienstkonto im Feld Quelldienstkonto an. Das Filtern nach Quelldienstkonto ist nur verfügbar, wenn das Ziel nicht durch das Netzwerk-Tag angegeben ist.
- Geben Sie ggf. einen zweiten Quellfilter an. Sekundäre Quellfilter können nicht die gleichen Filterkriterien wie primäre Quellfilter verwenden. Quell-IP-Bereiche können in Kombination mit Quelltags oder einem Quelldienstkonto verwendet werden. Das effektive Source-Set ist die Vereinigung der Quellbereichs-IP-Adressen und der durch Netzwerktags oder Dienstkonten identifizierten Instanzen. Das heißt, wenn entweder der Quell-IP-Bereich oder die Quelltags (oder Quelldienstkonten) den Filterkriterien entsprechen, wird die Quelle in das effektive Source-Set aufgenommen.
- Quelltags und Quelldienstkonto können nicht zusammen verwendet werden.
Weitere Informationen zur Verwendung eines Dienstkontos und eines Netzwerk-Tags finden Sie unter Nach Dienstkonto oder Netzwerk-Tag filtern.
- Wenn Sie eingehenden Traffic nach IPv4-Quellbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie dann die CIDR-Blöcke in das Feld IPv4-Quellbereiche ein. Verwenden Sie
Geben Sie den Quellfilter für eine Regel für eingehenden Traffic an:
- Wenn Sie eingehenden Traffic nach IPv4-Zielbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv4-Zielbereiche ein. Verwenden Sie
0.0.0.0/0für jedes IPv4-Ziel. - Wenn Sie eingehenden Traffic nach IPv6-Zielbereichen filtern möchten, wählen Sie IPv6-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv6-Zielbereiche ein. Verwenden Sie
::/0für jedes IPv6-Ziel.
Weitere Informationen finden Sie unter Ziel für Regeln für eingehenden Traffic.
- Wenn Sie eingehenden Traffic nach IPv4-Zielbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv4-Zielbereiche ein. Verwenden Sie
Geben Sie für Ausgangsregeln den Zielfilter an:
- Wenn Sie ausgehenden Traffic nach IPv4-Zielbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv4-Zielbereiche ein. Verwenden Sie
0.0.0.0/0für jedes IPv4-Ziel. - Wenn Sie ausgehenden Traffic nach IPv6-Zielbereichen filtern möchten, wählen Sie IPv6-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv6-Zielbereiche ein. Verwenden Sie
::/0für jedes IPv6-Ziel.
Weitere Informationen finden Sie unter Ziel für Regeln für ausgehenden Traffic.
- Wenn Sie ausgehenden Traffic nach IPv4-Zielbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv4-Zielbereiche ein. Verwenden Sie
Geben Sie den Zielfilter für eine Regel für ausgehenden Traffic an:
- Wenn Sie ausgehenden Traffic nach IPv4-Quellbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv4-Quellbereiche ein. Verwenden Sie
0.0.0.0/0für jede IPv4-Quelle. - Wenn Sie ausgehenden Traffic nach IPv6-Quellbereichen filtern möchten, wählen Sie IPv6-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv6-Quellbereiche ein. Verwenden Sie
::/0für jedes IPv6-Ziel.
Weitere Informationen finden Sie unter Quelle für Regeln für ausgehenden Traffic.
- Wenn Sie ausgehenden Traffic nach IPv4-Quellbereichen filtern möchten, wählen Sie IPv4-Bereiche aus und geben Sie die CIDR-Blöcke in das Feld IPv4-Quellbereiche ein. Verwenden Sie
Definieren Sie die Protokolle und Ports, auf die Sie die Regel anwenden möchten:
- Wenn die Regel auf alle Protokolle und Zielports angewendet werden soll, wählen Sie je nach Aktion Alle zulassen oder Alle ablehnen aus.
- Wählen Sie Angegebene Protokolle und Ports aus, um bestimmte Protokolle und Ports zu definieren:
- Wählen Sie TCP aus, um das TCP-Protokoll und die entsprechenden Zielports einzuschließen. Geben Sie
alloder eine durch Kommas getrennte Liste von Ziel-Ports ein, z. B.20-22, 80, 8080. - Wählen Sie UDP aus, um das UDP-Protokoll und die entsprechenden Zielports einzuschließen. Geben Sie
alloder eine durch Kommas getrennte Liste von Ziel-Ports ein, z. B.67-69, 123. - Wählen Sie Sonstige aus, um Protokolle wie
icmp,sctpoder eine Protokollnummer einzuschließen. Verwenden Sie beispielsweiseicmpoder die Protokollnummer1für IPv4 ICMP. Verwenden Sie die Protokollnummer58für IPv6 ICMP.
- Wählen Sie TCP aus, um das TCP-Protokoll und die entsprechenden Zielports einzuschließen. Geben Sie
Weitere Informationen finden Sie unter Protokolle und Zielports.
(Optional) Wenn Sie den Erzwingungsstatus auf Deaktiviert setzen, wird die Firewallregel zwar erstellt, jedoch nicht erzwungen. Klicken Sie auf Regel deaktivieren und wählen Sie Deaktiviert aus.
Klicken Sie auf Erstellen.
gcloud
Verwenden Sie zum Erstellen einer VPC-Firewallregel den Befehl gcloud compute firewall-rules create:
gcloud compute firewall-rules create RULE_NAME \
[--network NETWORK; default="default"] \
[--priority PRIORITY;default=1000] \
[--direction (ingress|egress|in|out); default="ingress"] \
[--action (deny | allow )] \
[--target-tags TAG[,TAG,...]] \
[--target-service-accounts=IAM_SERVICE_ACCOUNT[,IAM_SERVICE_ACCOUNT,...]] \
[--source-ranges CIDR_RANGE[,CIDR_RANGE,...]] \
[--source-tags TAG[,TAG, ...]] \
[--source-service-accounts=IAM_SERVICE_ACCOUNT[,IAM_SERVICE_ACCOUNT,...]] \
[--destination-ranges CIDR_RANGE[,CIDR_RANGE,...]] \
[--rules (PROTOCOL[:PORT[-PORT]],[PROTOCOL[:PORT[-PORT]],...]] | all ) \
[--disabled | --no-disabled] \
[--enable-logging | --no-enable-logging] \
[--logging-metadata LOGGING_METADATA]
Verwenden Sie die unten aufgeführten Parameter. Weitere Informationen zu den einzelnen Parametern finden Sie unter SDK-Referenzdokumentation.
--networkDas Netzwerk für die Regel. Bei Auslassung wird die Regel im Netzwerkdefaulterstellt. Verwenden Sie dieses Feld, wenn Sie kein Standardnetzwerk haben oder die Regel in einem bestimmten Netzwerk erstellen möchten.--priorityEin numerischer Wert, der die Priorität für die Regel angibt. Je niedriger die Zahl, desto höher die Priorität.--directionDie Richtung des Traffics, entwederINGRESSoderEGRESS.--actionDie Aktion bei Übereinstimmung, entwederallowoderdeny. Muss mit dem Flag--rulesverwendet werden.- Sie haben folgende Möglichkeiten, ein Ziel anzugeben:
Verwenden Sie für die Regel für eingehenden Traffic
--destination-ranges, um IPv4- oder IPv6-Adressbereiche im CIDR-Format anzugeben. Wenn--destination-rangesweggelassen wird, ist das Ziel für eingehenden Traffic eine beliebige IPv4-Adresse,0.0.0.0/0. Weitere Informationen finden Sie unter Ziele für Regeln für eingehenden Traffic und Ziel- und IP-Adressen für Regeln für eingehenden Traffic.Geben Sie für Eingangsregeln eine Quelle an:
--source-rangesVerwenden Sie dieses Flag, um Bereiche der IPv4- oder IPv6-Quelladressen im CIDR-Format anzugeben.- Wenn
--source-ranges,source-tagsund--source-service-accountsweggelassen werden, ist die Quelle für eingehenden Traffic eine beliebige IPv4-Adresse,0.0.0.0/0. --source-tagsVerwenden Sie dieses Flag, um Quellinstanzen nach Netzwerktags anzugeben. Das Filtern nach Quell-Tag ist nur verfügbar, wenn das Ziel nicht nach Dienstkonto angegeben ist. Weitere Informationen finden Sie unter Nach Dienstkonto oder Netzwerk-Tag filtern.--source-rangesund--source-tagskönnen zusammen verwendet werden. Wenn beide angegeben sind, ist der effektive Quellsatz die Vereinigung der Quellbereich-IP-Adressen und der durch Netzwerktags identifizierten Instanzen, auch wenn die getaggten Instanzen keine IPs in den Quellbereichen haben.--source-service-accountsVerwenden Sie dieses Flag, um Quellinstanzen nach verwendetem Dienstkonto anzugeben. Das Filtern nach Quelldienstkonto ist nur verfügbar, wenn das Ziel nicht nach Netzwerk-Tag angegeben ist. Weitere Informationen finden Sie unter Nach Dienstkonto oder Netzwerk-Tag filtern.--source-rangesund--source-service-accountskönnen zusammen verwendet werden. Wenn beide angegeben sind, ist der effektive Quellsatz die Vereinigung der Quellbereich-IP-Adressen und der durch Quelldienstkonten identifizierten Instanzen, auch wenn die durch Quelldienstkonten identifizierten Instanzen keine IPs in den Quellbereichen haben.
Verwenden Sie Folgendes, um die Quelle zu optimieren:
--source-ranges. Geben Sie IPv4- oder IPv6-Adressbereiche im CIDR-Format an. Wenn--source-rangesweggelassen wird, ist die Quelle für ausgehenden Traffic eine beliebige IPv4-Adresse,0.0.0.0/0. Weitere Informationen finden Sie unter Quellen für Regeln für ausgehenden Traffic und Ziel- und IP-Adressen für Regeln für ausgehenden Traffic.Geben Sie für Ausgangsregeln ein Ziel an:
--destination-rangesVerwenden Sie dieses Flag, um Bereiche der IPv4- oder IPv6-Zieladressen im CIDR-Format anzugeben.- Wenn
--destination-rangesweggelassen wird, ist das Ziel für ausgehenden Traffic eine beliebige IPv4-Adresse,0.0.0.0/0.
--rulesEine Liste der Protokolle und Zielports, auf die die Regel angewendet wird. Verwenden Sieall, um die Regel auf alle Protokolle und Ports anzuwenden. Erfordert das Flag--action.Standardmäßig werden Firewallregeln automatisch erstellt und erzwungen. Sie können dieses Verhalten jedoch ändern.
- Bei Auslassung von sowohl
--disabledals auch--no-disabledwird die Firewallregel erstellt und erzwungen. --disabledFügen Sie dieses Flag hinzu, um die Firewallregel zu erstellen, jedoch nicht zu erzwingen. Die Firewallregel bleibt deaktiviert, bis Sie die Firewallregel aktualisieren, um sie zu aktivieren.--no-disabledFügen Sie dieses Flag hinzu, damit die Firewallregel erzwungen wird.
- Bei Auslassung von sowohl
--enable-logging | --no-enable-loggingSie können beim Erstellen oder Aktualisieren einer Regel das Logging von Firewallregeln aktivieren. Mit dem Logging von Regeln in VPC-Firewalls können Sie die Auswirkungen Ihrer Firewallregeln überwachen, prüfen und analysieren. Weitere Informationen finden Sie unter Logging von VPC-Firewallregeln.--logging-metadataWenn Sie das Logging aktivieren, sind in den Logs standardmäßig Basis- und Metadatenfelder enthalten. Sie können Metadatenfelder ausschließen, um Speicherkosten zu sparen. Weitere Informationen finden Sie unter Logging von VPC-Firewallregeln verwenden.
Terraform
Zum Erstellen einer Firewallregel können Sie eine google_compute_firewall-Ressource verwenden.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
API
Erstellen Sie eine VPC-Firewallregel.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls
{
"name": "RULE_NAME",
"network": "projects/PROJECT-ID/global/networks/NETWORK",
... other fields
}
Ersetzen Sie dabei Folgendes:
PROJECT_ID: die ID des Projekts, in dem sich das VPC-Netzwerk befindet.NETWORK: der Name des VPC-Netzwerks, in dem die Firewallregel erstellt wird.RULE_NAME: der Name der Firewallregel.Geben Sie für eine Firewallregel für eingehenden Traffic die Quelle und das Ziel für eingehenden Traffic an:
Verwenden Sie das Feld
sourceRanges,sourceTagsoder