Pour centraliser votre déploiement de proxy Web sécurisé sur plusieurs réseaux VPC, vous pouvez rendre le proxy Web sécurisé disponible via un rattachement de service Private Service Connect.
Le déploiement de Secure Web Proxy avec Private Service Connect implique les étapes suivantes :
- Créez une stratégie et des règles de proxy Web sécurisé.
- Créez une instance Secure Web Proxy qui utilise votre stratégie.
- Créez un rattachement de service pour publier l'instance de proxy Web sécurisé en tant que service Private Service Connect.
- Créez un point de terminaison consommateur Private Service Connect dans chaque réseau VPC qui doit se connecter à Secure Web Proxy.
- Redirigez le trafic sortant de votre charge de travail vers l'instance de proxy Web sécurisé centralisée dans la région.
Avant de commencer
Avant de suivre les étapes de cette page, effectuez la configuration initiale.
Créer et configurer une instance Secure Web Proxy
Ce guide explique comment créer une stratégie et des règles de proxy Web sécurisé qui correspondent au trafic par session.
Pour savoir comment configurer l'inspection TLS (facultatif), consultez Activer l'inspection TLS.
Pour en savoir plus sur la configuration facultative de la mise en correspondance au niveau de l'application, consultez Déployer une instance Secure Web Proxy.
Créer une règle Secure Web Proxy
Console
Dans la console Google Cloud , accédez à la page Règles SWP.
Cliquez sur Créer une règle.
Saisissez le nom de la règle que vous souhaitez créer, par exemple
myswppolicy.Saisissez une description de la règle.
Dans la liste Régions, sélectionnez la région dans laquelle vous souhaitez créer la règle de proxy Web.
Cliquez sur Créer.
Cloud Shell
Créez un fichier
policy.yaml.description: basic Secure Web Proxy policy name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1Remplacez les éléments suivants :
PROJECT_ID: ID de votre projetREGION: région de la règle
Créez une stratégie de proxy Web sécurisé basée sur
policy.yaml.gcloud network-security gateway-security-policies import policy1 \ --source=policy.yaml \ --location=REGION
Ajouter des règles Secure Web Proxy à votre stratégie
Configurez des règles de proxy Web sécurisé pour autoriser le trafic sortant de chaque charge de travail.
Cette section explique comment créer une règle pour autoriser le trafic provenant de charges de travail identifiées par un tag Resource Manager ou un compte de service. Pour savoir comment faire correspondre le trafic d'autres manières, consultez la documentation de référence sur le langage de correspondance CEL.
Console
Dans la console Google Cloud , accédez à la page Règles SWP.
Cliquez sur le nom de votre stratégie.
Pour ajouter des règles permettant aux charges de travail d'accéder à Internet, procédez comme suit :
- Cliquez sur Ajouter une règle.
- Saisissez une priorité. Les règles sont évaluées de la priorité la plus élevée à la plus faible, où
0correspond à la priorité la plus élevée. - Saisissez un nom.
- Saisissez une description.
- Saisissez un état.
- Dans le champ Action, sélectionnez Autoriser.
- Cliquez sur État, puis sélectionnez Activé.
Dans la section Correspondance de session, spécifiez les critères de correspondance de la session.
Par exemple, pour autoriser le trafic vers google.com à partir de charges de travail avec l'ID de valeur de tag Resource Manager
tagValues/123456, saisissez ce qui suit :source.matchTag('tagValues/123456') && host() == 'google.com'Pour autoriser le trafic vers google.com à partir des charges de travail qui utilisent le compte de service
account-name@my-project.iam.gserviceaccount.com, saisissez ce qui suit :source.matchServiceAccount('account-name@my-project.iam.gserviceaccount.com') && host() == 'google.com'
Cliquez sur Créer.
Cloud Shell
Pour chaque règle que vous souhaitez ajouter, procédez comme suit :
Créez un fichier
rule.yamlet spécifiez les critères de correspondance de la session.Pour autoriser le trafic vers un domaine spécifique à partir des charges de travail identifiées par l'ID de valeur de tag Resource Manager, créez le fichier suivant :
name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/RULE_NAME description: Allow traffic based on tag enabled: true priority: PRIORITY basicProfile: ALLOW sessionMatcher: source.matchTag('TAG_VALUE_ID') && host() == 'DOMAIN_NAME'Remplacez les éléments suivants :
PROJECT_ID: ID de votre projetREGION: région de votre règleRULE_NAME: nom de la règle.PRIORITY: priorité 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)TAG_VALUE_ID: ID de la valeur de tag des charges de travail pour lesquelles le trafic doit être autoriséDOMAIN_NAME: nom de domaine vers lequel autoriser le trafic
Pour autoriser le trafic vers un domaine spécifique à partir de charges de travail qui utilisent un compte de service, créez le fichier suivant :
name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/policy1/rules/RULE_NAME description: Allow traffic based on service account enabled: true priority: PRIORITY basicProfile: ALLOW sessionMatcher: source.matchServiceAccount('SERVICE_ACCOUNT') && host() == 'DOMAIN_NAME'Remplacez
SERVICE_ACCOUNTpar le nom du compte de service.
Pour mettre à jour votre règle avec la règle que vous avez définie dans
rule.yaml, utilisez la commande suivante :gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=rule.yaml \ --location=REGION \ --gateway-security-policy=policy1
Déployer une instance Secure Web Proxy
Déployez une instance Secure Web Proxy en mode de routage explicite dans le réseau de cloud privé virtuel (VPC) que vous souhaitez utiliser pour le trafic sortant. Lorsque vous créez l'instance, associez-la à la stratégie et aux règles que vous avez créées lors des étapes précédentes.
La publication d'un proxy Web sécurisé avec un rattachement de service Private Service Connect n'est pas compatible avec le mode de routage du saut suivant.
Pour en savoir plus sur la configuration de l'instance, consultez Configurer un proxy Web. Vous n'avez pas besoin d'effectuer les autres étapes de cette page pour le moment.
Déployer Secure Web Proxy en tant que service Private Service Connect dans un modèle hub and spoke
Cette section explique comment déployer Secure Web Proxy en tant que service Private Service Connect, à l'aide d'un modèle hub and spoke pour centraliser la gestion du trafic sortant.
Publier Secure Web Proxy en tant que service Private Service Connect
Pour publier le proxy Web sécurisé en tant que service, créez un sous-réseau et un rattachement de service Private Service Connect. Le sous-réseau et le rattachement de service doivent se trouver dans la même région que les points de terminaison Private Service Connect qui accèdent au rattachement de service.
Créer un sous-réseau pour Private Service Connect
Pour créer un sous-réseau pour Private Service Connect, procédez comme suit.
Console
Dans la console Google Cloud , accédez à la page Réseaux VPC.
Cliquez sur le nom d'un réseau VPC pour afficher la page des détails du réseau VPC.
Cliquez sur Sous-réseaux.
Cliquez sur Ajouter un sous-réseau. Dans le panneau qui apparaît, procédez comme suit :
- Indiquez un Nom.
- Sélectionnez une Région.
- Dans la section Objectif, sélectionnez Private Service Connect.
- Pour Type de pile d'adresses IP, sélectionnez IPv4 (pile unique) ou IPv4 et IPv6 (double pile).
- Saisissez une plage IPv4. Exemple :
10.10.10.0/24 - Si vous créez un sous-réseau à double pile, définissez le type d'accès IPv6 sur Interne.
- Cliquez sur Ajouter.
Cloud Shell
Effectuez l'une des opérations suivantes :
Pour créer un sous-réseau Private Service Connect IPv4 uniquement, procédez comme suit :
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --range=SUBNET_RANGE \ --purpose=PRIVATE_SERVICE_CONNECTPour créer un sous-réseau Private Service Connect à double pile, procédez comme suit :
gcloud compute networks subnets create SUBNET_NAME \ --network=NETWORK_NAME \ --region=REGION \ --stack-type=IPV4_IPV6 \ --ipv6-access-type=INTERNAL \ --range=SUBNET_RANGE \ --purpose=PRIVATE_SERVICE_CONNECT
Remplacez les éléments suivants :
SUBNET_NAME: nom à attribuer au sous-réseau.NETWORK_NAME: nom du VPC pour le nouveau sous-réseau.REGION: région du nouveau sous-réseau. Il doit s'agir de la même région que celle du service que vous publiez.SUBNET_RANGE: plage d'adresses IPv4 à utiliser pour le sous-réseau, par exemple10.10.10.0/24.
Créer un rattachement de service
Pour publier le proxy Web sécurisé en tant que pièce jointe de service dans le réseau VPC central (hub), procédez comme suit.
Cette section explique comment créer un rattachement de service qui accepte automatiquement toutes les connexions. Pour en savoir plus sur l'approbation explicite ou d'autres options de configuration, consultez Publier un service avec approbation explicite.
Console
Dans la console Google Cloud , accédez à la page Private Service Connect.
Cliquez sur l'onglet Services publiés.
Cliquez sur Publier le service.
Dans la section Détails de la cible, sélectionnez Proxy Web sécurisé.
Sélectionnez l'instance de proxy Web sécurisé que vous souhaitez publier. Les champs de réseau et de région sont renseignés avec les détails de l'instance de proxy Web sécurisé sélectionnée.
Dans le champ Nom du service, saisissez le nom du rattachement de service.
Sélectionnez un ou plusieurs sous-réseaux Private Service Connect pour le service. La liste contient les sous-réseaux du réseau VPC de l'instance Secure Web Proxy sélectionnée.
Dans la section Préférences de connexion, sélectionnez Accepter automatiquement toutes les connexions.
Cliquez sur Ajouter un service.
Cloud Shell
Exécutez la commande gcloud compute service-attachments create.
gcloud compute service-attachments create SERVICE_ATTACHMENT_NAME \
--target-service=SWP_INSTANCE_URI \
--connection-preference=ACCEPT_AUTOMATIC \
--nat-subnets=NAT_SUBNET_NAME \
--region=REGION \
--project=PROJECT \
Remplacez les éléments suivants :
SERVICE_ATTACHMENT_NAME: nom du rattachement de serviceSWP_INSTANCE_URI: URI de l'instance Secure Web Proxy, au format suivant ://networkservices.googleapis.com/projects/PROJECT_ID/locations/REGION/gateways/INSTANCE_NAMENAT_SUBNET_NAME: nom du sous-réseau Private Service ConnectREGION: région du déploiement Secure Web ProxyPROJECT: projet du déploiement Secure Web Proxy
Créer des points de terminaison
Créez un point de terminaison dans chaque réseau et région VPC qui doivent envoyer du trafic sortant via l'instance de Secure Web Proxy centralisée. Répétez les étapes suivantes pour chaque point de terminaison que vous devez créer.
Console
Dans la console Google Cloud , accédez à la page Private Service Connect.
Cliquez sur l'onglet Points de terminaison connectés.
Cliquez sur Connecter le point de terminaison.
Pour Cible, sélectionnez Service publié
Dans le champ Service cible, saisissez l'URI du rattachement de service auquel vous souhaitez vous connecter.
L'URI du rattachement de service est au format suivant :
projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME.Dans le champ Nom du point de terminaison, saisissez un nom à utiliser pour le point de terminaison.
Sélectionnez un réseau pour le point de terminaison.
Sélectionnez un sous-réseau pour le point de terminaison.
Sélectionnez une adresse IP pour le point de terminaison. Si vous avez besoin d'une nouvelle adresse IP, vous pouvez en créer une :
- Cliquez sur le menu déroulant Adresse IP, puis sélectionnez Créer une adresse IP.
- Saisissez un nom et une description facultative pour l'adresse IP.
- Sélectionnez une version IP.
Si vous créez une adresse IPv4, sélectionnez Attribuer automatiquement ou Laissez-moi choisir.
Si vous avez sélectionné Laissez-moi choisir, saisissez l'adresse IP personnalisée que vous souhaitez utiliser.
Cliquez sur Réserver.
Cliquez sur Ajouter un point de terminaison.
Cloud Shell
Réservez une adresse IP interne à attribuer au point de terminaison.
gcloud compute addresses create ADDRESS_NAME \ --region=REGION \ --subnet=SUBNET \ --ip-version=IP_VERSIONRemplacez l'élément suivant :
ADDRESS_NAME: nom à attribuer à l'adresse IP réservée.REGION: région de l'adresse IP du point de terminaison. Il doit s'agir de la même région que celle contenant le rattachement de service du producteur de services.SUBNET: nom du sous-réseau de l'adresse IP du point de terminaison.IP_VERSION: version IP de l'adresse IP, qui peut êtreIPV4ouIPV6.IPV4est la valeur par défaut. Pour spécifierIPV6, l'adresse IP doit être connectée à un sous-réseau avec une plage d'adresses IPv6 internes.
Créez une règle de transfert pour connecter le point de terminaison au rattachement de service du producteur de services.
gcloud compute forwarding-rules create ENDPOINT_NAME \ --region=REGION \ --network=NETWORK_NAME \ --address=ADDRESS_NAME \ --target-service-attachment=SERVICE_ATTACHMENT
Remplacez l'élément suivant :
ENDPOINT_NAME: nom à attribuer au point de terminaison.REGION: région du point de terminaison. Cette région doit être celle qui contient le rattachement de service du producteur de services.NETWORK_NAME: nom du réseau VPC utilisé pour le point de terminaison.ADDRESS_NAME: nom de l'adresse réservée.SERVICE_ATTACHMENT: URI du rattachement de service du producteur de services. Exemple :projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME.
Pointer les charges de travail vers des points de terminaison Private Service Connect
Configurez les variables d'environnement du proxy afin que chaque charge de travail utilise l'adresse IP d'un point de terminaison Private Service Connect pour le trafic sortant.
Par exemple, pour une charge de travail dans un environnement Linux ou macOS, vous pouvez utiliser la ligne de commande pour configurer temporairement les variables d'environnement HTTP_PROXY et HTTPS_PROXY :
export HTTP_PROXY="http://ENDPOINT_IP_ADDRESS:HTTP_PORT"
export HTTPS_PROXY="https://ENDPOINT_IP_ADDRESS:HTTPS_PORT"
Remplacez les éléments suivants :
ENDPOINT_IP_ADDRESS: adresse IP interne de votre point de terminaisonHTTP_PORT: port de réception du trafic HTTPHTTPS_PORT: port de réception du trafic HTTPS
Pour savoir comment définir de manière permanente des variables de proxy dans l'environnement de vos charges de travail, consultez la documentation de votre système d'exploitation.
Étape suivante
- Configurer l'inspection TLS
- Utiliser des tags pour créer des règles
- Attribuer des adresses IP statiques pour le trafic de sortie
- Considérations supplémentaires pour le mode de rattachement de service Private Service Connect