TLS-Prüfung aktivieren

Auf dieser Seite wird beschrieben, wie Sie die TLS-Prüfung (Transport Layer Security) aktivieren für Ihre Secure Web Proxy-Instanz.

Hinweis

Bevor Sie Secure Web Proxy für die TLS-Prüfung konfigurieren, führen Sie die Aufgaben in den folgenden Abschnitten aus.

CAS aktivieren

Secure Web Proxy verwendet den CAS (Certificate Authority Service), um die für die TLS-Prüfung verwendeten Zertifikate zu generieren.

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 für diese Aufgabe benötigen. Anschließend wird beschrieben, wie Sie einen CA-Pool 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 den Befehl gcloud privateca pools create, um den Pool zu erstellen, und geben Sie die untergeordnete Pool-ID, die Stufe, die Projekt-ID und den Speicherort an.

    gcloud privateca pools create SUBORDINATE_POOL_ID 
--tier=TIER
--project=PROJECT_ID
--location=REGION

Ersetzen Sie Folgendes:

  • SUBORDINATE_POOL_ID: der Name des CA-Pools
  • TIER: die Zertifizierungsstellenebene, entweder devops oder enterprise

    Wir empfehlen, den CA-Pool auf der Ebene devops zu erstellen, da das Nachverfolgen einzeln ausgestellter Zertifikate nicht erforderlich ist.

  • PROJECT_ID: die ID des CA-Pool-Projekts

  • REGION: Standort des Zertifizierungsstellenpools

Untergeordneten Zertifizierungsstellenpool erstellen

Sie können einen untergeordneten CA-Pool erstellen und die Root-CA signiert alle CAs in diesem Pool. Diese Zertifikate werden zum Signieren des Servers verwendet Zertifikate, die für die TLS-Prüfung generiert wurden.

Sie haben mehrere Möglichkeiten, einen untergeordneten Pool zu erstellen.

Einen untergeordneten CA-Pool mit einer vorhandenen Root-CA erstellen, die in CAS gespeichert ist

So generieren Sie eine untergeordnete Zertifizierungsstelle:

  1. Erstellen Sie einen CA-Pool.
  2. 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:

  1. Erstellen Sie einen CA-Pool.
  2. Erstellen Sie untergeordnete Zertifizierungsstellen, die von einer externen Stamm-CA signiert wurden.

Stamm-CA erstellen

Wenn Sie noch keine Stamm-CA haben, können Sie eine innerhalb von CAS erstellen. So erstellen Sie eine Root-Zertifizierungsstelle:

  1. Erstellen Sie eine Stamm-CA.
  2. Folgen Sie der Anleitung unter Untergeordneten CA-Pool mit einer vorhandenen Stamm-CA erstellen, die in CAS gespeichert ist.

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.

  1. 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

  2. Gewähren Sie dem von Ihnen erstellten Dienstkonto die Berechtigung, Zertifikate mit Ihrem CA-Pool zu generieren:

    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

  1. Erstellen Sie die Datei TLS_INSPECTION_FILE.yaml. Ersetzen Sie TLS_INSPECTION_FILE durch den gewünschten Dateinamen.

  2. 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 Projektnummer
    • REGION: Region, in der die Richtlinie erstellt werden soll
    • TLS_INSPECTION_NAME: der Name der TLS-Prüfungsrichtlinie für den Secure Web Proxy
    • CA_POOL: der Name des CA-Pools, aus dem die Zertifikate erstellt werden sollen

      Der 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

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.

    Netzwerksicherheit aufrufen

  2. Klicken Sie auf Secure Web Proxy.

  3. Klicken Sie auf den Tab Richtlinien.

  4. Klicken Sie auf Richtlinie erstellen.

  5. Geben Sie einen Namen für die Richtlinie ein, die Sie erstellen möchten, z. B. myswppolicy.

  6. Geben Sie eine Beschreibung der Richtlinie ein, z. B. My new swp policy.

  7. Wählen Sie in der Liste Regionen die Region aus, in der Sie die Richtlinie für den sicheren Webproxy erstellen möchten.

  8. Wählen Sie zum Konfigurieren der TLS-Prüfung TLS-Prüfung konfigurieren aus.

  9. Wählen Sie in der Liste TLS-Prüfungsrichtlinie die von Ihnen erstellte TLS-Prüfungsrichtlinie aus.

  10. Wenn Sie Regeln für die Richtlinie erstellen möchten, klicken Sie auf Weiter und dann auf Regel hinzufügen. Weitere Informationen finden Sie unter Secure Web Proxy-Regeln erstellen

  11. Klicken Sie auf Erstellen.

Web-Proxy-Regeln erstellen

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.

    Netzwerksicherheit aufrufen

  2. Klicken Sie auf Sicherer Web-Proxy.

  3. Wählen Sie im Projektauswahlmenü Ihre Organisations-ID aus oder in den Ordner, der die Richtlinie enthält.

  4. Klicken Sie auf den Namen Ihrer Richtlinie.

  5. Klicken Sie auf Regel hinzufügen.

  6. Füllen Sie die Regelfelder aus:

    1. Name
    2. Beschreibung
    3. Status
    4. 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.
    5. Geben Sie im Bereich Aktion an, ob die übereinstimmenden wenn die Regel zugelassen (Allow) oder abgelehnt (Deny) ist.
    6. Geben Sie im Bereich Sitzungsabgleich die Kriterien für den Sitzungsabgleich an. Weitere Informationen zur Syntax für SessionMatcher finden Sie in der Referenz zur CEL-Abgleichssprache.
    7. Wählen Sie TLS-Prüfung aktivieren aus, um die TLS-Prüfung zu aktivieren.
    8. Geben Sie im Abschnitt Anwendungsabgleich 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.
    9. Klicken Sie auf Erstellen.
  7. Klicken Sie auf Regel hinzufügen, um eine weitere Regel hinzuzufügen.

  8. Klicken Sie auf Erstellen, um die Richtlinie zu erstellen.

Web-Proxy einrichten

  1. Rufen Sie in der Google Cloud Console die Seite Netzwerksicherheit auf.

    Netzwerksicherheit aufrufen

  2. Klicken Sie auf Sicherer Web-Proxy.

  3. Klicken Sie auf den Tab Web-Proxys.

  4. Klicken Sie auf Webproxy einrichten.

  5. Geben Sie einen Namen für den Webproxy ein, den Sie erstellen möchten, z. B. myswp.

  6. Geben Sie eine Beschreibung des Web-Proxys ein, z. B. My new swp.

  7. Wählen Sie in der Liste Regionen die Region aus, in der Sie den Webproxy erstellen möchten.

  8. Wählen Sie in der Liste Netzwerk das Netzwerk aus, für das Sie Erstellen Sie den Web-Proxy.

  9. Wählen Sie in der Liste Subnetzwerk das Subnetzwerk aus, in dem Sie den Webproxy erstellen möchten.

  10. Geben Sie die IP-Adresse des Web-Proxys ein.

  11. Wählen Sie in der Liste Zertifikat das gewünschte Zertifikat aus. zum Erstellen des Web-Proxys.

  12. Wählen Sie in der Liste Richtlinie die Richtlinie aus, die Sie erstellt haben, um den Webproxy zu verknüpfen.

  13. Klicken Sie auf Erstellen.

Cloud Shell

  1. 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
    
  2. Erstellen Sie die Secure Web Proxy-Richtlinie:

      gcloud network-security gateway-security-policies import policy1 \
          --source=policy.yaml --location=REGION
    
  3. 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
    
  4. Erstellen Sie die Sicherheitsrichtlinienregel:

      gcloud network-security gateway-security-policies rules import allow-example-com \
          --source=rule.yaml \
          --location=REGION \
          --gateway-security-policy=policy1
    
  5. So hängen Sie eine TLS-Prüfungsrichtlinie an eine vorhandene Richtlinie an: Sicherheitsrichtlinie, Datei erstellen POLICY_FILE.yaml. Ersetzen POLICY_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
    

Nächste Schritte