Configurer VPC Service Controls et des clusters privés

Cette page décrit le fonctionnement de VPC Service Controls et des clusters privés, et comment les configurer dans Cloud Workstations.

VPC Service Controls

VPC Service Controls offre une sécurité supplémentaire pour vos stations de travail afin de réduire le risque d'exfiltration de données. À l'aide de VPC Service Controls, vous pouvez ajouter des projets aux périmètres de service afin de protéger les ressources et les services des requêtes provenant de l'extérieur du périmètre.

Voici les exigences liées à l'utilisation de Cloud Workstations dans un périmètre de service VPC:

  • Pour protéger Cloud Workstations, vous devez limiter l'API Compute Engine dans votre périmètre de service chaque fois que vous limitez l'API Cloud Workstations.
  • Assurez-vous que l'API Google Cloud Storage, l'API Google Container Registry et l'API Artifact Registry sont accessibles par les VPC dans votre périmètre de service. Cela est nécessaire pour récupérer des images sur votre poste de travail. Nous vous recommandons également d'autoriser l'API Cloud Logging et l'API Cloud Error Reporting pour qu'elles soient accessibles par les VPC dans votre périmètre de service, même si cela n'est pas obligatoire pour utiliser Cloud Workstations.

  • Assurez-vous que votre cluster de poste de travail est privé. La configuration d'un cluster privé empêche les connexions à vos postes de travail depuis l'extérieur de votre périmètre de service VPC. Le service Cloud Workstations empêche la création de clusters publics dans un périmètre de service VPC.
  • Veillez à désactiver les adresses IP publiques dans la configuration de votre poste de travail. Sans cela, les VM disposeront d'adresses IP publiques dans votre projet. Nous vous recommandons vivement d'utiliser la contrainte de règle d'administration constraints/compute.vmExternalIpAccess pour désactiver les adresses IP publiques pour toutes les VM de votre périmètre de service VPC. Pour en savoir plus, consultez la section Limiter les adresses IP externes à des VM spécifiques.

Pour en savoir plus sur les périmètres de service, consultez la page Périmètres de service : détails et configuration.

Architecture

Lorsque vous configurez un cluster de stations de travail en tant que cluster privé, le plan de contrôle du cluster de stations de travail ne possède qu'une adresse IP interne. Cela signifie que les clients du réseau Internet public ne peuvent pas se connecter aux stations de travail appartenant au cluster de stations de travail. Pour utiliser un cluster privé, vous devez le connecter manuellement à votre réseau cloud privé virtuel (VPC) via un point de terminaison Private Service Connect.

Les configurations avec des clusters privés nécessitent deux points de terminaison PSC:

  • Par défaut, Cloud Workstations crée un point de terminaison PSC distinct pour connecter le plan de contrôle aux VM de la station de travail.

  • Vous devez créer un point de terminaison PSC supplémentaire pour les clusters privés. Pour vous connecter à partir de votre ordinateur local à une station de travail dans un cluster privé, votre ordinateur local doit être connecté à votre réseau VPC. Utilisez Cloud VPN ou Cloud Interconnect pour connecter le réseau externe sur lequel vous exécutez votre machine au réseau VPC. Ce point de terminaison PSC supplémentaire doit être créé sur le même réseau que celui auquel votre réseau externe se connecte avec Cloud VPN ou Cloud Interconnect.

Le schéma suivant illustre un exemple d'architecture de cluster privé:

Figure 1. Clusters privés

Avant de commencer

Avant de commencer, assurez-vous d'avoir effectué les étapes de configuration requises:

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Cloud Workstations API.

    Enable the API

  7. Assurez-vous de disposer du rôle IAM Administrateur de Cloud Workstations sur le projet pour pouvoir créer des configurations de stations de travail. Pour vérifier vos rôles IAM dans la console Google Cloud, accédez à la page IAM:

    Accéder à IAM

  8. Cloud Workstations sont hébergées sur des VM démarrées à partir d'images COS (Container-Optimized OS) publiques préconfigurées de Compute Engine. Si la contrainte de règle d'administration constraints/compute.trustedimageProjects est appliquée, vous devez définir des contraintes d'accès aux images pour autoriser les utilisateurs à créer des disques de démarrage à partir de projects/cos-cloud ou de toutes les images publiques.
  9. Facultatif:activez l'API Container File System pour accélérer le démarrage de la station de travail.

    Activer l'API Container File System

    Pour en savoir plus, consultez la section Réduire le temps de démarrage de la station de travail avec le streaming d'images.

Créer un cluster privé

Pour créer un cluster privé, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Stations de travail cloud.

    Accéder à Cloud Workstations

  2. Accédez à la page Gestion du cluster de la station de travail.

  3. Cliquez sur Créer.

  4. Saisissez le nom et sélectionnez une région pour votre cluster de stations de travail.

  5. Dans la section "Mise en réseau", sélectionnez Réseaux dans ce projet.

  6. Sélectionnez un réseau et un sous-réseau.

  7. Dans le champ Type de passerelle, sélectionnez Passerelle privée.

  8. Facultatif: Spécifiez un ou plusieurs projets supplémentaires qui hébergent le point de terminaison Private Service Connect qui permet l'accès HTTP à votre cluster privé. Par défaut, ce point de terminaison ne peut être créé que dans le projet de cluster de stations de travail et le projet hôte du réseau VPC (s'il est différent). Si nécessaire, ces projets peuvent également être spécifiés après la création du cluster.

  9. Cliquez sur Créer. Pendant la création du cluster, l'état affiché est Mise à jour.

    La création d'un cluster prend plusieurs minutes. Une fois la création du cluster terminée, son état peut s'afficher comme Dégradé. Une fois que vous avez suivi la procédure de la section Créer un point de terminaison PSC, l'état du cluster passe à Prêt sous quelques minutes.

Activer la connectivité de cluster privé

Les clients ne peuvent pas se connecter aux postes de travail de clusters de postes de travail privés depuis l'Internet public. Les clients doivent se trouver sur un réseau qui se connecte au cluster de stations de travail à l'aide de Private Service Connect (PSC). Pour vous connecter à une station de travail, suivez les étapes de cette section:

  1. Créez un point de terminaison PSC qui cible le rattachement de service de votre station de travail.

  2. Créez une zone DNS privée.

  3. Utilisez Cloud DNS pour créer un enregistrement DNS qui mappe le nom d'hôte de votre cluster au point de terminaison PSC.

Créer un point de terminaison Private Service Connect

Pour créer un point de terminaison PSC, procédez comme suit:

  1. Dans la console Google Cloud, accédez à Private Service Connect.

    Accéder à Private Service Connect

  2. Cliquez sur l'onglet Points de terminaison connectés, puis sur AjouterConnecter un point de terminaison.

  3. Pour Cible, sélectionnez Service publié

  4. Dans le champ Service cible, saisissez l'URI du rattachement de service créé pour le cluster de stations de travail. Pour le trouver, accédez à votre cluster de stations de travail dans la console, puis recherchez le champ URI de l'attachement de service sous Paramètres réseau.

  5. Dans le champ Point de terminaison, saisissez un nom de point de terminaison.

  6. Sélectionnez un réseau pour le point de terminaison, puis un sous-réseau. Ce réseau doit être celui que vous souhaitez utiliser pour vous connecter à vos stations de travail. Il doit également être le même que celui auquel votre réseau externe se connecte avec Cloud VPN ou Cloud Interconnect.

  7. Sélectionnez une adresse IP pour le point de terminaison.

    Si vous avez besoin d'une nouvelle adresse IP, sélectionnez Créer une adresse IP:

    1. Saisissez un nom et une description facultative pour l'adresse IP.
    2. Pour une adresse IP statique, sélectionnez Attribuer automatiquement. Pour une adresse IP personnalisée, sélectionnez Laissez-moi choisir et saisissez l'adresse IP que vous souhaitez utiliser.
    3. Dans le champ Objectif, sélectionnez Non partagée.
    4. Cliquez sur Réserver.
  8. Sélectionnez un espace de noms dans la liste déroulante ou créez-en un. La région est renseignée en fonction du sous-réseau sélectionné.

  9. Cliquez sur Ajouter un point de terminaison.

  10. Copiez l'adresse IP du point de terminaison afin de pouvoir l'utiliser dans la section suivante pour créer une zone DNS privée et un enregistrement DNS.

Créer une zone DNS privée

Suivez ces étapes pour créer une zone DNS privée pour ce cluster de stations de travail avec le nom DNS défini sur votre clusterHostname, que vous pouvez trouver en accédant à votre cluster de stations de travail dans la console.

  1. Dans Google Cloud Console, accédez à la page Créer une zone DNS.

    Accéder à la page "Créer une zone DNS"

  2. Dans le champ Type de zone, sélectionnez Privé.

  3. Saisissez un Nom de zone, tel que private-workstations-cluster-zone.

  4. Saisissez un suffixe de Nom DNS pour la zone privée. Tous les enregistrements de la zone partagent ce suffixe. Définissez ce nom sur votre clusterHostname.

    Pour trouver votre clusterHostname, accédez à la page Cloud Workstations  > Gestion des clusters dans la console Google Cloud, puis cliquez sur votre cluster de stations de travail pour afficher l'hôte.

  5. Facultatif : ajoutez une description.

  6. Dans le champ Options, sélectionnez Par défaut (privé).

  7. Sélectionnez le réseau sur lequel vous avez créé le point de terminaison PSC dans la section précédente, car l'adresse IP n'est valide que sur ce réseau.

  8. Cliquez sur Créer.

Pour en savoir plus sur les zones DNS privées, consultez la documentation Cloud DNS sur la création d'une zone privée et les bonnes pratiques pour les zones privées Cloud DNS.

Créer un enregistrement DNS

Pour ajouter un enregistrement qui mappe *.<clusterHostname> à l'adresse IP réservée lorsque vous avez créé le point de terminaison Private Service Connect, procédez comme suit:

  1. Dans la console Google Cloud, accédez à la page Zones Cloud DNS.

    Accéder aux zones Cloud DNS

  2. Cliquez sur le nom de la zone gérée à laquelle vous souhaitez ajouter l'enregistrement.

  3. Sur la page Détails de la zone, cliquez sur Ajouter un jeu d'enregistrements standard.

  4. Sur la page Créer un jeu d'enregistrements, dans le champ Nom DNS, saisissez *.<clusterHostname>.

  5. Dans le champ Adresse IP, saisissez l'adresse IP que vous avez réservée pour votre point de terminaison Private Service Connect dans la section précédente.

  6. Cliquez sur Créer.

  7. Votre réseau VPC doit maintenant être connecté au cluster de stations de travail. Vous pouvez vous connecter aux stations de travail à l'aide de ce réseau.

Activer la résolution DNS sur site

Pour utiliser l'éditeur basé sur le navigateur par défaut sur votre poste de travail, utilisez un navigateur à partir d'une machine connectée au réseau VPC. Vous pouvez utiliser Cloud VPN ou Cloud Interconnect pour vous connecter au réseau VPC à partir du réseau externe sur lequel vous exécutez votre navigateur.

Pour vous connecter à partir d'un réseau externe, vous devez configurer le DNS sur ce réseau. Comme pour les étapes précédentes, vous pouvez créer une zone DNS pour clusterHostname et ajouter un enregistrement qui mappe *.<clusterHostname> à l'adresse IP réservée lorsque vous avez créé le point de terminaison Private Service Connect. Vous pouvez également configurer des zones de transfert DNS ou des règles de serveur DNS pour permettre la recherche de noms DNS entre vos environnements sur site et Google Cloud.

Vous devrez peut-être également ajouter *cloudworkstations.dev à la liste d'autorisation de votre infrastructure sur site.

Étape suivante