Ce guide explique comment utiliser les listes d'URL pour définir les URL auxquelles vos utilisateurs peuvent accéder.
Avant de commencer
Suivez les étapes de configuration initiale.
Vérifiez que la version 406.0.0 (ou ultérieure) de la Google Cloud CLI est installée :
gcloud version | head -n1Si vous avez installé une version antérieure de la gcloud CLI, mettez-la à jour :
gcloud components update --version=406.0.0
Créer une instance Secure Web Proxy avec une règle vide
Pour créer une instance de proxy Web sécurisé, vous devez d'abord créer une stratégie de sécurité vide, puis créer un proxy Web qui utilise cette stratégie.
Créer une règle de sécurité vide
Console
Dans la console Google Cloud , accédez à la page Règles SWP.
Cliquez sur Créer une règle.
Dans le champ Nom, saisissez un nom pour la stratégie (par exemple,
myswppolicy).Dans le champ Description, saisissez une description de la règle, par exemple
My new swp policy.Pour Régions, sélectionnez la région dans laquelle vous souhaitez créer le règlement, par exemple
us-central1.Cliquez sur Créer.
Cloud Shell
Utilisez l'éditeur de texte de votre choix pour créer un fichier
policy.yaml.Ajoutez ce qui suit au fichier
policy.yamlque vous avez créé :name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTIONRemplacez les éléments suivants :
PROJECT_NAME: nom de votre projetREGION: région dans laquelle votre stratégie est créée, par exempleus-central1POLICY_NAME: nom de votre règlePOLICY_DESCRIPTION: description de votre règle
Importez la stratégie de sécurité à l'aide de la commande
gcloud network-security gateway-security-policies import:gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Créer un proxy Web
Console
Dans la console Google Cloud , accédez à la page Proxys Web.
Cliquez sur Créer un proxy Web sécurisé.
Dans le champ Nom, saisissez un nom pour le proxy Web, tel que
myswp.Dans le champ Description, saisissez une description du proxy Web, par exemple
My new swp.Pour Mode de routage, sélectionnez l'option Explicite.
Pour Régions, sélectionnez la région dans laquelle vous souhaitez créer le proxy Web, par exemple
us-central1.Pour Réseau, sélectionnez le réseau sur lequel vous souhaitez créer le proxy Web.
Pour Sous-réseau, sélectionnez le sous-réseau VPC que vous avez créé précédemment dans les étapes de configuration initiale.
Facultatif : Dans le champ Adresse IP du proxy Web, saisissez l'adresse IP du proxy Web sécurisé.
Vous pouvez saisir une adresse IP de la plage d'adresses IP du proxy Web sécurisé qui se trouve dans le sous-réseau que vous avez créé à l'étape précédente. Si vous ne saisissez pas l'adresse IP, votre instance Secure Web Proxy choisit automatiquement une adresse IP dans le sous-réseau sélectionné.
Pour Certificat, sélectionnez le certificat que vous souhaitez utiliser pour créer le proxy Web.
Pour Règle, sélectionnez la règle que vous avez créée pour associer le proxy Web.
Cliquez sur Créer.
Cloud Shell
Utilisez l'éditeur de texte de votre choix pour créer un fichier
gateway.yaml.Ajoutez ce qui suit au fichier
gateway.yaml.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/SUBNETWORK addresses: [GATEWAY_IP_ADDRESS] scope: samplescopeRemplacez les éléments suivants :
GATEWAY_NAME: nom de cette instance Secure Web ProxyGATEWAY_PORT_NUMBERS: liste des numéros de port pour cette passerelle, par exemple[80,443].CERTIFICATE_URLS: liste des URL des certificats SSLSUBNETWORK: sous-réseau VPC que vous avez créé précédemment dans le cadre des étapes de configuration initiale.GATEWAY_IP_ADDRESS: liste facultative d'adresses IP pour vos instances Secure Web Proxy dans les sous-réseaux de proxy que vous avez créés précédemment dans les étapes de configuration initialeSi vous choisissez de ne pas lister les adresses IP, omettez le champ pour laisser le proxy Web choisir une adresse IP pour vous.
Créez l'instance Secure Web Proxy à l'aide de la commande
gcloud network-services gateways import:gcloud network-services gateways import GATEWAY_NAME \ --source=gateway.yaml \ --location=REGION
Tester la connectivité
Pour tester la connectivité, utilisez la commande curl à partir de n'importe quelle instance de machine virtuelle (VM) de votre réseau de cloud privé virtuel (VPC) :
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Si tout fonctionne correctement, votre instance de proxy Web sécurisé renvoie un code d'état 403 Forbidden. Cette erreur confirme les points suivants :
L'instance de proxy Web sécurisé a été déployée et reçoit activement du trafic.
La stratégie de proxy Web sécurisé applique correctement la posture de sécurité par défaut qui consiste à refuser tout le trafic jusqu'à ce que vous définissiez des règles
allowspécifiques dans les sections suivantes.
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
Dans la console Google Cloud , accédez à la page Listes d'URL.
Cliquez sur Créer une liste d'URL.
Saisissez le nom de la liste d'URL que vous souhaitez créer, par exemple
myurllist.Saisissez une description de la liste d'URL, par exemple
My new URL list.Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer la liste d'URL.
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.
Cliquez sur Créer.
Cloud Shell
Utilisez l'éditeur de texte de votre choix pour créer le fichier URL_LIST_FILE
.yaml. ReplaceURL_LIST_FILE avec le nom de fichier de votre choix.name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME values: URL_LISTRemplacez les éléments suivants :
PROJECT_ID: votre numéro de projetREGION: région à laquelle s'applique cette liste d'URLURL_LIST_NAME: nom de la liste d'URL que vous créezURL_LIST: 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.
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 dans YAML. Par conséquent, vous devez ajouter des guillemets autour des URL qui incluent un caractère*.Ajoutez la liste d'URL pour qu'elle puisse être référencée par une règle Secure Web Proxy :
gcloud network-security url-lists import URL_LIST_NAME \ --location=REGION \ --project=PROJECT_ID \ --source=URL_LIST_FILE.yaml
Ajouter une règle
Console
Dans la console Google Cloud , accédez à la page Règles SWP.
Dans le menu permettant de sélectionner le projet, sélectionnez l'ID de votre organisation ou le dossier contenant votre stratégie.
Cliquez sur le nom de votre stratégie.
Cliquez sur Ajouter une règle.
Renseignez les champs de la règle :
- Nom
- Description
- Status
- 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ù
0correspond à la priorité la plus élevée. - Dans la section Action, indiquez si les connexions correspondant à la règle sont autorisées (Autoriser) ou refusées (Refuser).
Dans la section Correspondance de session, spécifiez 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')"Pour activer l'inspection TLS, sélectionnez Activer l'inspection TLS.
Dans la section Correspondance de l'application, spécifiez les critères de correspondance de la requête.
Cliquez sur Créer.
Cliquez sur Ajouter une règle pour ajouter une règle.
Cliquez sur Créer pour créer la règle.
Cloud Shell
Utilisez l'éditeur de texte de votre choix pour créer le fichier
RULE_FILE.yaml. RemplacezRULE_FILEpar le nom de fichier de votre choix.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_EXPRESSIONRemplacez les éléments suivants :
PROJECT_ID: votre numéro de projetREGION: région à laquelle s'applique cette règle.POLICY_NAME: nom d'unGatewaySecurityPolicyexistant utilisé par votre instance de proxy Web sécurisé.RULE_NAME: nom duGatewaySecurityPolicyRuleque vous créezPRIORITY_VALUE: valeur de priorité pour cette règle. Les nombres les plus faibles correspondent aux priorités les plus élevées.RULE_DESCRIPTION: description de la règle que vous créezSESSION_CEL_EXPRESSION: expression CEL (Common Expression Language) pour la sessionAPPLICATION_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')"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é, utilisez 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 WebSWP_PORT_NUMBER: numéro de port de votre proxy Web, tel que443HTTP_TEST_ADDRESS: adresse à tester, telle quehttps://www.example.com, qui correspond à une entrée d'hôte ou d'URL dans votreURL_LIST.
La requête devrait renvoyer une réponse positive.