Configurer l'inspection TLS

Cette page explique comment configurer l'inspection TLS (Transport Layer Security) pour Cloud Next Generation Firewall.

Avant de commencer

Avant de configurer l'inspection TLS, effectuez les tâches décrites dans les sections suivantes.

Activer Certificate Authority Service

Cloud NGFW utilise Certificate Authority Service pour générer des autorités de certification (CA) intermédiaires. Cloud NGFW utilise ces CA intermédiaires pour générer les certificats utilisés pour l'inspection TLS.

Pour activer le service CA, utilisez la commande suivante :

   gcloud services enable privateca.googleapis.com
  

Activer le gestionnaire de certificats

Cloud NGFW utilise le gestionnaire de certificats pour créer des configurations de confiance. Si vous ne souhaitez pas utiliser de configuration de confiance, ignorez cette étape.

Pour activer le gestionnaire de certificats, exécutez la commande suivante :

   gcloud services enable certificatemanager.googleapis.com
  

Créer une configuration de confiance

Il s'agit d'une étape facultative. Pour créer une configuration de confiance, suivez les étapes décrites dans cette section.

  1. Créez un pool d'autorités de certification.

    Le pool d'autorités de certification que vous créez à cette étape est différent de celui que vous créez pour configurer la règle d'inspection TLS.

  2. Créez une autorité de certification racine à l'aide du pool d'autorités de certification que vous avez créé précédemment.

  3. Créez un certificat à l'aide d'une clé générée automatiquement. Utilisez le nom du pool d'autorités de certification que vous avez créé précédemment.

  4. Obtenez le certificat public de l'autorité de certification à partir du certificat créé.

    $PEM-CERT=$(gcloud privateca roots describe ROOT_CA_NAME \
       --location LOCATION \
       --project PROJECT_ID \
       --pool CA_POOL \
       --format "value(pemCaCertificates)")
    

    Remplacez les éléments suivants :

    • ROOT_CA_NAME : nom de l'autorité de certification racine
    • LOCATION : emplacement de l'autorité de certification racine
    • PROJECT_ID : ID de projet de l'autorité de certification racine
    • CA_POOL : nom du pool d'autorités de certification à partir duquel créer les certificats
  5. Créez et importez une configuration de confiance à l'aide du PEM-CERT obtenu à l'étape précédente. Si vous utilisez votre propre autorité de certification, utilisez le certificat public obtenu à partir de votre autorité de certification.

Vous utilisez cette configuration de confiance pour créer une règle d'inspection TLS.

Créer un pool d'autorités de certification

Vous devez créer un pool d'autorités de certification avant de pouvoir utiliser le service CA pour créer une autorité de certification. Pour créer un pool d'autorités de certification, suivez les instructions de la section Créer des pools d'autorités de certification.

Vous utilisez ce pool d'autorités de certification pour créer une règle d'inspection TLS.

Créer une autorité de certification racine

Si vous ne disposez pas d'une autorité de certification racine, vous pouvez en créer une au sein du service CA. Pour créer une autorité de certification racine, suivez les instructions de la section Créer une autorité de certification racine et utilisez le même pool d'autorités de certification que celui créé précédemment (section Créer un pool d'autorités de certification)).

Créer un compte de service

Si vous ne possédez pas de compte de service, vous devez en créer un et accorder les autorisations requises.

  1. Créez un compte de service :

     gcloud services identity create \
         --service networksecurity.googleapis.com \
         --project PROJECT_ID
    

    Remplacez PROJECT_ID par l'ID de projet du compte de service.

    Google Cloud CLI crée un compte de service appelé service-PROJECT_NUMBER@gcp-sa-networksecurity.iam.gserviceaccount.com. Ici, PROJECT_NUMBER est l'identifiant unique du PROJECT_ID que vous avez fourni dans la commande précédente.

  2. Accordez à votre compte de service l'autorisation de générer des certificats qui utilisent votre pool d'autorités de certification :

     gcloud privateca pools add-iam-policy-binding CA_POOL \
         --member 'serviceAccount:SERVICE_ACCOUNT' \
         --role 'roles/privateca.certificateRequester' \
         --location REGION
    

    Remplacez les éléments suivants :

    • CA_POOL : nom du pool d'autorités de certification à partir duquel créer les certificats
    • SERVICE_ACCOUNT : nom du compte de service que vous avez créé à l'étape précédente
    • LOCATION : région du pool d'autorités de certification

Configurer l'inspection TLS

Avant de poursuivre avec les tâches de cette section, assurez-vous d'avoir configuré vos certificats ou d'avoir effectué les tâches préalables énumérées dans la section Avant de commencer.

Pour configurer l'inspection TLS, effectuez les tâches décrites dans les sections suivantes.

Créer une règle d'inspection TLS

Console

  1. Dans la console Google Cloud, accédez à la page Règles d'inspection TLS.

    Accéder aux règles d'inspection TLS

  2. Dans le menu de sélection du projet, sélectionnez votre projet.

  3. Cliquez sur Créer une règle d'inspection TLS.

  4. Dans le champ Nom, saisissez un nom.

  5. Facultatif : Dans le champ Description, saisissez une description.

  6. Dans la liste Région, sélectionnez la région dans laquelle vous souhaitez créer la règle d'inspection TLS.

  7. Dans la liste Pool d'autorités de certification, sélectionnez le pool d'autorités de certification à partir duquel vous souhaitez créer les certificats.

    Si aucun pool d'autorités de certification n'est configuré, cliquez sur Nouveau pool d'autorités de certification et suivez les instructions de la section Créer un pool d'autorités de certification.

  8. Facultatif : Dans la liste Version TLS minimale, sélectionnez la version TLS minimale compatible avec la règle.

  9. Pour Configuration de l'approbation, sélectionnez l'une des options suivantes :

    • Autorités de certification publiques uniquement : sélectionnez cette option si vous souhaitez approuver des serveurs disposant de certificats signés publiquement.
    • Autorités de certification privées uniquement : sélectionnez cette option si vous souhaitez approuver des serveurs disposant de certificats signés en mode privé.

      Dans la liste Configuration de l'approbation privée, sélectionnez la configuration d'approbation avec le magasin de confiance configuré à utiliser pour approuver les certificats de serveur en amont. Pour en savoir plus sur la création d'une configuration de confiance, consultez la page Créer une configuration de confiance.

    • Autorités de certification publiques et privées : sélectionnez cette option si vous souhaitez utiliser des autorités de certification publiques et privées.

  10. Facultatif : Dans la liste Profil de la suite de chiffrement, sélectionnez le type de profil TLS. Vous pouvez choisir l'une des valeurs suivantes :

    • Compatible : autorise l'ensemble le plus vaste de clients, y compris ceux qui n'acceptent que les fonctionnalités TLS obsolètes, à effectuer des négociations TLS.
    • Moderne : accepte un large éventail de fonctionnalités TLS, ce qui permet aux clients modernes d'effectuer des négociations TLS.
    • Limité : accepte un ensemble réduit de fonctionnalités TLS afin de répondre à des exigences de conformité plus strictes.
    • Personnalisé : vous permet de sélectionner des fonctionnalités TLS individuellement.

      Dans la liste Suites de chiffrement, sélectionnez le nom des suite de chiffrement compatibles avec le profil personnalisé.

  11. Cliquez sur Créer.

gcloud

  1. Créez un fichier YAML TLS_INSPECTION_FILE.yaml. Remplacez TLS_INSPECTION_FILE` par le nom de fichier de votre choix.

  2. Ajoutez le code suivant au fichier YAML pour configurer la règle d'inspection TLS.

    name: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME
    caPool: projects/PROJECT_ID/locations/REGION/caPools/CA_POOL
    minTlsVersion: TLS_VERSION
    tlsFeatureProfile: PROFILE_TYPECIPHER_NAME
    excludePublicCaSet: `TRUE`|`FALSE`
    trustConfig: projects/PROJECT_ID/locations/REGION/trustConfigs/TRUST_CONFIG_NAME
    

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de projet de la règle d'inspection TLS
    • REGION : région dans laquelle la règle d'inspection TLS est créée
    • TLS_INSPECTION_NAME : nom de la règle d'inspection TLS
    • CA_POOL : nom du pool d'autorités de certification à partir duquel créer les certificats

      Le pool d'autorités de certification doit exister dans la même région.

    • TLS_VERSION : argument facultatif qui spécifie la version minimale de TLS acceptée par Cloud NGFW.

      Vous pouvez choisir l'une des valeurs suivantes :

      • TLS_1_0
      • TLS_1_1
      • TLS_1_2
    • PROFILE_TYPE : argument facultatif qui spécifie le type de profil TLS

      Vous pouvez choisir l'une des valeurs suivantes :

      • PROFILE_COMPATIBLE : autorise l'ensemble le plus vaste de clients, y compris ceux qui n'acceptent que les fonctionnalités TLS obsolètes, à effectuer des négociations TLS.
      • PROFILE_MODERN : accepte un large éventail de fonctionnalités TLS, ce qui permet aux clients modernes d'effectuer des négociations TLS.
      • PROFILE_RESTRICTED : accepte un ensemble réduit de fonctionnalités TLS afin de répondre à des exigences de conformité plus strictes.
      • PROFILE_CUSTOM : vous permet de sélectionner des fonctionnalités TLS individuellement.
    • CIPHER_NAME : argument facultatif permettant de spécifier le nom de la suite de chiffrement acceptée par le profil personnalisé.

      Vous ne spécifiez cet argument que lorsque le type de profil est défini sur PROFILE_CUSTOM.

    • excludePublicCaSet : option facultative permettant d'inclure ou d'exclure un ensemble d'autorités de certification publique. Par défaut, cette option est définie sur "false". Lorsque cette option est définie sur "true", les connexions TLS ne font pas confiance aux serveurs d'autorités de certification publiques. Dans ce cas, Cloud NGFW ne peut établir des connexions TLS qu'avec des serveurs dont les certificats sont signés par des autorités de certification dans la configuration de confiance.

    • TRUST_CONFIG_NAME : argument facultatif permettant de spécifier le nom de la ressource de configuration de confiance.

  3. Importez la règle d'inspection TLS que vous avez créée dans la section Créer une règle d'inspection TLS.

    gcloud network-security tls-inspection-policies import TLS_INSPECTION_NAME \
        --source TLS_INSPECTION_FILE.yaml \
        --location REGION
    

    Remplacez les éléments suivants :

    • TLS_INSPECTION_NAME : nom de la règle d'inspection TLS
    • TLS_INSPECTION_FILE : nom du fichier YAML de la règle d'inspection TLS

Afficher les détails d'une règle d'inspection TLS

Vous pouvez afficher des informations sur la règle d'inspection TLS que vous avez créée dans votre projet.

Console

  1. Dans la console Google Cloud, accédez à la page Règles d'inspection TLS.

    Accéder aux règles d'inspection TLS

  2. Dans le menu de sélection du projet, sélectionnez votre projet.

  3. Les règles d'inspection TLS sont regroupées dans la section Inspections TLS.

  4. Pour afficher les détails, cliquez sur le nom de votre règle d'inspection TLS.

Ajouter une règle d'inspection TLS à une association de point de terminaison de pare-feu

Pour ajouter la règle d'inspection TLS à une association de point de terminaison de pare-feu, suivez la procédure indiquée dans la section Créer des associations de points de terminaison de pare-feu.

Configurer des règles de stratégie de pare-feu avec l'inspection TLS

Pour activer l'inspection TLS pour votre réseau cloud privé virtuel (VPC), définissez l'option --tls-inspect dans votre règle de stratégie de pare-feu. Cette option indique que l'inspection TLS peut être effectuée lorsque le groupe de profils de sécurité est appliqué.

Pour en savoir plus sur l'activation de l'option --tls-inspect dans les règles de stratégies de pare-feu hiérarchiques, consultez la section Créer des règles de pare-feu.

Pour en savoir plus sur l'activation de l'option --tls-inspect dans les règles de stratégie de pare-feu réseau au niveau mondial, consultez la section Créer des règles de pare-feu de réseau au niveau mondial.

Gérer la règle d'inspection TLS

Vous pouvez regrouper, mettre à jour et supprimer des règles d'inspection TLS dans votre projet.

Regrouper toutes les règles d'inspection TLS

Vous pouvez regrouper toutes les règles d'inspection TLS d'un projet.

Console

  1. Dans la console Google Cloud, accédez à la page Règles d'inspection TLS.

    Accéder aux règles d'inspection TLS

  2. Dans le menu de sélection du projet, sélectionnez votre projet.

  3. Les règles d'inspection TLS sont regroupées dans la section Inspections TLS.

gcloud

Pour répertorier toutes les règles d'inspection TLS, exécutez la commande gcloud network-security tls-inspection-policies list :

gcloud network-security tls-inspection-policies list \
    --project PROJECT_ID \
    --location REGION

Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet pour la règle d'inspection TLS
  • REGION : nom de la région pour laquelle vous souhaitez lister la règle d'inspection TLS

Modifier une règle d'inspection TLS

Vous pouvez modifier une règle d'inspection TLS existante dans votre projet.

Console

  1. Dans la console Google Cloud, accédez à la page Règles d'inspection TLS.

    Accéder aux règles d'inspection TLS

  2. Dans le menu de sélection du projet, sélectionnez votre projet.

  3. Les règles d'inspection TLS sont regroupées dans la section Inspections TLS.

  4. Pour modifier une règle d'inspection TLS, cliquez sur son nom.

  5. Cliquez sur Modifier.

  6. Modifiez les champs obligatoires. Pour plus d'informations sur chaque champ, consultez la section Créer une règle d'inspection TLS.

  7. Cliquez sur Enregistrer.

Supprimer une règle d'inspection TLS

Vous pouvez supprimer une règle d'inspection TLS de votre projet. Toutefois, si la règle d'inspection TLS est référencée par une association de point de terminaison de pare-feu, cette règle d'inspection TLS ne peut pas être supprimée.

Console

  1. Dans la console Google Cloud, accédez à la page Règles d'inspection TLS.

    Accéder aux règles d'inspection TLS

  2. Dans le menu de sélection du projet, sélectionnez votre projet.

  3. Les règles d'inspection TLS sont regroupées dans la section Inspections TLS.

  4. Pour supprimer une règle d'inspection TLS, cochez la case à côté de son nom.

  5. Cliquez sur Supprimer.

  6. Cliquez à nouveau sur Supprimer.

gcloud

Pour supprimer une règle d'inspection TLS, exécutez la commande gcloud network-security tls-inspection-policies delete :

gcloud network-security tls-inspection-policies delete \
    projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME \
    --location REGION

Remplacez les éléments suivants :

  • PROJECT_ID : ID de projet de la règle d'inspection TLS
  • TLS_INSPECTION_NAME : nom de l'inspection TLS
  • REGION : région dans laquelle la règle d'inspection TLS est créée

Étape suivante