Auf dieser Seite wird beschrieben, wie Sie die TLS-Prüfung (Transport Layer Security) aktivieren für Ihre Secure Web Proxy-Instanz.
Hinweise
Bevor Sie Secure Web Proxy für die TLS-Prüfung konfigurieren, die Aufgaben in den folgenden Abschnitten ausführen.
CAS aktivieren
Secure Web Proxy verwendet Certificate Authority Service (CAS) um die Zertifikate zu generieren, die für die TLS-Prüfung verwendet werden.
Verwenden Sie den folgenden Befehl, um CAS zu aktivieren:
gcloud services enable privateca.googleapis.com
CA-Pool erstellen
Sie müssen einen Zertifizierungsstellenpool erstellen, bevor Sie CAS für Folgendes verwenden können: eine Zertifizierungsstelle erstellen. In diesem Abschnitt werden die Berechtigungen beschrieben, die Sie benötigen, um führen Sie diese Aufgabe durch. Anschließend wird beschrieben, wie Sie einen Zertifizierungsstellenpool erstellen.
Zum Generieren von Zertifikaten wird bei der TLS-Prüfung ein separates Dienstkonto für
jedes Projekt mit der Bezeichnung
service-{project ID}@gcp-sa-certmanager.iam.gserviceaccount.com
Achten Sie darauf, dass Sie diesem Dienstkonto Berechtigungen zur Verwendung gewährt haben
Ihrem Zertifizierungsstellenpool. Wenn dieser Zugriff widerrufen wird, funktioniert die TLS-Prüfung nicht mehr.
Verwenden Sie zum Erstellen des Pools den Befehl gcloud privateca pools create
und
Geben Sie die ID des untergeordneten Pools, die Stufe, die Projekt-ID und den Standort an.
gcloud privateca pools create SUBORDINATE_POOL_ID
--tier=TIER
--project=PROJECT_ID
--location=REGION
Ersetzen Sie Folgendes:
SUBORDINATE_POOL_ID
: der Name des ZertifizierungsstellenpoolsTIER
: die Zertifizierungsstellenebene, entwederdevops
oderenterprise
Wir empfehlen, den Zertifizierungsstellenpool in der Stufe
devops
zu erstellen, da die Nachverfolgung individuell ausgestellter Zertifikate ist nicht erforderlich.PROJECT_ID
: die ID des CA-Pool-ProjektsREGION
: Standort des Zertifizierungsstellenpools
Untergeordneten Zertifizierungsstellenpool erstellen
Sie können einen untergeordneten Zertifizierungsstellenpool erstellen und die Stammzertifizierungsstelle signiert alle zu den Zertifizierungsstellen in diesem Pool. Diese Zertifikate werden zum Signieren des Servers verwendet Zertifikate, die für die TLS-Prüfung generiert wurden.
Verwenden Sie eine der folgenden Methoden, um einen untergeordneten Pool zu erstellen.
Erstellen Sie einen untergeordneten Zertifizierungsstellenpool, indem Sie eine vorhandene in CAS gespeicherte Stammzertifizierungsstelle verwenden
So erstellen Sie eine untergeordnete Zertifizierungsstelle:
- Erstellen Sie einen CA-Pool.
- Untergeordnete Zertifizierungsstellen in einem Zertifizierungsstellenpool erstellen
Erstellen Sie einen untergeordneten Zertifizierungsstellenpool, indem Sie eine vorhandene extern gehaltene Stammzertifizierungsstelle verwenden
So erstellen Sie eine untergeordnete Zertifizierungsstelle:
- Erstellen Sie einen CA-Pool.
- Untergeordnete Zertifizierungsstellen erstellen, die von einer externen Stammzertifizierungsstelle signiert sind
Stamm-CA erstellen
Wenn Sie noch keine Stamm-CA haben, können Sie eine innerhalb von CAS erstellen. So erstellen Sie eine Stamm-CA:
- Erstellen Sie eine Root-Zertifizierungsstelle.
- Führen Sie die Schritte unter Untergeordneten Zertifizierungsstellenpool mithilfe einer vorhandenen im CAS gespeicherten Root-Zertifizierungsstelle erstellen aus.
Weitere Informationen zu CA-Pools finden Sie in der Dokumentation zum Certificate Authority Service
Dienstkonto erstellen
Wenn Sie kein Dienstkonto haben, müssen Sie eines erstellen und ihm die erforderlichen Berechtigungen haben.
Erstellen Sie ein Dienstkonto:
gcloud beta services identity create \ --service=networksecurity.googleapis.com \ --project=PROJECT_ID
Daraufhin erstellt die Google Cloud CLI ein Dienstkonto namens
service-{project ID}@gcp-sa-networksecurity.iam.gserviceaccount.com
Gewähren Sie dem von Ihnen erstellten Dienstkonto Berechtigungen zum Generieren Zertifikate mit Ihrem CA-Pool:
gcloud privateca pools add-iam-policy-binding CA_POOL \ --member='serviceAccount:SERVICE_ACCOUNT' \ --role='roles/privateca.certificateManager' \ --location='REGION'
Secure Web Proxy für die TLS-Prüfung konfigurieren
Sie können erst mit den Aufgaben in diesem Abschnitt fortfahren, wenn Sie sie abgeschlossen haben die im Abschnitt Vorbereitung aufgeführten Aufgaben.
Führen Sie die Aufgaben in den folgenden Abschnitten aus, um die TLS-Prüfung zu konfigurieren.
TLS-Prüfungsrichtlinie erstellen
Erstellen Sie die Datei
TLS_INSPECTION_FILE
.yaml. ErsetzenTLS_INSPECTION_FILE
durch den gewünschten Dateinamen.Fügen Sie der YAML-Datei den folgenden Code hinzu, um die gewünschte TlsInspectionPolicy:
name: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME caPool: projects/PROJECT_ID/locations/REGION/caPools/CA_POOL
Ersetzen Sie Folgendes:
PROJECT_ID
: die ProjektnummerREGION
: Region, in der die Richtlinie erstellt werden sollTLS_INSPECTION_NAME
: der Name des TLS-Prüfungsrichtlinie für Secure Web ProxyCA_POOL
: der Name des CA-Pools, aus dem die Zertifikate erstellt werden sollenDer CA-Pool muss in derselben Region vorhanden sein.
TLS-Prüfungsrichtlinie importieren
Importieren Sie die TLS-Prüfungsrichtlinie, die Sie im vorherigen Schritt erstellt haben:
gcloud network-security tls-inspection-policies import TLS_INSPECTION_NAME \
--source=TLS_INSPECTION_FILE.yaml \
--location=REGION
Der Sicherheitsrichtlinie die TLS-Prüfungsrichtlinie hinzufügen
Console
Web-Proxy-Richtlinie erstellen
Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.
Klicken Sie auf Secure Web Proxy.
Klicken Sie auf den Tab Richtlinien.
Klicken Sie auf Richtlinie erstellen.
Geben Sie einen Namen für die Richtlinie ein, die Sie erstellen möchten, wie
myswppolicy
.Geben Sie eine Beschreibung der Richtlinie ein, z. B.
My new swp policy
.Wählen Sie in der Liste Regionen die Region aus, in der Sie den Erstellen Sie die Secure Web Proxy-Richtlinie.
Wählen Sie zum Konfigurieren der TLS-Prüfung TLS-Prüfung konfigurieren aus.
Wählen Sie in der Liste TLS-Prüfungsrichtlinie die TLS-Einstellung aus. die Sie erstellt haben.
Wenn du Regeln für deine Richtlinie erstellen möchtest, klicke auf Weiter und dann auf Regel hinzufügen. Weitere Informationen finden Sie unter Secure Web Proxy-Regeln erstellen
Klicken Sie auf Erstellen.
Web-Proxy-Regeln erstellen
Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.
Klicken Sie auf Secure Web Proxy.
Wählen Sie im Projektauswahlmenü Ihre Organisations-ID aus oder in den Ordner, 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
0
die höchste Priorität ist. - Geben Sie im Bereich Aktion an, ob die übereinstimmenden wenn die Regel zugelassen (Allow) oder abgelehnt (Deny) ist.
- Geben Sie im Bereich Sitzungsabgleich die Kriterien für
die mit der Sitzung übereinstimmen. Weitere Informationen zur Syntax für
SessionMatcher
, siehe Sprachreferenz für CEL-Matcher. - Wenn Sie die TLS-Prüfung aktivieren möchten, wählen Sie TLS-Prüfung aktivieren aus.
- Geben Sie im Abschnitt Anwendungsabgleich die Kriterien für die mit der Anfrage übereinstimmen. Wenn Sie die Regel für TLS nicht aktivieren kann die Anfrage nur mit HTTP-Traffic übereinstimmen.
- 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.
Web-Proxy einrichten
Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.
Klicken Sie auf Secure Web Proxy.
Klicken Sie auf den Tab Web-Proxys.
Klicken Sie auf Web-Proxy einrichten.
Geben Sie einen Namen für den zu erstellenden Web-Proxy ein. wie
myswp
.Geben Sie eine Beschreibung des Web-Proxys ein, z. B.
My new swp
.Wählen Sie in der Liste Regionen die Region aus, in der Sie den Erstellen Sie den Web-Proxy.
Wählen Sie in der Liste Netzwerk das Netzwerk aus, für das Sie Erstellen Sie den Web-Proxy.
Wählen Sie in der Liste Subnetzwerk das Subnetzwerk aus, für das Sie Erstellen Sie den Web-Proxy.
Geben Sie die IP-Adresse des Web-Proxys ein.
Wählen Sie in der Liste Zertifikat das gewünschte Zertifikat aus. zum Erstellen des Web-Proxys.
Wähle in der Liste Richtlinie die Richtlinie aus, die du erstellt hast. mit dem der Web-Proxy verknüpft werden soll.
Klicken Sie auf Erstellen.
Cloud Shell
Erstellen Sie die Datei
policy.yaml
:description: basic Secure Web Proxy policy name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1 tlsInspectionPolicy: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
Erstellen Sie die Secure Web Proxy-Richtlinie:
gcloud network-security gateway-security-policies import policy1 \ --source=policy.yaml --location=REGION
Erstellen Sie die Datei
rule.yaml
:name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/allow-example-com description: Allow example.com enabled: true priority: 1 basicProfile: ALLOW sessionMatcher: host() == 'example.com' applicationMatcher: request.path.contains('index.html') tlsInspectionEnabled: true
Erstellen Sie die Sicherheitsrichtlinienregel:
gcloud network-security gateway-security-policies rules import allow-example-com \ --source=rule.yaml \ --location=REGION \ --gateway-security-policy=policy1
So hängen Sie eine TLS-Prüfungsrichtlinie an eine vorhandene Richtlinie an: Sicherheitsrichtlinie, Datei erstellen
POLICY_FILE
.yaml. ErsetzenPOLICY_FILE
durch den gewünschten Dateinamen.description: My Secure Web Proxy policy name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME tlsInspectionPolicy: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME