Cette page explique comment créer une passerelle VPN classique et un tunnel à l'aide d'un routage statique. Ce tunnel se base sur des règles ou sur des routes.
Avec un VPN basé sur des routes, vous spécifiez uniquement le sélecteur de trafic distant. Si vous devez spécifier un sélecteur de trafic local, créez un tunnel Cloud VPN utilisant un routage basé sur des règles.
Pour découvrir les bonnes pratiques à suivre avant de configurer Cloud VPN, consultez la page Bonnes pratiques pour Cloud VPN.
Différences entre les options de routage
Lorsque vous créez un tunnel basé sur des règles à l'aide de Google Cloud Console, le VPN classique effectue l'ensemble des tâches suivantes :
- Il définit le sélecteur de trafic local du tunnel sur la plage d'adresses IP que vous spécifiez.
- Il définit le sélecteur de trafic distant du tunnel sur les plages d'adresses IP que vous spécifiez dans Plages d'adresses IP du réseau distant.
- Pour chaque plage disponible dans Plages d'adresses IP du réseau distant, Google Cloud crée une route statique personnalisée dont la destination (préfixe) correspond au CIDR de la plage et dont le saut suivant correspond au tunnel.
Lorsque vous créez un tunnel basé sur des routes à l'aide de Cloud Console, le VPN classique effectue l'ensemble des tâches suivantes :
- Il définit les sélecteurs de trafic local et distant du tunnel sur n'importe quelle adresse IP (
0.0.0.0/0
). - Pour chaque plage disponible dans Plages d'adresses IP du réseau distant, Google Cloud crée une route statique personnalisée dont la destination (préfixe) correspond au CIDR de la plage et dont le saut suivant correspond au tunnel.
Lorsque vous créez un tunnel basé sur des règles ou sur des routes à l'aide de l'outil de ligne de commande gcloud
, les sélecteurs de trafic du tunnel sont définis de la même manière.
Vous disposez pourtant d'un contrôle accru de ces routes, car la création de routes statiques personnalisées s'effectue à l'aide de commandes distinctes. Pour en savoir plus, consultez la page Réseaux et options de routage pour les tunnels.
Spécifier plusieurs CIDR par sélecteur de trafic
Le nombre de CIDR que vous pouvez spécifier dans un sélecteur de trafic dépend de la version d'IKE. Pour obtenir des informations de base essentielles, examinez attentivement les sections Options de routage et sélecteurs de trafic et Plusieurs CIDR par sélecteur de trafic.
Avant de commencer
Configurez les éléments suivants dans Google Cloud pour faciliter la configuration de Cloud VPN :
- Connectez-vous à votre compte Google.
Si vous n'en possédez pas déjà un, vous devez en créer un.
-
Dans Google Cloud Console, sur la page de sélection du projet, sélectionnez ou créez un projet Google Cloud.
-
Assurez-vous que la facturation est activée pour votre projet Cloud. Découvrez comment vérifier que la facturation est activée pour votre projet.
- Installez et initialisez le SDK Cloud.
- Si vous utilisez des commandes
gcloud
, définissez votre ID de projet à l'aide de la commande suivante. Dans les instructions gcloud présentées sur cette page, nous partons du principe que vous avez défini l'ID de votre projet avant d'exécuter les commandes.
gcloud config set project [PROJECT_ID]
Vous pouvez également afficher un ID de projet déjà défini :
gcloud config list --format='text(core.project)'
Créer un réseau et un sous-réseau cloud privé virtuel personnalisé
Avant de créer une passerelle et un tunnel VPN classiques, vous devez créer un réseau cloud privé virtuel et au moins un sous-réseau dans la région où sera située la passerelle VPN classique.
- Pour créer un réseau VPC en mode personnalisé (recommandé), consultez la section Créer un réseau en mode personnalisé.
- Pour créer des sous-réseaux, consultez la section Travailler avec des sous-réseaux.
Créer une passerelle et un tunnel
L'assistant de configuration du VPN est la seule option de console permettant de créer une passerelle VPN classique. L'assistant inclut toutes les étapes de configuration nécessaires pour créer une passerelle VPN classique, des tunnels, des sessions BGP et une ressource de passerelle VPN externe. Vous pouvez cependant choisir d'effectuer certaines tâches ultérieurement, comme la configuration des sessions BGP.
Le bouton Créer une passerelle VPN ne permet de créer que des passerelles VPN haute disponibilité.
Assistant du VPN
Configurer la passerelle
- Accédez à la page VPN dans Google Cloud Console.
Accéder à la page "VPN"- Si vous créez une passerelle pour la première fois, sélectionnez le bouton Créer une connexion VPN.
- Sélectionnez l'assistant de configuration VPN.
- Sélectionnez la case d'option correspondant à un VPN classique.
- Cliquez sur Continuer.
- Sur la page Créer une connexion VPN, spécifiez les paramètres de passerelle suivants :
- Nom : nom de la passerelle VPN. Vous ne pourrez pas le modifier par la suite.
- Description : si vous le souhaitez, vous pouvez ajouter une description.
- Réseau : spécifiez un réseau VPC existant dans lequel créer la passerelle et le tunnel VPN.
- Région : les passerelles et les tunnels Cloud VPN sont des objets régionaux. Choisissez une région Google Cloud dans laquelle la passerelle sera située. Les instances et les autres ressources appartenant à des régions différentes peuvent utiliser le tunnel pour acheminer le trafic de sortie, en suivant l'ordre de priorité des routes. Pour optimiser les performances, situez la passerelle et le tunnel dans la même région que les ressources Google Cloud concernées.
- Adresse IP : créez ou choisissez une adresse IP externe régionale existante.
Configurer les tunnels
Spécifiez les paramètres suivants dans la section Tunnels du nouveau tunnel :
- Nom : nom du tunnel VPN. Vous ne pourrez pas le modifier par la suite.
- Description : si vous le souhaitez, vous pouvez saisir une description.
- Adresse IP du pair distant : spécifiez l'adresse IP externe de la passerelle VPN de pairs.
- Version d'IKE : choisissez une version d'IKE compatible avec la passerelle VPN de pairs. Nous vous recommandons d'utiliser IKEv2 si cette version est compatible avec l'appareil associé. Clé secrète partagée : fournissez une clé prépartagée utilisée pour l'authentification. Cette clé secrète partagée du tunnel Cloud VPN doit correspondre à celle utilisée lors de la configuration du tunnel équivalent sur la passerelle VPN de pairs. Vous pouvez suivre ces instructions pour générer une clé secrète partagée sécurisée de manière cryptographique.
Pour les tunnels basés sur des règles
- Sous Options de routage, sélectionnez Basé sur des règles.
- Sous Plages d'adresses IP du réseau distant, saisissez la liste des plages d'adresses IP utilisées par le réseau de pairs, séparées par des espaces. Il s'agit du sélecteur de trafic distant, soit le "côté droit" du point de vue de Cloud VPN.
- Sous Plages d'adresses IP locales, sélectionnez l'une des méthodes suivantes :
- Utilisez le menu Sous-réseaux locaux pour choisir une plage d'adresses IP locale existante.
- Utilisez le champ Plages d'adresses IP locales pour saisir la liste des plages d'adresses IP utilisées dans votre réseau VPC, séparées par des espaces. Pour consulter les éléments importants à prendre en considération, reportez-vous à la section sur les sélecteurs de trafic.
Pour les tunnels basés sur des routes
- Options de routage : sélectionnez Basé sur des routes.
- Plages d'adresses IP de réseau distant : saisissez la liste des plages d'adresses IP utilisées par le réseau de pairs, séparées par des espaces. Ces plages servent à créer des routes statiques personnalisées dont le saut suivant correspond à ce tunnel VPN.
Si vous devez créer plusieurs tunnels sur la même passerelle, cliquez sur Ajouter un tunnel et répétez l'étape précédente. Vous pouvez également ajouter d'autres tunnels ultérieurement.
Cliquez sur Créer.
gcloud
Dans les commandes suivantes, remplacez :
PROJECT_ID
par l'ID de votre projet ;NETWORK
par le nom de votre réseau Google Cloud ;REGION
par la région Google Cloud dans laquelle la passerelle et le tunnel doivent être créés ;- (Facultatif)
--target-vpn-gateway-region
correspond à la région de la passerelle VPN classique à utiliser. Sa valeur doit être identique à celle de--region
. Si cette option n'est pas spécifiée, elle est définie automatiquement. Cette option ignore la valeur par défaut de la propriété "compute/region" pour cet appel de commande. GW_NAME
par le nom de la passerelle ;GW_IP_NAME
par le nom de l'adresse IP externe utilisée par la passerelle.
Pour créer une passerelle Google Cloud, exécutez les commandes suivantes dans l'ordre indiqué :
Créez les ressources pour la passerelle Cloud VPN :
Créez l'objet passerelle VPN cible.
gcloud compute target-vpn-gateways create GW_NAME \ --network NETWORK \ --region REGION \ --project PROJECT_ID
Réservez une adresse IP externe régionale (statique).
gcloud compute addresses create GW_IP_NAME \ --region REGION \ --project PROJECT_ID
Notez l'adresse IP de façon à pouvoir l'utiliser lors de la configuration de votre passerelle VPN de pairs :
gcloud compute addresses describe GW_IP_NAME \ --region REGION \ --project PROJECT_ID \ --format='flattened(address)'
Créez trois règles de transfert. Ces règles indiquent à Google Cloud d'acheminer le trafic ESP (IPSec), UDP 500 et UDP 4500 vers la passerelle.
gcloud compute forwarding-rules create fr-GW_NAME-esp \ --ip-protocol ESP \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp500 \ --ip-protocol UDP \ --ports 500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
gcloud compute forwarding-rules create fr-GW_NAME-udp4500 \ --ip-protocol UDP \ --ports 4500 \ --address GW_IP_NAME \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
Créez le tunnel Cloud VPN en indiquant les informations suivantes :
- Remplacez
TUNNEL_NAME
par le nom du tunnel. - Remplacez
ON_PREM_IP
par l'adresse IP externe de la passerelle VPN de pairs. - Remplacez
IKE_VERS
par1
pour IKEv1 ou2
pour IKEv2. - Remplacez
SHARED_SECRET
par votre clé secrète partagée. Cette clé secrète partagée du tunnel Cloud VPN doit correspondre à celle utilisée lors de la configuration du tunnel équivalent sur la passerelle VPN de pairs. Vous pouvez suivre ces instructions pour générer une clé secrète partagée sécurisée de manière cryptographique.
Pour les VPN basés sur des règles :
- Remplacez
LOCAL_IP_RANGES
par la liste de plages d'adresses IP Google Cloud, séparées par des virgules. Par exemple, vous pouvez indiquer le bloc CIDR pour chaque sous-réseau d'un réseau VPC. Pour Cloud VPN, il s'agit du "côté gauche" du tunnel. - Remplacez
REMOTE_IP_RANGES
par la liste des plages d'adresses IP du réseau de pairs, séparées par des virgules. Pour Cloud VPN, il s'agit du "côté droit" du tunnel.
Commande du VPN basé sur des règles :
gcloud compute vpn-tunnels create TUNNEL_NAME \ --peer-address ON_PREM_IP \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --local-traffic-selector=LOCAL_IP_RANGES \ --remote-traffic-selector=REMOTE_IP_RANGES \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
Pour les VPN basés sur des routes :
- Pour les VPN basés sur des routes, les sélecteurs de trafic local et distant correspondent à
0.0.0.0/0
comme défini dans la section Options de routage et sélecteurs de trafic.
gcloud compute vpn-tunnels create TUNNEL_NAME \ --peer-address ON_PREM_IP \ --ike-version IKE_VERS \ --shared-secret SHARED_SECRET \ --local-traffic-selector=0.0.0.0/0 \ --remote-traffic-selector=0.0.0.0/0 \ --target-vpn-gateway GW_NAME \ --region REGION \ --project PROJECT_ID
- Remplacez
Créez une route statique pour chaque plage d'adresses IP distante spécifiée dans l'option
--remote-traffic-selector
à l'étape précédente. Répétez cette commande pour chaque plage d'adresses IP distante, en remplaçantROUTE_NAME
par le nom unique de la route et[REMOTE_IP_RANGE]
par la plage d'adresses IP distante appropriée.gcloud compute routes create ROUTE_NAME \ --destination-range REMOTE_IP_RANGE \ --next-hop-vpn-tunnel TUNNEL_NAME \ --network NETWORK \ --next-hop-vpn-tunnel-region REGION \ --project PROJECT_ID
Procédure à suivre
Vous devez suivre la procédure ci-dessous avant de pouvoir utiliser une nouvelle passerelle et un nouveau tunnel Cloud VPN :
- Configurez la passerelle VPN de pairs, puis configurez-y le tunnel correspondant. Reportez-vous aux pages suivantes :
- Pour obtenir des instructions spécifiques sur la configuration de certains appareils VPN, consultez les Guides d'interopérabilité VPN.
- Pour en savoir plus sur les paramètres de configuration généraux, consultez la page Configurer la passerelle VPN de pairs.
- Configurez les règles de pare-feu dans Google Cloud et votre réseau de pairs, si nécessaire. Pour obtenir des suggestions, consultez la page Configurer les règles de pare-feu.
- Vérifiez l'état de votre tunnel, y compris les règles de transfert.
- Vous pouvez afficher les routes VPN en consultant la table de routage du projet
et en filtrant le "Type du saut suivant : tunnel VPN".
Appliquer une contrainte de règle d'administration qui limite les adresses IP des passerelles VPN de pairs
Vous pouvez créer une contrainte de règle d'administration Google Cloud qui définit un ensemble d'adresses IP autorisées ou interdites pour l'appairage à des passerelles VPN via des tunnels VPN classiques ou haute disponibilité. Cette contrainte contient une liste d'adresses IP de pairs autorisées ou refusées, appliquée aux tunnels Cloud VPN créés après l'application de la contrainte. Pour en savoir plus, consultez la présentation de Cloud VPN.
Autorisations requises
Pour définir une contrainte d'adresse IP de pair au niveau de l'organisation ou du projet, vous devez d'abord disposer du rôle Administrateur des règles d'administration (orgpolicy.policyAdmin
) pour votre organisation.
Définir des contraintes
Pour créer une règle d'administration et l'associer à une organisation, un dossier ou un projet, utilisez les exemples répertoriés dans les sections suivantes et suivez les étapes de la page Utiliser des contraintes.
Restreindre la connectivité à partir d'adresses IP de pairs spécifiques via un tunnel Cloud VPN
Pour n'autoriser que des adresses IP de pairs spécifiques, procédez comme suit :
- Recherchez l'ID de votre organisation en saisissant la commande suivante :
gcloud organizations list
Le résultat de la commande devrait ressembler au suivant.
DISPLAY NAME ID example-organization 29252605212
-
Créez un fichier JSON qui définit votre règle. Vous devez fournir une règle sous forme de fichier JSON, comme dans l'exemple suivant :
{ "constraint": "constraints/compute.restrictVpnPeersIPs", "listPolicy": { "allowedValues": [ "100.1.1.1", ], } }
-
Exécutez la commande gcloud Resource Manager
set-policy
pour définir la règle d'administration, en transmettant le fichier JSON et en utilisant l'identifiant ORGANIZATION_ID que vous avez obtenu à l'étape précédente.
Restreindre la connectivité à partir de toute adresse IP de pairs via un tunnel Cloud VPN
Pour interdire la création de tout nouveau tunnel Cloud VPN, suivez les étapes décrites dans cet exemple de contrainte.
- Recherchez l'ID de votre organisation ou l'ID du nœud dans la hiérarchie des ressources où vous souhaitez définir une règle.
-
Créez un fichier JSON comme dans l'exemple suivant.
{ "constraint": "constraints/compute.restrictVpnPeersIPs", "listPolicy": { "allValues": "DENY" } }
-
Transmettez le fichier JSON en saisissant la même commande que celle que vous utiliseriez pour restreindre des adresses IP de pairs spécifiques.