Lernziele
In diesem Anleitung werden die folgenden Aufgaben erläutert:
- Zwei benutzerdefinierte VPC-Netzwerke mit Subnetzen erstellen
- Erstellen Sie drei VM-Instanzen (zwei Nutzer-VMs in separaten Subnetzen eines VPC-Netzwerks und eine Ersteller-VM in einem zweiten VPC-Netzwerk). Alle VMs werden ohne externe IP-Adresse erstellt.
- Installieren Sie den Apache-Server auf der Ersteller-VM.
- VPC-Netzwerk-Peering erstellen
- Erstellen Sie einen Cloud Router und ein Cloud NAT-Gateway, mit denen die Ersteller-VM auf das öffentliche Internet zugreifen kann.
- Projektbezogene Adressgruppe erstellen.
- Erstellen Sie eine globale Netzwerk-Firewallrichtlinie mit folgenden Regeln:
- IAP-SSH-Verbindung (Identity-Aware Proxy) zu den VMs zulassen.
- Erlauben Sie Traffic von der zulässigen Nutzer-VM zur Ersteller-VM mithilfe der projektbezogenen Adressgruppe.
- Die Verbindung testen
Das folgende Diagramm zeigt den Traffic zwischen Ersteller- und Nutzer-VMs in der Region us-central1
innerhalb von zwei benutzerdefinierten VPC-Netzwerken. Eine globale Netzwerk-Firewallrichtlinie verwendet eine projektbezogene Adressgruppenregel, um eingehenden Traffic zwischen den VMs vm-consumer-allowed
und vm-producer
zuzulassen.
Traffic zwischen der VM vm-consumer-blocked
und der VM vm-producer
wird abgelehnt, da jede VM eine implizite Firewallregel für eingehenden Traffic hat, die jeglichen Traffic ablehnt.
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.
- Aktivieren Sie die Compute Engine API für Ihr Projekt.
- Sie benötigen die Rolle Compute-Netzwerkadministrator (
roles/compute.networkAdmin
). - Aktivieren Sie die Identity-Aware Proxy API für Ihr Projekt.
- Wenn Sie lieber mit der Befehlszeile arbeiten möchten, installieren Sie das Google Cloud CLI. Informationen zum Konzept und zur Installation des Tools finden Sie in der gcloud-CLI-Übersicht.
Hinweis: Wenn Sie die Google Cloud CLI noch nicht ausgeführt haben, initialisieren Sie Ihr gcloud CLI-Verzeichnis. Führen Sie dazu den Befehl
gcloud init
aus.
Nutzer-VPC-Netzwerk mit Subnetzen erstellen
In diesem Abschnitt erstellen Sie ein Nutzer-VPC-Netzwerk mit zwei IPv4-Subnetzen: subnet-consumer-allowed
und subnet-consumer-blocked
.
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Klicken Sie auf VPC-Netzwerk erstellen.
Geben Sie für Name
vpc-consumer
ein.Wählen Sie unter Modus für Subnetzerstellung die Option Benutzerdefiniert aus.
Legen Sie im Abschnitt Neues Subnetz folgende Konfigurationsparameter für das Subnetz fest:
- Name:
subnet-consumer-allowed
- Region:
us-central1
- IPv4-Bereich:
192.168.10.0/29
- Name:
Klicken Sie auf Fertig.
Klicken Sie auf Subnetz hinzufügen und geben Sie folgende Konfigurationsparameter an:
- Name:
subnet-consumer-blocked
- Region:
us-central1
- IPv4-Bereich:
192.168.20.0/29
- Name:
Klicken Sie auf Fertig.
Klicken Sie auf Erstellen.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
Führen Sie den folgenden Befehl aus, um ein VPC-Netzwerk zu erstellen:
gcloud compute networks create vpc-consumer \ --subnet-mode=custom
Klicken Sie im Dialogfeld Cloud Shell autorisieren auf Autorisieren.
Führen Sie folgenden Befehl aus, um ein Subnetz zu erstellen:
gcloud compute networks subnets create subnet-consumer-allowed \ --network=vpc-consumer \ --region=us-central1 \ --range=192.168.10.0/29
Führen Sie folgenden Befehl aus, um ein weiteres Subnetz zu erstellen:
gcloud compute networks subnets create subnet-consumer-blocked \ --network=vpc-consumer \ --region=us-central1 \ --range=192.168.20.0/29
Ersteller-VPC-Netzwerk mit Subnetz erstellen
In diesem Abschnitt erstellen Sie ein Ersteller-VPC-Netzwerk mit einem IPv4-Subnetz.
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Klicken Sie auf VPC-Netzwerk erstellen.
Geben Sie für Name
vpc-producer
ein.Wählen Sie unter Modus für Subnetzerstellung die Option Benutzerdefiniert aus.
Legen Sie im Abschnitt Neues Subnetz folgende Konfigurationsparameter für das Subnetz fest:
- Name:
subnet-vpc-producer
- Region:
us-central1
- IPv4-Bereich:
172.16.10.0/29
- Name:
Klicken Sie auf Fertig.
Klicken Sie auf Erstellen.
gcloud
Führen Sie den folgenden Befehl aus, um ein VPC-Netzwerk zu erstellen:
gcloud compute networks create vpc-producer \ --subnet-mode=custom
Führen Sie folgenden Befehl aus, um das Subnetz zu erstellen:
gcloud compute networks subnets create subnet-vpc-producer \ --network=vpc-producer \ --region=us-central1 \ --range=172.16.10.0/29
Cloud Router und Cloud NAT-Gateway erstellen
Damit die VM vm-producer
auf das öffentliche Internet zugreifen kann, erstellen Sie einen Cloud Router und ein Cloud NAT-Gateway.
Console
Wechseln Sie in der Google Cloud Console zur Seite Cloud NAT.
Klicken Sie auf Erste Schritte oder NAT-Gateway erstellen.
Geben Sie als Gatewayname
nat-gateway-addressgrp
ein.Wählen Sie als NAT-Typ Öffentlich aus.
Geben Sie im Bereich Cloud Router wählen folgende Konfigurationsparameter an:
- Netz:
vpc-producer
- Region:
us-central1 (lowa)
- Cloud Router: Klicken Sie auf Neuen Router erstellen.
- Geben Sie für Name
router-addressgrp
ein. - Klicken Sie auf Erstellen.
- Geben Sie für Name
- Netz:
Klicken Sie auf Erstellen.
gcloud
Führen Sie den folgenden Befehl aus, um einen Cloud Router zu erstellen:
gcloud compute routers create router-addressgrp \ --network=vpc-producer \ --region=us-central1
Führen Sie folgenden Befehl aus, um ein Cloud NAT-Gateway zu erstellen:
gcloud compute routers nats create nat-gateway-addressgrp \ --router=router-addressgrp \ --region=us-central1 \ --auto-allocate-nat-external-ips \ --nat-all-subnet-ip-ranges
VMs erstellen
Erstellen Sie in jedem Subnetz des VPC-Netzwerks, das Sie im vorherigen Abschnitt erstellt haben, VMs ohne externe IP-Adresse.
VM für das vom Nutzer zugelassene VPC-Netzwerk erstellen
Erstellen Sie eine VM im Subnetz subnet-consumer-allowed
.
Console
Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.
Geben Sie für Name
vm-consumer-allowed
ein.Wählen Sie bei Region die Option
us-central1 (Iowa)
aus.Maximieren Sie Erweiterte Optionen und dann Netzwerk.
Maximieren Sie im Bereich Netzwerkschnittstellen die Option Standard und geben Sie die folgenden Konfigurationsparameter an:
- Netz:
vpc-consumer
- Subnetzwerk:
subnet-consumer-allowed IPv4 (192.168.10.0/29)
- Externe IPv4-Adresse: Keine
- Netz:
Klicken Sie auf Fertig.
Klicken Sie auf Erstellen.
gcloud
gcloud compute instances create vm-consumer-allowed \ --network=vpc-consumer \ --zone=us-central1-a \ --stack-type=IPV4_ONLY \ --no-address \ --subnet=subnet-consumer-allowed
VM für das vom Nutzer blockierte VPC-Netzwerk erstellen
In diesem Abschnitt erstellen Sie eine VM im Subnetz subnet-consumer-blocked
.
Console
Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.
Geben Sie für Name
vm-consumer-blocked
ein.Wählen Sie bei Region die Option
us-central1 (Iowa)
aus.Maximieren Sie Erweiterte Optionen und dann Netzwerk.
Maximieren Sie im Bereich Netzwerkschnittstellen die Option Standard und geben Sie die folgenden Konfigurationsparameter an:
- Netz:
vpc-consumer
- Subnetzwerk:
subnet-consumer-blocked IPv4 (192.168.20.0/29)
- Externe IPv4-Adresse: Keine
- Netz:
Klicken Sie auf Fertig.
Klicken Sie auf Erstellen.
gcloud
gcloud compute instances create vm-consumer-blocked \ --network=vpc-consumer \ --zone=us-central1-a \ --stack-type=IPV4_ONLY \ --no-address \ --subnet=subnet-consumer-blocked
VM für das Ersteller-VPC-Netzwerk erstellen
Erstellen Sie eine VM im Subnetz subnet-vpc-producer
und installieren Sie einen Apache-Server darauf.
Console
Rufen Sie in der Google Cloud Console die Seite Instanz erstellen auf.
Geben Sie für Name
vm-producer
ein.Wählen Sie bei Region die Option
us-central1 (Iowa)
aus.Maximieren Sie Erweiterte Optionen und dann Netzwerk.
Maximieren Sie im Bereich Netzwerkschnittstellen die Option Standard und geben Sie die folgenden Konfigurationsparameter an:
- Netz:
vpc-producer
- Subnetzwerk:
subnet-vpc-producer IPv4 (172.16.10.0/29)
- Netz:
Klicken Sie auf Fertig.
Maximieren Sie den Bereich Verwaltung.
Geben Sie im Abschnitt Automatisierung das folgende Skript in das Feld Startskript ein:
#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl # Read VM network configuration: md_vm="http://169.254.169.254/computeMetadata/v1/instance/" vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )" filter="{print \$NF}" vm_network="$(curl $md_vm/network-interfaces/0/network \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" vm_zone="$(curl $md_vm/zone \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" # Apache configuration: echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \ tee /var/www/html/index.html systemctl restart apache2
Mit dem vorherigen Skript wird ein Apache-Webserver in dieser VM bereitgestellt und gestartet.
Klicken Sie auf Erstellen.
gcloud
Führen Sie den folgenden Befehl aus, um eine Ersteller-VM zu erstellen:
gcloud compute instances create vm-producer \ --network=vpc-producer \ --zone=us-central1-a \ --stack-type=IPV4_ONLY \ --no-address \ --subnet=subnet-vpc-producer \ --image-project=debian-cloud \ --image-family=debian-10 \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl # Read VM network configuration: md_vm="http://169.254.169.254/computeMetadata/v1/instance/" vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )" filter="{print \$NF}" vm_network="$(curl $md_vm/network-interfaces/0/network \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" vm_zone="$(curl $md_vm/zone \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" # Apache configuration: echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \ tee /var/www/html/index.html systemctl restart apache2'
Erstellen Sie eine VPC-Netzwerk-Peering-Verbindung
Wenn Sie Ihre VPC-Netzwerke vpc-consumer
und vpc-producer
im selben Projekt privat verbinden möchten, verwenden Sie VPC-Netzwerk-Peering. VPC-Netzwerk-Peering ermöglicht interne IP-Adressverbindungen zwischen zwei VPC-Netzwerken, unabhängig davon, ob die VPC-Netzwerke zum selben Projekt oder zur selben Organisation gehören.
Peering von vpc-consumer
mit vpc-producer
Zum erfolgreichen Einrichten des VPC-Netzwerk-Peerings müssen Sie die Peering-Verknüpfung für die Netzwerke vpc-consumer
und vpc-producer
separat konfigurieren.
Console
So erstellen Sie das VPC-Netzwerk-Peering zwischen den Netzwerken vpc-consumer
und vpc-producer
:
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerk-Peering auf.
Klicken Sie auf Verbindung erstellen.
Klicken Sie auf Weiter.
Geben Sie im Feld Name
peering-cp
ein.Wählen Sie unter Mein VPC-Netzwerk die Option
vpc-consumer
aus.Wählen Sie unter VPC-Netzwerkname die Option
vpc-producer
aus.Klicken Sie auf Erstellen.
gcloud
Führen Sie den folgenden Befehl aus, um das VPC-Netzwerk-Peering zwischen vpc-consumer
und vpc-producer
zu erstellen:
gcloud compute networks peerings create peering-cp \ --network=vpc-consumer \ --peer-network=vpc-producer \ --stack-type=IPV4_ONLY
Peering des Netzwerks vpc-producer
mit dem Netzwerk vpc-consumer
Console
So erstellen Sie VPC-Netzwerk-Peering zwischen vpc-producer
und vpc-consumer
:
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerk-Peering auf.
Klicken Sie auf Verbindung erstellen.
Klicken Sie auf Weiter.
Geben Sie im Feld Name
peering-pc
ein.Wählen Sie unter Mein VPC-Netzwerk die Option
vpc-producer
aus.Wählen Sie unter VPC-Netzwerkname die Option
vpc-consumer
aus.Klicken Sie auf Erstellen.
gcloud
Führen Sie den folgenden Befehl aus, um das VPC-Netzwerk-Peering zwischen vpc-producer
und vpc-consumer
zu erstellen:
gcloud compute networks peerings create peering-pc \ --network=vpc-producer \ --peer-network=vpc-consumer \ --stack-type=IPV4_ONLY
Globale Netzwerk-Firewallrichtlinie erstellen, um IAP zu aktivieren
Erstellen Sie zum Aktivieren von IAP eine globale Firewallrichtlinie für das Netzwerk und fügen Sie eine Firewallregel hinzu. IAP ermöglicht den Administratorzugriff auf die VM-Instanzen.
Die Firewallregel hat die folgenden Eigenschaften:
- Eingehender Traffic aus dem IP-Bereich
35.235.240.0/20
. Dieser Bereich enthält alle IP-Adressen, die IAP für die TCP-Weiterleitung verwendet. Eine Verbindung zu allen Ports, die über die IAP-TCP-Weiterleitung zugänglich sein sollen, z. B. Port
22
für SSH.
Console
So gewähren Sie IAP-Zugriff auf alle VM-Instanzen in den Netzwerken vpc-consumer
und vpc-producer
:
Rufen Sie in der Google Cloud Console die Seite der Firewall-Richtlinien auf.
Klicken Sie auf Firewallrichtlinie erstellen.
Geben Sie im Abschnitt Richtlinie konfigurieren unter Richtlinienname
fw-policy-addressgrp
ein.Wählen Sie unter Bereitstellungsbereich Global aus und klicken Sie auf Weiter.
Klicken Sie im Abschnitt Regeln hinzufügen auf Regel hinzufügen, um Regeln für Ihre Richtlinie zu erstellen.
- Geben Sie
100
als Priorität ein. - Wählen Sie für Traffic-Richtung die Option Eingehend aus.
- Wählen Sie für Aktion bei Übereinstimmung die Option Zulassen aus.
- Wählen Sie im Abschnitt Ziel als Zieltyp Alle Instanzen im Netzwerk aus.
- Geben Sie im Abschnitt Quelle unter IP-Bereiche
35.235.240.0/20
ein. - Wählen Sie im Bereich Protokolle und Ports Angegebene Protokolle und Ports aus.
- Klicken Sie das Kästchen TCP an und geben Sie für Ports den Wert
22
ein. - Klicken Sie auf Erstellen.
- Geben Sie
Klicken Sie auf Weiter.
Klicken Sie im Abschnitt Richtlinie mit VPC-Netzwerken verknüpfen auf Verknüpfen, um ein VPC-Netzwerk mit der Richtlinie zu verknüpfen.
Klicken Sie auf die Kästchen von
vpc-producer
undvpc-consumer
und dann auf Verknüpfen.Klicken Sie auf Weiter.
Klicken Sie auf Erstellen.
gcloud
Führen Sie den folgenden Befehl aus, damit IAP auf die VM-Instanzen im Netzwerk vpc-producer
zugreifen kann:
Führen Sie folgenden Befehl aus, um eine Firewallrichtlinie zu erstellen:
gcloud compute network-firewall-policies create fw-policy-addressgrp \ --global
Führen Sie folgenden Befehl aus, um eine Firewallregel zu erstellen, die Traffic an alle Ziele zulässt und Logs aktiviert:
gcloud compute network-firewall-policies rules create 100 \ --firewall-policy=fw-policy-addressgrp \ --direction=INGRESS \ --action=ALLOW \ --layer4-configs=tcp:22 \ --src-ip-ranges=35.235.240.0/20 \ --global-firewall-policy
Führen Sie folgenden Befehl aus, um die Firewallrichtlinie mit dem Ersteller-VPC-Netzwerk zu verknüpfen:
gcloud compute network-firewall-policies associations create \ --firewall-policy=fw-policy-addressgrp \ --network=vpc-producer \ --name=pol-association-vpc-producer \ --global-firewall-policy
Führen Sie folgenden Befehl aus, um die Firewallrichtlinie mit dem Nutzer-VPC-Netzwerk zu verknüpfen:
gcloud compute network-firewall-policies associations create \ --firewall-policy=fw-policy-addressgrp \ --network=vpc-consumer \ --name=pol-association-vpc-consumer \ --global-firewall-policy
Projektbezogene Adressgruppe erstellen
Erstellen Sie eine projektbezogene Adressgruppe, die die IP-Adresse verwendet, die dem Subnetz subnet-consumer-allowed
des VPC-Netzwerks vpc-consumer
zugewiesen ist.
Weitere Informationen zu den projektbezogenen Adressgruppen finden Sie unter Adressgruppen in Firewallrichtlinien verwenden.
Wenn Sie das Cloud Shell-Terminal zum ersten Mal verwenden, klicken Sie in der Google Cloud Console auf Cloud Shell aktivieren.
Führen Sie den folgenden Befehl aus, um eine Adressgruppe zu erstellen:
gcloud network-security address-groups create address-group-pc \ --type IPv4 \ --capacity 1000 \ --location global
Wenn Sie das Cloud Shell-Terminal zum ersten Mal verwenden, klicken Sie im Dialogfeld Cloud Shell autorisieren auf Autorisieren.
Führen Sie den folgenden Befehl aus, um einer Adressgruppe ein Element hinzuzufügen:
gcloud network-security address-groups add-items address-group-pc \ --items 192.168.10.0/29 \ --location global
Denken Sie daran, dass der IP-Bereich
192.168.10.0/29
dem Subnetzsubnet-consumer-allowed
des VPC-Netzwerksvpc-consumer
zugewiesen ist.
Firewallregel zum Zulassen von Traffic zu einer Adressgruppe hinzufügen
Erstellen Sie eine Firewallregel, die die projektbezogene Adressgruppe
address-group-pc
als Quell-IP-Adresse hinzufügt, um eingehende Verbindungen von der VM vm-consumer-allowed
zuzulassen.
Console
Rufen Sie in der Google Cloud Console die Seite der Firewall-Richtlinien auf.
Klicken Sie im Bereich Netzwerk-Firewallrichtlinien auf
fw-policy-addressgrp
.Klicken Sie auf Regel erstellen.
Geben Sie
150
als Priorität ein.Wählen Sie für Traffic-Richtung die Option Eingehend aus.
Wählen Sie für Aktion bei Übereinstimmung die Option Zulassen aus.
Wählen Sie für Logs Ein aus.
Wählen Sie im Abschnitt Ziel als Zieltyp Alle Instanzen im Netzwerk aus.
Wählen Sie im Abschnitt Quelle für Adressgruppe die Option
address-group-pc (PROJECT_ID)
aus und klicken Sie auf OK.Denken Sie daran, dass die IP-Adressgruppe
address-group-pc
einen IP-Bereich von192.168.10.0/29
hat, der dem Subnetzsubnet-consumer-allowed
des Nutzer-VPC-Netzwerks zugewiesen ist.Klicken Sie auf Erstellen.
gcloud
Führen Sie folgenden Befehl aus, um die Firewallrichtlinie zu aktualisieren:
gcloud compute network-firewall-policies rules create 150 \ --firewall-policy=fw-policy-addressgrp \ --direction=INGRESS \ --action=ALLOW \ --src-address-groups=projects/PROJECT_ID/locations/global/addressGroups/address-group-pc \ --layer4-configs=all \ --global-firewall-policy \ --enable-logging
Verbindung testen
Testen Sie die Verbindung von der VM vm-consumer-allowed
zur VM vm-producer
und von der VM vm-consumer-blocked
zur VM vm-producer
.
Traffic von der VM vm-consumer-allowed
zur VM vm-producer
testen
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Kopieren Sie in der Spalte Interne IP-Adresse der
vm-producer
-VM die interne IP-Adresse der VM.Klicken Sie in der Spalte Verbinden der
vm-consumer-allowed
-VM auf SSH.Klicken Sie im Dialogfeld SSH im Browser auf Autorisieren und warten Sie, bis die Verbindung hergestellt wurde.
Führen Sie folgenden Befehl aus, um die Verbindung zu prüfen:
curl INTERNAL_IP -m 2
Ersetzen Sie
INTERNAL_IP
durch die IP-Adresse dervm-producer
-VM.Die Ausgabe sieht in etwa so aus:
<!doctype html><html><body><h1>Hello World!</h1></body></html>
Schließen Sie das Dialogfeld SSH im Browser.
gcloud
Führen Sie den folgenden Befehl aus, um die interne IP-Adresse der VM
vm-producer
aufzurufen:gcloud compute instances describe vm-producer \ --zone=us-central1-a \ --format='get(networkInterfaces[0].networkIP)'
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste. Notieren Sie sich die interne IP-Adresse Ihrer
vm-producer
-VM.Führen Sie den folgenden Befehl aus, um eine SSH-Verbindung zur VM
vm-consumer-allowed
herzustellen:gcloud compute ssh vm-consumer-allowed \ --zone=us-central1-a \ --tunnel-through-iap
Führen Sie folgenden Befehl aus, um die Verbindung zu prüfen:
curl INTERNAL_IP -m 2
Ersetzen Sie
INTERNAL_IP
durch die interne IP-Adresse dervm-producer
-VM.Die erwartete Antwort lautet:
<!doctype html><html><body><h1>Hello World!</h1></body></html>
Geben Sie
exit
ein, um die SSH-Verbindung zu beenden.
Traffic von der VM vm-consumer-blocked
zur VM vm-producer
testen
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Kopieren Sie in der Spalte Interne IP-Adresse der
vm-producer
-VM die interne IP-Adresse der VM.Klicken Sie in der Spalte Verbinden der
vm-consumer-blocked
-VM auf SSH.Klicken Sie im Dialogfeld SSH im Browser auf Autorisieren und warten Sie, bis die Verbindung hergestellt wurde.
Führen Sie folgenden Befehl aus, um die Verbindung zu prüfen:
curl INTERNAL_IP -m 2
Ersetzen Sie
INTERNAL_IP
durch die IP-Adresse dervm-producer
-VM.Die
Connection timed out
-Nachricht wird erwartet, da jede VM eine implizite Firewallregel für eingehenden Traffic erstellt, die jeden Traffic ablehnt. Um Traffic zuzulassen, fügen Sie der Firewallrichtlinie eine Regel für eingehenden Traffic hinzu.Schließen Sie das Dialogfeld SSH im Browser.
gcloud
Führen Sie den folgenden Befehl aus, um die interne IP-Adresse der VM
vm-producer
aufzurufen:gcloud compute instances describe vm-producer \ --zone=us-central1-a \ --format='get(networkInterfaces[0].networkIP)'
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste. Notieren Sie sich die interne IP-Adresse Ihrer
vm-producer
-VM.Führen Sie den folgenden Befehl aus, um eine SSH-Verbindung zur VM
vm-consumer-blocked
herzustellen:gcloud compute ssh vm-consumer-blocked \ --zone=us-central1-a \ --tunnel-through-iap
Führen Sie folgenden Befehl aus, um die Verbindung zu prüfen:
curl INTERNAL_IP -m 2
Ersetzen Sie
INTERNAL_IP
durch die interne IP-Adresse dervm-producer
-VM.Die
Connection timed out
-Nachricht wird erwartet, da jede VM eine implizite Firewallregel für eingehenden Traffic erstellt, die jeden Traffic ablehnt. Damit Traffic zugelassen wird, fügen Sie der Firewallrichtlinie eine Regel für eingehenden Traffic hinzu.Geben Sie
exit
ein, um die SSH-Verbindung zu beenden.
Logs ansehen
Greifen Sie auf die Logs zu, um zu prüfen, ob die Firewallregeln der Adressgruppe auf den eingehenden Traffic angewendet wurden. Rufen Sie die Anmeldedaten mit den folgenden Schritten auf:
Rufen Sie in der Google Cloud Console die Seite der Firewall-Richtlinien auf.
Klicken Sie im Bereich Netzwerk-Firewallrichtlinien auf den Namen
fw-policy-addressgrp
.Wählen Sie in der Spalte Trefferzahl die Zahl für die Regel aus, die Sie unter Firewallregel hinzufügen, um Traffic zu einer Adressgruppe zulassen erstellt haben. Die Seite Log-Explorer wird geöffnet.
Erweitern Sie das einzelne Log, um die auf den eingehenden Traffic angewendete Firewallregel anzuzeigen. Sie können die Regeldetails, die Anordnung und die Instanzdetails aufrufen.
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Führen Sie die folgenden Schritte aus, um die in dieser Anleitung erstellten Ressourcen zu löschen:
Adressgruppen löschen
Führen Sie den folgenden Befehl aus, um die Firewallregel zu löschen, die der IP-Adressgruppe
address-group-pc
zugeordnet ist:gcloud compute network-firewall-policies rules delete 150 \ --firewall-policy fw-policy-addressgrp \ --global-firewall-policy
Führen Sie den folgenden Befehl aus, um ein vorhandenes Element aus einer Adressgruppe zu entfernen:
gcloud network-security address-groups remove-items address-group-pc \ --items 192.168.10.0/29 \ --location global
Führen Sie den folgenden Befehl aus, um eine IP-Adressgruppe zu löschen:
gcloud network-security address-groups delete address-group-pc \ --location global
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Firewallrichtlinie löschen
Console
Rufen Sie in der Google Cloud Console die Seite der Firewall-Richtlinien auf.
Klicken Sie im Bereich Netzwerk-Firewallrichtlinien auf den Namen
fw-policy-addressgrp
.Klicken Sie auf den Tab Verknüpfungen.
Klicken Sie auf das Kästchen der VMs
vpc-producer
und der VMvpc-consumer
und dann auf Verknüpfung entfernen.Klicken Sie im Dialogfeld Firewallrichtlinienverknüpfung entfernen auf Entfernen.
Klicken Sie neben dem Titel
fw-policy-addressgrp
auf Löschen.Klicken Sie im Dialogfeld Firewallrichtlinie löschen auf Löschen.
gcloud
Entfernen Sie die Verknüpfung zwischen der Firewallrichtlinie und dem VPC-Produzentennetzwerk.
gcloud compute network-firewall-policies associations delete \ --name=pol-association-vpc-producer \ --firewall-policy=fw-policy-addressgrp \ --global-firewall-policy
Entfernen Sie die Verknüpfung zwischen der Firewallrichtlinie und dem VPC-Nutzernetzwerk.
gcloud compute network-firewall-policies associations delete \ --name=pol-association-vpc-consumer \ --firewall-policy=fw-policy-addressgrp \ --global-firewall-policy
Löschen Sie die Firewallrichtlinie.
gcloud compute network-firewall-policies delete fw-policy-addressgrp \ --global
VPC-Netzwerk-Peering löschen
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerk-Peering auf.
Klicken Sie auf die Kästchen von
peering-cp
undpeering-pc
.Klicken Sie auf Löschen.
Klicken Sie im Dialogfeld Zwei Peerings löschen? auf Löschen.
gcloud
Führen Sie den folgenden Befehl aus, um das Peering zwischen Nutzer-VPC und Ersteller-VPC zu löschen:
gcloud compute networks peerings delete peering-cp \ --network=vpc-consumer
Führen Sie den folgenden Befehl aus , um das Peering zwischen Ersteller-VPC und Nutzer-VPC zu löschen:
gcloud compute networks peerings delete peering-pc \ --network=vpc-producer
Cloud-NAT-Gateway und Cloud Router löschen
Console
Wechseln Sie in der Google Cloud Console zur Seite Cloud Routers.
Markieren Sie das
router-addressgrp
-Kästchen.Klicken Sie auf Löschen.
Klicken Sie im Dialogfeld Router-addressgrp löschen auf Löschen.
Wenn Sie einen Cloud Router löschen, wird auch das zugehörige Cloud NAT-Gateway gelöscht.
gcloud
Führen Sie den folgenden Befehl aus, um den Cloud Router router-addressgrp
zu löschen:
gcloud compute routers delete router-addressgrp \ --region=us-central1
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Wenn Sie einen Cloud Router löschen, wird auch das zugehörige Cloud NAT-Gateway gelöscht.
VMs löschen
Console
Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.
Klicken Sie auf die Kästchen für die VMs
vm-consumer-allowed
,vm-consumer-blocked
undvm-producer
.Klicken Sie auf Löschen.
Klicken Sie im Dialogfeld Möchten Sie drei Instanzen löschen? auf Löschen.
gcloud
Führen Sie den folgenden Befehl aus, um alle VMs zu löschen:
gcloud compute instances delete vm-consumer-allowed vm-consumer-blocked vm-producer \ --zone=us-central1-a
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Nutzer-VPC-Netzwerk und dessen Subnetze löschen
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Klicken Sie in der Spalte Name auf
vpc-consumer
.Klicken Sie auf VPC-Netzwerk löschen.
Klicken Sie im Dialogfeld Netzwerk löschen auf Löschen.
Wenn Sie eine VPC löschen, werden auch ihre Subnetze gelöscht.
gcloud
Führen Sie folgenden Befehl aus, um die Subnetze des VPC-Netzwerks
vpc-consumer
zu löschen:gcloud compute networks subnets delete subnet-consumer-allowed subnet-consumer-blocked \ --region=us-central1
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Führen Sie folgenden Befehl aus, um das VPC-Netzwerk
vpc-consumer
zu löschen:gcloud compute networks delete vpc-consumer
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Ersteller-VPC-Netzwerk und sein Subnetz löschen
Console
Rufen Sie in der Google Cloud Console die Seite VPC-Netzwerke auf.
Klicken Sie in der Spalte Name auf
vpc-producer
.Klicken Sie auf VPC-Netzwerk löschen.
Klicken Sie im Dialogfeld Netzwerk löschen auf Löschen.
Wenn Sie eine VPC löschen, werden auch ihre Subnetze gelöscht.
gcloud
Führen Sie folgenden Befehl aus, um das Subnetz des VPC-Netzwerks
vpc-producer
zu löschen:gcloud compute networks subnets delete subnet-vpc-producer \ --region=us-central1
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Führen Sie folgenden Befehl aus, um das VPC-Netzwerk
vpc-producer
zu löschen:gcloud compute networks delete vpc-producer
Wenn Sie dazu aufgefordert werden, drücken Sie zur Bestätigung Y und dann die Eingabetaste.
Nächste Schritte
- Konzeptionelle Informationen zu Firewallrichtlinien finden Sie unter Firewallrichtlinien.
- Konzeptionelle Informationen zu Firewallrichtlinienregeln finden Sie unter Firewallrichtlinien-Regeln.
- Informationen zum Erstellen, Aktualisieren, Überwachen und Löschen von VPC-Firewallregeln finden Sie unter VPC-Firewallregeln verwenden.
- Informationen zum Ermitteln der Kosten finden Sie unter Cloud NGFW – Preise.