Utiliser une liste d'URL pour créer des règles

Ce guide explique comment utiliser des listes d'URL pour définir des URL que vos utilisateurs peuvent y accéder.

Avant de commencer

  • Effectuez la configuration initiale étapes.

  • Vérifiez que la Google Cloud CLI version 406.0.0 ou ultérieure est installée:

    gcloud version | head -n1
    

    Si une version antérieure de la gcloud CLI est installée, mettez-la à jour:

    gcloud components update --version=406.0.0
    

Créer une instance de proxy Web sécurisé avec une règle vide

Pour créer une instance de proxy Web sécurisé, créez d'abord une stratégie de sécurité vide, puis un proxy Web.

Créer une stratégie de sécurité vide

Console

  1. Dans Google Cloud Console, accédez à la page Sécurité du réseau.

    Accéder à la page "Sécurité du réseau"

  2. Cliquez sur Proxy Web sécurisé.

  3. Cliquez sur l'onglet Règles.

  4. Cliquez sur Create a policy (Créer une règle).

  5. Saisissez un nom pour la règle que vous souhaitez créer, comme myswppolicy.

  6. Saisissez une description de la stratégie, par exemple My new swp policy.

  7. Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer la règle.

  8. Cliquez sur Créer.

Cloud Shell

  1. Utilisez l'éditeur de texte de votre choix pour créer le fichier. POLICY_FILE.yaml. Remplacez POLICY_FILE par le nom de fichier souhaité pour le fichier de stratégie.

  2. Ajoutez le code suivant au fichier YAML que vous avez créé:

    name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME
    description: POLICY_DESCRIPTION
    

    Remplacez les éléments suivants :

    • PROJECT_NAME : nom de votre projet
    • REGION: région à laquelle cette règle s'applique
    • POLICY_NAME : nom de la stratégie que vous créez
    • POLICY_DESCRIPTION : description de la règle que vous créez
  3. Importez la stratégie de sécurité :

    gcloud network-security gateway-security-policies import POLICY_NAME \
        --source=POLICY_FILE.yaml \
        --location=REGION
    

Créer un proxy Web

Console

  1. Dans Google Cloud Console, accédez à la page Sécurité du réseau.

    Accéder à la page "Sécurité du réseau"

  2. Cliquez sur Proxy Web sécurisé.

  3. Cliquez sur Configurer un proxy Web.

  4. Saisissez un nom pour le proxy Web que vous souhaitez créer, comme myswp.

  5. Saisissez une description du proxy Web, telle que My new swp.

  6. Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer le proxy Web.

  7. Dans la liste Réseau, sélectionnez le réseau sur lequel vous souhaitez créer le proxy Web.

  8. Dans la liste Sous-réseau, sélectionnez le sous-réseau sur lequel créer le proxy Web.

  9. Saisissez l'adresse IP du proxy Web.

  10. Dans la liste Certificat, sélectionnez le certificat de votre choix. pour créer le proxy Web.

  11. Dans la liste Règle, sélectionnez la règle que vous avez créée. auquel associer le proxy Web.

  12. Cliquez sur Créer.

Cloud Shell

  1. Utilisez l'éditeur de texte de votre choix pour créer le fichier GATEWAY_FILE.yaml. Remplacer GATEWAY_FILE par le nom de fichier souhaité le fichier proxy Web.

  2. Ajoutez le code suivant au fichier YAML que vous avez créé:

    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/SUBNET_NAME
    addresses: [GATEWAY_IP_ADDRESS]
    scope: samplescope
    

    Remplacez les éléments suivants :

    • GATEWAY_NAME : nom de cette instance
    • GATEWAY_PORT_NUMBERS: liste de numéros de port pour cette passerelle, par exemple [80,443]
    • CERTIFICATE_URLS: une liste de certificats SSL URL
    • SUBNET_NAME : nom du sous-réseau contenant GATEWAY_IP_ADDRESS

    • GATEWAY_IP_ADDRESS : liste facultative d'adresses IP pour vos instances de proxy Web sécurisé dans les sous-réseaux de proxy créés précédemment lors des étapes de configuration initiale

      Si vous choisissez de ne pas lister les adresses IP, omettez ce champ pour que le proxy Web choisisse une adresse IP pour vous.

  3. Créez une instance de proxy Web sécurisé :

    gcloud network-services gateways import GATEWAY_NAME \
        --source=GATEWAY_FILE.yaml \
        --location=REGION
    

Tester la connectivité

Pour tester la connectivité, utilisez la commande curl à partir de n'importe quelle VM de votre réseau cloud privé virtuel (VPC) :

  curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure

Une erreur 403 Forbidden est attendue.

Créer une liste d'URL

Pour créer une liste d'URL et ajouter une règle, effectuez les tâches décrites dans les sections suivantes.

Créer et configurer une liste d'URL

Console

  1. Dans Google Cloud Console, accédez à la page Sécurité du réseau.

    Accéder à la page "Sécurité du réseau"

  2. Cliquez sur Proxy Web sécurisé.

  3. Cliquez sur l'onglet Listes d'URL.

  4. Cliquez sur Créer une liste d'URL.

  5. Attribuez un nom à la liste d'URL que vous souhaitez créer, par exemple myurllist.

  6. Saisissez une description de la liste d'URL, par exemple My new URL list.

  7. Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer la liste d'URL.

  8. Cliquez sur Importer des listes pour importer la liste des hôtes, des URL ou des modèles à faire correspondre. Pour en savoir plus, consultez la documentation de référence sur la syntaxe UrlList.

  9. Cliquez sur Créer.

Cloud Shell

  1. Utilisez l'éditeur de texte de votre choix pour créer le fichier. URL_LIST_FILE.yaml. ReplaceURL_LIST_FILE` par le nom de fichier souhaité.

      name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME
      values: URL_LIST
    

    Remplacez les éléments suivants :

    • PROJECT_ID : votre numéro de projet
    • REGION: région à laquelle s'applique cette liste d'URL
    • URL_LIST_NAME : nom de la liste d'URL que vous créez
    • URL_LIST: liste des hôtes, des URL ou des formats à mettre en correspondance

    Pour en savoir plus, consultez la documentation de référence sur la syntaxe UrlList.

    Voici un exemple de fichier de règles de liste d'URL:

    name: projects/PROJECT_ID/locations/REGION/urlLists/example-org-allowed-list
    values:
      - www.example.com
      - about.example.com
      - "*.google.com"
      - "github.com/example-org/*"
    

    L'astérisque (*) a une signification particulière en YAML. Par conséquent, vous devez ajouter des guillemets autour des URL qui incluent un caractère *.

  2. Ajouter la liste d'URL afin qu'un proxy Web sécurisé puisse la référencer d'entrée:

    gcloud network-security url-lists import URL_LIST_NAME \
        --location=REGION \
        --project=PROJECT_ID \
        --source=URL_LIST_FILE.yaml
    

Ajouter une règle

Console

  1. Dans Google Cloud Console, accédez à la page Sécurité du réseau.

    Accéder à la page "Sécurité du réseau"

  2. Cliquez sur Proxy Web sécurisé.

  3. Dans le menu de sélection du projet, choisissez l'ID de votre organisation ou le dossier. qui contient votre stratégie.

  4. Cliquez sur le nom de votre stratégie.

  5. Cliquez sur Ajouter une règle.

  6. Renseignez les champs de la règle :

    1. Nom
    2. Description
    3. Status
    4. Priorité : ordre d'évaluation numérique de la règle. Les règles sont évaluées de la priorité la plus élevée à la plus faible, où 0 correspond à la priorité la plus élevée.
    5. Dans la section Action, indiquez si les connexions correspondant à la règle sont autorisées (Autoriser) ou refusées (Refuser).
    6. Dans la section Correspondance de session, indiquez le nom de la liste d'URL. que vous avez créée précédemment. Exemple :

        sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
      
    7. Pour activer l'inspection TLS, sélectionnez Activer l'inspection TLS.

    8. Dans la section Application Match (Correspondance des applications), spécifiez les critères de correspondance de la requête.

    9. Cliquez sur Créer.

  7. Cliquez sur Ajouter une règle pour ajouter une règle.

  8. Cliquez sur Créer pour créer la règle.

Cloud Shell

  1. Utilisez l'éditeur de texte de votre choix pour créer le fichier RULE_FILE.yaml. Remplacez RULE_FILE par le nom de fichier souhaité.

    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_EXPRESSION
    

    Remplacez les éléments suivants :

    • PROJECT_ID : votre numéro de projet
    • REGION : région à laquelle cette règle s'applique
    • POLICY_NAME: nom d'un élément GatewaySecurityPolicy existant utilisé par votre instance de proxy Web sécurisé
    • RULE_NAME: nom du GatewaySecurityPolicyRule que vous création
    • PRIORITY_VALUE : valeur de priorité pour cette règle. Les nombres inférieurs correspondent à des priorités plus élevées.
    • RULE_DESCRIPTION: description de la règle que vous création
    • SESSION_CEL_EXPRESSION: expression CEL (Common Expression Language) pour la session
    • APPLICATION_CEL_EXPRESSION: expression CEL pour l'application.

    Voici un exemple de fichier de règles:

    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')"
    

  2. Ajoutez une règle de proxy Web sécurisé à l'aide de la liste d'URL que vous avez créée précédemment :

        gcloud network-security gateway-security-policies rules import RULE_NAME \
          --location=REGION \
          --project=PROJECT_ID \
          --source=RULE_FILE.yaml \
          --gateway-security-policy=POLICY_NAME
    

Tester la connectivité

Pour tester la connectivité, exécutez la commande curl suivante:

curl -x https://SWP_IP_ADDRESS:SWP_PORT_NUMBER HTTP_TEST_ADDRESS
--proxy-insecure

Remplacez les éléments suivants :

  • SWP_IP_ADDRESS: adresse IP de votre proxy Web

  • SWP_PORT_NUMBER: numéro de port de votre proxy Web, tel que 443

  • HTTP_TEST_ADDRESS : adresse à tester, telle que https://www.example.com, qui correspond à une entrée d'hôte ou d'URL dans votre URL_LIST

La requête doit renvoyer une réponse positive.

Étape suivante