In diesem Leitfaden wird beschrieben, wie Sie URL-Listen verwenden, um URLs zu definieren, auf die Ihre Nutzer zugreifen können.
Hinweise
Führen Sie die Schritte zur Ersteinrichtung aus.
Prüfen Sie, ob die Google Cloud CLI-Version 406.0.0 oder höher installiert ist:
gcloud version | head -n1Wenn Sie eine ältere gcloud CLI-Version installiert haben, aktualisieren Sie die Version:
gcloud components update --version=406.0.0
Secure Web Proxy-Instanz mit einer leeren Richtlinie erstellen
Wenn Sie eine Secure Web Proxy-Instanz erstellen möchten, müssen Sie zuerst eine leere Sicherheitsrichtlinie und dann einen Web-Proxy erstellen, der die Richtlinie verwendet.
Leere Sicherheitsrichtlinie erstellen
Console
Rufen Sie in der Google Cloud Console die Seite SWP-Richtlinien auf.
Klicken Sie auf Richtlinie erstellen.
Geben Sie im Feld Name einen Namen für die Richtlinie ein, z. B.
myswppolicy.Geben Sie im Feld Beschreibung eine Beschreibung für die Richtlinie ein, z. B.
My new swp policy.Wählen Sie unter Regionen die Region aus, in der Sie die Richtlinie erstellen möchten, z. B.
us-central1.Klicken Sie auf Erstellen.
Cloud Shell
Erstellen Sie mit Ihrem bevorzugten Texteditor eine
policy.yaml-Datei.Fügen Sie der von Ihnen erstellten Datei
policy.yamlFolgendes hinzu:name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTIONErsetzen Sie Folgendes:
PROJECT_NAME: Name Ihres ProjektsREGION: Region, in der Ihre Richtlinie erstellt wird, z. B.us-central1POLICY_NAME: Name der RichtliniePOLICY_DESCRIPTION: Beschreibung Ihrer Richtlinie
Importieren Sie die Sicherheitsrichtlinie mit dem Befehl
gcloud network-security gateway-security-policies import:gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Web-Proxy erstellen
Console
Rufen Sie in der Google Cloud Console die Seite Web-Proxys auf.
Klicken Sie auf Sicheren Web-Proxy erstellen.
Geben Sie im Feld Name einen Namen für den Webproxy ein, z. B.
myswp.Geben Sie im Feld Beschreibung eine Beschreibung für den Webproxy ein, z. B.
My new swp.Wählen Sie für Routing-Modus die Option Explizit aus.
Wählen Sie unter Regionen die Region aus, in der Sie den Webproxy erstellen möchten, z. B.
us-central1.Wählen Sie unter Netzwerk das Netzwerk aus, in dem Sie den Webproxy erstellen möchten.
Wählen Sie unter Subnetzwerk das VPC-Subnetz aus, das Sie zuvor im Rahmen der Ersteinrichtung erstellt haben.
Optional: Geben Sie im Feld Web-Proxy-IP-Adresse die IP-Adresse des Secure Web Proxy ein.
Sie können eine IP-Adresse aus dem Bereich der Secure Web Proxy-IP-Adressen eingeben, die sich im Subnetz befinden, das Sie im vorherigen Schritt erstellt haben. Wenn Sie die IP-Adresse nicht eingeben, wählt Ihre Secure Web Proxy-Instanz automatisch eine IP-Adresse aus dem ausgewählten Subnetzwerk aus.
Wählen Sie unter Zertifikat das Zertifikat aus, das Sie zum Erstellen des Webproxys verwenden möchten.
Wählen Sie unter Richtlinie die Richtlinie aus, die Sie erstellt haben, um den Web-Proxy zu verknüpfen.
Klicken Sie auf Erstellen.
Cloud Shell
Erstellen Sie mit Ihrem bevorzugten Texteditor eine
gateway.yaml-Datei.Fügen Sie der Datei
gateway.yamlfolgendes hinzu:name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNETWORK addresses: [GATEWAY_IP_ADDRESS] scope: samplescopeErsetzen Sie Folgendes:
GATEWAY_NAME: Name dieser Secure Web Proxy-InstanzGATEWAY_PORT_NUMBERS: Liste der Portnummern für dieses Gateway, z. B.[80,443]CERTIFICATE_URLS: Liste der SSL-Zertifikat-URLsSUBNETWORK: VPC-Subnetz, das Sie zuvor im Rahmen der ersten Einrichtungsschritte erstellt haben.GATEWAY_IP_ADDRESS: Optionale Liste von IP-Adressen für Ihre Secure Web Proxy-Instanzen in den Proxy-Subnetzen, die Sie zuvor in den Schritten zur Ersteinrichtung erstellt haben.Wenn Sie keine IP-Adressen angeben möchten, lassen Sie das Feld leer, damit der Webproxy eine IP-Adresse für Sie auswählt.
Erstellen Sie die Secure Web Proxy-Instanz mit dem Befehl
gcloud network-services gateways import:gcloud network-services gateways import GATEWAY_NAME \ --source=gateway.yaml \ --location=REGION
Verbindung testen
Verwenden Sie den Befehl curl, um die Verbindung von einer beliebigen VM-Instanz in Ihrem VPC-Netzwerk (Virtual Private Cloud) zu testen:
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Wenn alles korrekt funktioniert, gibt Ihre Secure Web Proxy-Instanz den Statuscode 403 Forbidden zurück. Dieser Fehler bestätigt Folgendes:
Die Secure Web Proxy-Instanz wurde erfolgreich bereitgestellt und empfängt aktiv Traffic.
Die Richtlinie für sichere Web-Proxys erzwingt die Standardsicherheitskonfiguration, bei der der gesamte Traffic abgelehnt wird, bis Sie in den nächsten Abschnitten bestimmte
allow-Regeln definieren.
URL-Liste erstellen
Führen Sie die Aufgaben in den folgenden Abschnitten aus, um eine URL-Liste zu erstellen und eine Regel hinzuzufügen.
URL-Liste erstellen und konfigurieren
Console
Rufen Sie in der Google Cloud Console die Seite URL-Listen auf.
Klicken Sie auf URL-Liste erstellen.
Geben Sie einen Namen für die URL-Liste ein, die Sie erstellen möchten, z. B.
myurllist.Geben Sie eine Beschreibung der URL-Liste ein, z. B.
My new URL list.Wählen Sie in der Liste Regionen die Region aus, in der Sie die URL-Liste erstellen möchten.
Klicken Sie auf Listen hochladen, um die Liste der Hosts, URLs oder Muster hochzuladen, die abgeglichen werden sollen. Weitere Informationen finden Sie in der Syntaxreferenz für UrlList.
Klicken Sie auf Erstellen.
Cloud Shell
Erstellen Sie mit Ihrem bevorzugten Texteditor die Datei URL_LIST_FILE
.yaml. ReplaceURL_LIST_FILE` mit dem gewünschten Dateinamen.name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME values: URL_LISTErsetzen Sie Folgendes:
PROJECT_ID: Ihre ProjektnummerREGION: die Region, für die diese URL-Liste giltURL_LIST_NAME: Ein Name für die URL-Liste, die Sie erstellen.URL_LIST: Die Liste der Hosts, URLs oder Muster, die abgeglichen werden sollen.
Weitere Informationen finden Sie in der Syntaxreferenz für UrlList.
Hier sehen Sie eine Beispielregeldatei für URL-Listen:
name: projects/PROJECT_ID/locations/REGION/urlLists/example-org-allowed-list values: - www.example.com - about.example.com - "*.google.com" - "github.com/example-org/*"Das Sternchen (
*) hat in YAML eine besondere Bedeutung. Daher müssen Sie URLs, die ein*-Zeichen enthalten, in Anführungszeichen setzen.Fügen Sie die URL-Liste hinzu, damit in einer Secure Web Proxy-Regel darauf verwiesen werden kann:
gcloud network-security url-lists import URL_LIST_NAME \ --location=REGION \ --project=PROJECT_ID \ --source=URL_LIST_FILE.yaml
Regel hinzufügen
Console
Rufen Sie in der Google Cloud Console die Seite SWP-Richtlinien auf.
Wählen Sie im Menü zur Projektauswahl Ihre Organisations-ID oder den Ordner aus, der die Richtlinie enthält.
Klicken Sie auf den Namen Ihrer Richtlinie.
Klicken Sie auf Regel hinzufügen.
Füllen Sie die Regelfelder aus:
- Name
- Beschreibung
- Status
- Priorität: die numerische Auswertungsreihenfolge der Regel. Die Regeln werden von der höchsten bis zur niedrigsten Priorität ausgewertet, wobei
0die höchste Priorität ist. - Geben Sie im Abschnitt Aktion an, ob Verbindungen, die der Regel entsprechen, zugelassen (Zulassen) oder abgelehnt (Ablehnen) werden sollen.
Geben Sie im Abschnitt Sitzungsabgleich den Namen der URL-Liste an, die Sie zuvor erstellt haben. Beispiel:
sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"Wählen Sie TLS-Prüfung aktivieren aus, um die TLS-Prüfung zu aktivieren.
Geben Sie im Bereich Application Match (Anwendungsabgleich) die Kriterien für den Abgleich der Anfrage an.
Klicken Sie auf Erstellen.
Klicken Sie auf Regel hinzufügen, um eine weitere Regel hinzuzufügen.
Klicken Sie auf Erstellen, um die Richtlinie zu erstellen.
Cloud Shell
Erstellen Sie mit Ihrem bevorzugten Texteditor die Datei
RULE_FILE.yaml. Ersetzen SieRULE_FILEdurch den gewünschten Dateinamen.name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME basicProfile: ALLOW enabled: true priority: PRIORITY_VALUE description: RULE_DESCRIPTION sessionMatcher: SESSION_CEL_EXPRESSION applicationMatcher: APPLICATION_CEL_EXPRESSIONErsetzen Sie Folgendes:
PROJECT_ID: Ihre ProjektnummerREGION: die Region, für die diese Regel giltPOLICY_NAME: der Name eines vorhandenenGatewaySecurityPolicy, das von Ihrer Secure Web Proxy-Instanz verwendet wirdRULE_NAME: Name für dieGatewaySecurityPolicyRule, die Sie erstellenPRIORITY_VALUE: ein Prioritätswert für diese Regel. Niedrigere Zahlen entsprechen höheren Prioritäten.RULE_DESCRIPTION: eine Beschreibung der Richtlinie, die Sie erstellenSESSION_CEL_EXPRESSION: Ein CEL-Ausdruck (Common Expression Language) für die SitzungAPPLICATION_CEL_EXPRESSION: Ein CEL-Ausdruck für die Anwendung.
Hier sehen Sie eine Beispielregeldatei:
name: projects/PROJECT_ID/locations/REGION/urlLists/allow-repos basicProfile: ALLOW enabled: true priority: 100 description: Allow access to our list of known code repos. sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"Fügen Sie eine Secure Web Proxy-Regel mit der zuvor erstellten URL-Liste hinzu:
gcloud network-security gateway-security-policies rules import RULE_NAME \ --location=REGION \ --project=PROJECT_ID \ --source=RULE_FILE.yaml \ --gateway-security-policy=POLICY_NAME
Verbindung testen
Verwenden Sie den folgenden curl-Befehl, um die Verbindung zu testen:
curl -x https://SWP_IP_ADDRESS:SWP_PORT_NUMBER HTTP_TEST_ADDRESS
--proxy-insecure
Ersetzen Sie Folgendes:
SWP_IP_ADDRESS: die IP-Adresse Ihres WebproxysSWP_PORT_NUMBER: Die Portnummer für Ihren Webproxy, z. B.443HTTP_TEST_ADDRESS: Eine zu testende Adresse, z. B.https://www.example.com, die mit einem Host- oder URL-Eintrag in IhrerURL_LISTübereinstimmt.
Die Anfrage sollte eine Erfolgsmeldung zurückgeben.