Auf dieser Seite wird beschrieben, wie Sie die TLS-Prüfung (Transport Layer Security) für Ihre Secure Web Proxy-Instanz aktivieren.
Hinweise
Führen Sie die Aufgaben in den folgenden Abschnitten aus, bevor Sie Secure Web Proxy für die TLS-Prüfung konfigurieren.
CAS aktivieren
Secure Web Proxy generiert mithilfe des Certificate Authority Service (CAS) die für die TLS-Prüfung verwendeten Zertifikate.
Verwenden Sie den folgenden Befehl, um CAS zu aktivieren:
gcloud services enable privateca.googleapis.com
CA-Pool erstellen
Sie müssen einen Zertifizierungsstellenpool (Certificate Authority, CA) erstellen, bevor Sie CAS zum Erstellen einer Zertifizierungsstelle verwenden können. In diesem Abschnitt werden die Berechtigungen beschrieben, die Sie zum Ausführen dieser Aufgabe benötigen. Anschließend wird beschrieben, wie Sie einen Zertifizierungsstellenpool erstellen.
Zum Generieren von Zertifikaten verwendet die TLS-Prüfung für jedes Projekt ein separates Dienstkonto namens service-{project ID}@gcp-sa-certmanager.iam.gserviceaccount.com
.
Prüfen Sie, ob Sie diesem Dienstkonto Berechtigungen zur Verwendung Ihres Zertifizierungsstellen-Pools erteilt haben. 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, die Stufe, die Projekt-ID und den Standort des untergeordneten Pools 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 CA-Stufe, entwederdevops
oderenterprise
Wir empfehlen, den CA-Pool in der Stufe
devops
zu erstellen, da das Tracking individuell ausgestellter Zertifikate nicht erforderlich ist.PROJECT_ID
: die ID des CA-Pool-ProjektsREGION
: der Standort des Zertifizierungsstellenpools
Untergeordneten CA-Pool erstellen
Sie können einen untergeordneten CA-Pool erstellen und die Root-Zertifizierungsstelle signiert alle CAs in diesem Pool. Mit diesen Zertifikaten werden Serverzertifikate signiert, die für die TLS-Prüfung generiert wurden.
Zum Erstellen eines untergeordneten Pools können Sie eine der folgenden Methoden verwenden.
Erstellen Sie einen untergeordneten CA-Pool mithilfe einer vorhandenen Stamm-CA, die in CAS gespeichert ist
So generieren Sie eine untergeordnete Zertifizierungsstelle:
- Erstellen Sie einen CA-Pool.
- Untergeordnete Zertifizierungsstellen in einem Zertifizierungsstellenpool erstellen
Einen untergeordneten CA-Pool mithilfe einer vorhandenen extern gehaltenen Root-Zertifizierungsstelle erstellen
So generieren 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 Root-Zertifizierungsstelle haben, können Sie in CAS eine erstellen. So erstellen Sie eine Stammzertifizierungsstelle:
- Erstellen Sie eine Root-Zertifizierungsstelle.
- Führen Sie die Schritte unter Untergeordneten Zertifizierungsstellenpool mithilfe einer vorhandenen in CAS gespeicherten Stammzertifizierungsstelle 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 die erforderlichen Berechtigungen erteilen.
Erstellen Sie ein Dienstkonto:
gcloud beta services identity create \ --service=networksecurity.googleapis.com \ --project=PROJECT_ID
Als Reaktion erstellt die Google Cloud CLI ein Dienstkonto mit dem Namen
service-{project ID}@gcp-sa-networksecurity.iam.gserviceaccount.com
.Gewähren Sie dem erstellten Dienstkonto Berechtigungen zum Generieren von Zertifikaten mit Ihrem Zertifizierungsstellenpool:
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 mit den Aufgaben in diesem Abschnitt erst fortfahren, nachdem Sie die im Abschnitt Vorbereitung aufgeführten erforderlichen Aufgaben abgeschlossen haben.
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. Ersetzen SieTLS_INSPECTION_FILE
durch den gewünschten Dateinamen.Fügen Sie der YAML-Datei den folgenden Code hinzu, um die gewünschte TlsInspectionPolicy zu konfigurieren:
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 der TLS-Prüfungsrichtlinie von 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
TLS-Prüfungsrichtlinie zur Sicherheitsrichtlinie 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, z. B.
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 die Secure Web Proxy-Richtlinie erstellen möchten.
Wählen Sie zum Konfigurieren der TLS-Prüfung TLS-Prüfung konfigurieren aus.
Wählen Sie in der Liste TLS-Prüfungsrichtlinie die von Ihnen erstellte TLS-Prüfungsrichtlinie aus.
Wenn Sie Regeln für Ihre Richtlinie erstellen möchten, klicken Sie auf Weiter und dann auf Regel hinzufügen. Weitere Informationen finden Sie unter Regeln für Secure Web Proxy 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 in der Projektauswahl Ihre Organisations-ID oder den Ordner aus, der Ihre 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 Abschnitt Action (Aktion) an, ob Verbindungen, die der Regel entsprechen, zugelassen (Allow) oder abgelehnt (Deny) werden.
- Geben Sie im Bereich Sitzungsübereinstimmung die Kriterien für die Sitzung an. Weitere Informationen zur Syntax für
SessionMatcher
finden Sie in der Sprachreferenz zum CEL-Matcher. - Wenn Sie die TLS-Prüfung aktivieren möchten, wählen Sie TLS-Prüfung aktivieren aus.
- Geben Sie im Abschnitt Anwendungsübereinstimmung die Kriterien für den Abgleich der Anfrage an. Wenn Sie die Regel für die TLS-Prüfung nicht aktivieren, kann die Anfrage nur mit HTTP-Traffic abgeglichen werden.
- 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 Web-Proxy ein, den Sie erstellen möchten, z. B.
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 Web-Proxy erstellen möchten.
Wählen Sie in der Liste Netzwerk das Netzwerk aus, in dem Sie den Web-Proxy erstellen möchten.
Wählen Sie in der Liste Subnetzwerk das Subnetzwerk aus, in dem Sie den Web-Proxy erstellen möchten.
Geben Sie die IP-Adresse des Web-Proxys ein.
Wählen Sie in der Liste Zertifikat das Zertifikat aus, das Sie zum Erstellen des Web-Proxys verwenden möchten.
Wählen Sie in der Liste Richtlinie die Richtlinie aus, die Sie erstellt haben, um den Web-Proxy zu verknüpfen.
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
Wenn Sie eine TLS-Prüfungsrichtlinie an eine vorhandene Sicherheitsrichtlinie anhängen möchten, erstellen Sie die Datei
POLICY_FILE
.yaml. Ersetzen SiePOLICY_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