Accédez en privé à un point de terminaison AWS de service central à partir de plusieurs VPCs - Recommandations AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Accédez en privé à un point de terminaison AWS de service central à partir de plusieurs VPCs

Créé par Martin Guenthner (AWS) et Samuel Gordon () AWS

Référentiel de code : VPC Endpoint Sharing

Environnement : Production

Technologies : mise en réseau ; infrastructure

AWSservices : AWS RAM Amazon Route 53 ; Amazon SNS ; AWS Transit Gateway ; Amazon VPC

Récapitulatif

Les exigences de sécurité et de conformité de votre environnement peuvent spécifier que le trafic vers les services ou les points de terminaison Amazon Web Services (AWS) ne doit pas traverser l'Internet public. Ce modèle est une solution conçue pour une hub-and-spoketopologie dans laquelle un hub central VPC est connecté à plusieurs rayons VPCs distribués. Dans cette solution, vous pouvez AWS PrivateLink créer un point de VPC terminaison d'interface pour le AWS service dans le compte du hub. Vous utilisez ensuite des passerelles de transit et une règle de système de noms de domaine distribué (DNS) pour résoudre les demandes adressées à l'adresse IP privée du point de terminaison, sur le réseau connectéVPCs.

Ce modèle décrit comment utiliser AWS Transit Gateway, un point de terminaison Amazon Route 53 Resolver entrant et une règle de transfert Route 53 partagée afin de résoudre DNS les requêtes provenant des ressources connectées. VPCs Vous créez le point de terminaison, la passerelle de transit, le résolveur et la règle de transfert dans le compte du hub. Ensuite, vous utilisez AWS Resource Access Manager (AWSRAM) pour partager la passerelle de transit et la règle de transfert avec le rayonVPCs. Les AWS CloudFormation modèles fournis vous aident à déployer et à configurer les ressources du hub VPC and spokeVPCs.

Conditions préalables et limitations

Prérequis

Limites

  • Ce modèle connecte les comptes Hub et Spoke dans la même AWS région. Pour les déploiements multirégionaux, vous devez répéter ce modèle pour chaque région.

  • Le AWS service doit s'intégrer en PrivateLink tant que point de VPC terminaison d'interface. Pour une liste complète, consultez AWSles services intégrés à AWS PrivateLink (PrivateLink documentation).

  • L'affinité des zones de disponibilité n'est pas garantie. Par exemple, les requêtes provenant de la zone de disponibilité A peuvent répondre par une adresse IP provenant de la zone de disponibilité B.

  • L'interface Elastic network associée au VPC point de terminaison est limitée à 10 000 requêtes par seconde.

Architecture

Pile technologique cible

  • Un hub VPC dans le AWS compte hub

  • Un ou plusieurs mots prononcés VPCs dans un AWS compte parlé

  • Un ou plusieurs VPC points de terminaison d'interface dans le compte du hub

  • Résolveurs Route 53 entrants et sortants dans le compte du hub

  • Une règle de transfert Route 53 Resolver déployée dans le compte hub et partagée avec le compte Spoke

  • Une passerelle de transit déployée dans le compte hub et partagée avec le compte Spoke

  • AWSTransit Gateway reliant le hub et le rayon VPCs

Architecture cible

L'image suivante montre un exemple d'architecture pour cette solution. Dans cette architecture, la règle de transfert Route 53 Resolver dans le compte du hub a la relation suivante avec les autres composants de l'architecture :

  1. La règle de transfert est partagée avec le rayon à VPC l'aide de AWSRAM.

  2. La règle de transfert est associée au résolveur sortant dans le hub. VPC

  3. La règle de transfert cible le résolveur entrant dans le hub. VPC

Schéma d'architecture montrant les ressources des comptes spoke et hub.

L'image suivante montre le flux de trafic dans l'exemple d'architecture :

  1. Une ressource, telle qu'une instance Amazon Elastic Compute Cloud (AmazonEC2), VPC envoie une DNS demande à<service>.<region>.amazonaws.com. La demande est reçue par l'Amazon DNS Resolver parlé.

  2. La règle de transfert Route 53, qui est partagée depuis le compte du hub et associée au rayonVPC, intercepte la demande.

  3. Dans le hubVPC, le résolveur sortant utilise la règle de transfert pour transférer la demande au résolveur entrant.

  4. Le résolveur entrant utilise le hub VPC Amazon DNS Resolver pour convertir l'adresse IP en adresse IP privée <service>.<region>.amazonaws.com d'un point de terminaison. VPC Si aucun VPC point de terminaison n'est présent, il est résolu sur l'adresse IP publique.

Flux de trafic entre une ressource située dans le rayon et un point VPC de terminaison de service dans le hubVPC.

Outils

AWSoutils et services

  • AWS CloudFormationvous aide à configurer les AWS ressources, à les approvisionner rapidement et de manière cohérente, et à les gérer tout au long de leur cycle de vie, quels que soient les AWS comptes et les régions.

  • Amazon Elastic Compute Cloud (AmazonEC2) fournit une capacité de calcul évolutive dans le AWS cloud. Vous pouvez lancer autant de serveurs virtuels que vous le souhaitez et les faire rapidement évoluer vers le haut ou vers le bas.

  • AWSIdentity and Access Management (IAM) vous aide à gérer en toute sécurité l'accès à vos AWS ressources en contrôlant qui est authentifié et autorisé à les utiliser.

  • AWSResource Access Manager (AWSRAM) vous permet de partager en toute sécurité vos ressources entre AWS comptes afin de réduire les frais d'exploitation et de garantir visibilité et auditabilité.

  • Amazon Route 53 est un service Web de système de noms de domaine (DNS) hautement disponible et évolutif.

  • AWSSystems Manager vous aide à gérer vos applications et votre infrastructure exécutées dans le AWS cloud. Il simplifie la gestion des applications et des ressources, réduit le délai de détection et de résolution des problèmes opérationnels et vous aide à gérer vos AWS ressources en toute sécurité à grande échelle.

  • AWSTransit Gateway est un hub central qui connecte VPCs les réseaux sur site.

  • Amazon Virtual Private Cloud (AmazonVPC) vous aide à lancer AWS des ressources dans un réseau virtuel que vous avez défini. Ce réseau virtuel ressemble à un réseau traditionnel que vous exploiteriez dans votre propre centre de données, avec les avantages de l'utilisation de l'infrastructure évolutive deAWS.

Autres outils et services

  • nslookup est un outil de ligne de commande utilisé pour interroger des enregistrements. DNS Dans ce modèle, vous utilisez cet outil pour tester la solution.

Référentiel de code

Le code de ce modèle est disponible sur GitHub, dans le vpc-endpoint-sharingréférentiel. Ce modèle fournit deux AWS CloudFormation modèles :

  • Un modèle pour déployer les ressources suivantes dans le compte du hub :

    • rSecurityGroupEndpoints— Le groupe de sécurité qui contrôle l'accès au VPC point de terminaison.

    • rSecurityGroupResolvers— Le groupe de sécurité qui contrôle l'accès au résolveur Route 53.

    • rKMSEndpoint, rSSMMessagesEndpointrSSMEndpoint, et rEC2MessagesEndpoint — Exemples de VPC points de terminaison d'interface dans le compte hub. Personnalisez ces points de terminaison en fonction de votre cas d'utilisation.

    • rInboundResolver— Un résolveur Route 53 qui résout les DNS requêtes adressées au hub Amazon DNS Resolver.

    • rOutboundResolver— Un résolveur de Route 53 sortant qui transmet les requêtes au résolveur entrant.

    • rAWSApiResolverRule— La règle de transfert Route 53 Resolver qui est partagée avec tous les haut-parleurs. VPCs

    • rRamShareAWSResolverRule— Le AWS RAM partage qui permet au point VPCs d'utiliser la règle rAWSApiResolverRule de transfert.

    • * rVPC — Le hubVPC, utilisé pour modéliser les services partagés.

    • * rSubnet1 — Un sous-réseau privé utilisé pour héberger les ressources du hub.

    • * rRouteTable1 — La table de routage pour le hubVPC.

    • * rRouteTableAssociation1 — Pour la table de rRouteTable1 routage dans le hubVPC, l'association pour le sous-réseau privé.

    • * rRouteSpoke — Le trajet entre le hub VPC et le rayonVPC.

    • * rTgw — La passerelle de transit partagée avec tous les intervenantsVPCs.

    • * rTgwAttach — La pièce jointe qui permet au hub VPC d'acheminer le trafic vers la passerelle de rTgw transit.

    • * rTgwShare — Le AWS RAM partage qui permet aux comptes Spoke d'utiliser la passerelle de rTgw transit.

  • Un modèle pour déployer les ressources suivantes dans les comptes Spoke :

    • rAWSApiResolverRuleAssociation— Une association qui permet au point VPC d'utiliser la règle de transfert partagée dans le compte hub.

    • * rVPC — Ils ont parléVPC.

    • * rSubnet1, rSubnet2, rSubnet3 — Un sous-réseau pour chaque zone de disponibilité, utilisé pour héberger les ressources privées en étoile.

    • * rTgwAttach — La pièce jointe qui permet au rayon VPC d'acheminer le trafic vers la passerelle de rTgw transit.

    • * rRouteTable1 — La table de routage pour le rayonVPC.

    • * rRouteEndpoints — Le trajet entre les ressources du rayon et VPC la passerelle de transit.

    • * rRouteTableAssociation1/2/3 — Pour la table de rRouteTable1 routage dans le rayonVPC, les associations pour les sous-réseaux privés.

    • * rInstanceRole — IAM Rôle utilisé pour tester la solution.

    • * rInstancePolicy — La IAM politique utilisée pour tester la solution.

    • * rInstanceSg — Le groupe de sécurité utilisé pour tester la solution.

    • * rInstanceProfile — Le profil d'IAMinstance utilisé pour tester la solution.

    • * rInstance — Une EC2 instance préconfigurée pour un accès via AWS Systems Manager. Utilisez cette instance pour tester la solution.

* Ces ressources prennent en charge l'architecture d'exemple et peuvent ne pas être nécessaires lors de la mise en œuvre de ce modèle dans une zone d'atterrissage existante.

Épopées

TâcheDescriptionCompétences requises

Clonez le référentiel de code.

  1. Dans une interface de ligne de commande, remplacez votre répertoire de travail par l'emplacement où vous souhaitez stocker les fichiers d'exemple.

  2. Entrez la commande suivante :

    git clone https://github.com/aws-samples/vpc-endpoint-sharing.git
Administrateur réseau, architecte cloud

Modifiez les modèles.

  1. Dans le référentiel cloné, ouvrez les fichiers hub.yml et spoke.yml.

  2. Passez en revue les ressources créées par ces modèles et ajustez-les en fonction des besoins de votre environnement. Pour une liste complète, consultez la section Référentiel de code dans Outils. Si vos comptes disposent déjà de certaines de ces ressources, supprimez-les du CloudFormation modèle. Pour plus d'informations, consultez la section Utilisation des modèles (CloudFormation documentation).

  3. Enregistrez et fermez les fichiers hub.yml et spoke.yml.

Administrateur réseau, architecte cloud
TâcheDescriptionCompétences requises

Déployez les ressources du hub.

À l'aide du modèle hub.yml, créez une pile. CloudFormation Lorsque vous y êtes invité, fournissez des valeurs pour les paramètres du modèle. Pour plus d'informations, consultez Création d'une pile (CloudFormation documentation).

Architecte cloud, administrateur réseau

Déployez les ressources en rayons.

À l'aide du modèle spoke.yml, créez une pile. CloudFormation Lorsque vous y êtes invité, fournissez des valeurs pour les paramètres du modèle. Pour plus d'informations, consultez Création d'une pile (CloudFormation documentation).

Architecte cloud, administrateur réseau
TâcheDescriptionCompétences requises

Testez DNS les requêtes privées adressées au AWS service.

  1. Connectez-vous à l'rInstanceEC2instance à l'aide du Session Manager, une fonctionnalité de AWS Systems Manager. Pour plus d'informations, consultez Connect to your Linux instance using Session Manager (EC2documentation Amazon).

  2. Pour un AWS service qui possède un VPC point de terminaison dans le compte du hub, utilisez nslookup pour confirmer que les adresses IP privées du résolveur Route 53 entrant sont renvoyées.

    Voici un exemple d'utilisation nslookup pour accéder à un point de terminaison Amazon Systems Manager.

    nslookup ssm.<region>.amazonaws.com
  3. Dans l'interface de ligne de AWS commande (AWSCLI), entrez une commande qui peut vous aider à confirmer que les modifications n'ont pas affecté les fonctionnalités du service. Pour obtenir la liste des commandes, reportez-vous à AWSCLIla section Référence des commandes.

    Par exemple, la commande suivante doit renvoyer une liste de documents Amazon Systems Manager.

    aws ssm list-documents
Administrateur réseau

Testez les DNS requêtes publiques adressées à un AWS service.

  1. Pour un AWS service qui ne possède pas de point de VPC terminaison dans le compte du hub, utilisez nslookup pour confirmer que les adresses IP publiques sont renvoyées. Voici un exemple d'utilisation nslookup pour atteindre un point de terminaison Amazon Simple Notification Service (AmazonSNS).

    nslookup sns.<region>.amazonaws.com
  2. Dans le AWSCLI, entrez une commande qui peut vous aider à confirmer que les modifications n'ont pas affecté les fonctionnalités du service. Pour obtenir la liste des commandes, reportez-vous à AWSCLIla section Référence des commandes.

    Par exemple, si des SNS sujets Amazon sont présents dans le compte du hub, la commande suivante doit renvoyer une liste de sujets.

    aws sns list-topics
Administrateur réseau

Ressources connexes