Acesse de forma privada um endpoint de AWS serviço central a partir de vários VPCs - Recomendações da AWS

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Acesse de forma privada um endpoint de AWS serviço central a partir de vários VPCs

Criado por Martin Guenthner (AWS) e Samuel Gordon () AWS

Repositório de código: VPC Endpoint Sharing

Ambiente: produção

Tecnologias: Rede; Infraestrutura

AWSserviços: AWSRAM; Amazon Route 53; AmazonSNS; AWS Transit Gateway; Amazon VPC

Resumo

Os requisitos de segurança e conformidade para seu ambiente podem especificar que o tráfego para serviços ou endpoints da Amazon Web Services (AWS) não deve atravessar a Internet pública. Esse padrão é uma solução projetada para uma hub-and-spoketopologia, em que um hub central VPC é conectado a vários raios VPCs distribuídos. Nessa solução, você usa AWS PrivateLink para criar um VPC endpoint de interface para o AWS serviço na conta do hub. Em seguida, você usa gateways de trânsito e uma regra distribuída do Sistema de Nomes de Domínio (DNS) para resolver solicitações para o endereço IP privado do endpoint, entre os conectados. VPCs

Esse padrão descreve como usar o AWS Transit Gateway, um endpoint de entrada do Amazon Route 53 Resolver e uma regra de encaminhamento compartilhada do Route 53 para resolver DNS as consultas dos recursos conectados. VPCs Você cria o endpoint, o gateway de trânsito, o resolvedor e a regra de encaminhamento na conta do hub. Em seguida, você usa o AWS Resource Access Manager (AWSRAM) para compartilhar o gateway de trânsito e a regra de encaminhamento com o spokeVPCs. Os AWS CloudFormation modelos fornecidos ajudam você a implantar e configurar os recursos no hub VPC e no spokeVPCs.

Pré-requisitos e limitações

Pré-requisitos

Limitações

  • Esse padrão conecta contas hub e spoke na mesma AWS região. Para implantações em várias regiões, você deve repetir esse padrão para cada região.

  • O AWS serviço deve ser integrado PrivateLink como um VPC endpoint de interface. Para obter uma lista completa, consulte AWSos serviços que se integram com AWS PrivateLink (PrivateLink documentação).

  • A afinidade com a zona de disponibilidade não é garantida. Por exemplo, consultas da Zona de Disponibilidade A podem responder com um endereço IP da Zona de Disponibilidade B.

  • A interface de rede elástica associada ao VPC endpoint tem um limite de 10.000 consultas por segundo.

Arquitetura

Pilha de tecnologias de destino

  • Um hub VPC na AWS conta do hub

  • Um ou mais falaram VPCs em um AWS relato falado

  • Um ou mais VPC endpoints de interface na conta do hub

  • Resolvedores Route 53 de entrada e saída na conta do hub

  • Uma regra de encaminhamento do Route 53 Resolver implantada na conta do hub e compartilhada com a conta spoke

  • Um gateway de trânsito implantado na conta do hub e compartilhado com a conta spoke

  • AWSTransit Gateway conectando o hub e o spoke VPCs

Arquitetura de destino

A imagem a seguir mostra um exemplo de arquitetura para essa solução. Nessa arquitetura, a regra de encaminhamento do Route 53 Resolver na conta do hub tem a seguinte relação com os outros componentes da arquitetura:

  1. A regra de encaminhamento é compartilhada com o VPC falado usando AWSRAM.

  2. A regra de encaminhamento está associada ao resolvedor de saída no hub. VPC

  3. A regra de encaminhamento tem como alvo o resolvedor de entrada no hub. VPC

Diagrama de arquitetura mostrando os recursos nas contas spoke e hub.

A imagem a seguir mostra o fluxo de tráfego por meio da arquitetura de exemplo:

  1. Um recurso, como uma instância do Amazon Elastic Compute Cloud (AmazonEC2), no discurso, VPC faz uma DNS solicitação para<service>.<region>.amazonaws.com. A solicitação é recebida pelo Amazon DNS Resolver, que fala.

  2. A regra de encaminhamento do Route 53, que é compartilhada da conta do hub e associada ao spokeVPC, intercepta a solicitação.

  3. No hubVPC, o Resolvedor de saída usa a regra de encaminhamento para encaminhar a solicitação para o Resolvedor de entrada.

  4. O Resolvedor de entrada usa o hub VPC Amazon DNS Resolver para resolver o endereço IP <service>.<region>.amazonaws.com para o endereço IP privado de um VPC endpoint. Se nenhum VPC endpoint estiver presente, ele será resolvido para o endereço IP público.

Fluxo de tráfego de um recurso no spoke VPC para um endpoint de serviço no hubVPC.

Ferramentas

AWSferramentas e serviços

  • AWS CloudFormationajuda você a configurar AWS recursos, provisioná-los de forma rápida e consistente e gerenciá-los durante todo o ciclo de vida em todas AWS as contas e regiões.

  • O Amazon Elastic Compute Cloud (AmazonEC2) fornece capacidade de computação escalável na AWS nuvem. Você pode iniciar quantos servidores virtuais precisar e escalá-los na vertical rapidamente.

  • AWSO Identity and Access Management (IAM) ajuda você a gerenciar com segurança o acesso aos seus AWS recursos controlando quem está autenticado e autorizado a usá-los.

  • AWSO Resource Access Manager (AWSRAM) ajuda você a compartilhar com segurança seus recursos entre AWS contas para reduzir a sobrecarga operacional e fornecer visibilidade e auditabilidade.

  • O Amazon Route 53 é um serviço web de Sistema de Nomes de Domínio (DNS) altamente disponível e escalável.

  • AWSO Systems Manager ajuda você a gerenciar seus aplicativos e infraestrutura em execução na AWS nuvem. Ele simplifica o gerenciamento de aplicativos e recursos, reduz o tempo para detectar e resolver problemas operacionais e ajuda você a gerenciar seus AWS recursos com segurança em grande escala.

  • AWSO Transit Gateway é um hub central que conecta VPCs redes locais.

  • A Amazon Virtual Private Cloud (AmazonVPC) ajuda você a lançar AWS recursos em uma rede virtual que você definiu. Essa rede virtual se assemelha a uma rede tradicional que você operaria em seu próprio data center, com os benefícios de usar a infraestrutura escalável do. AWS

Outras ferramentas e serviços

  • O nslookup é uma ferramenta de linha de comando usada para consultar registros. DNS Nesse padrão, você usa essa ferramenta para testar a solução.

Repositório de código

O código desse padrão está disponível em GitHub, no vpc-endpoint-sharingrepositório. Esse padrão fornece dois AWS CloudFormation modelos:

  • Um modelo para implantar os seguintes recursos na conta do hub:

    • rSecurityGroupEndpoints— O grupo de segurança que controla o acesso ao VPC endpoint.

    • rSecurityGroupResolvers: o grupo de segurança que controla o acesso ao Resolver do Route 53.

    • rKMSEndpoint,rSSMMessagesEndpoint,rSSMEndpoint, e rEC2MessagesEndpoint — Exemplo de VPC endpoints de interface na conta do hub. Personalize esses endpoints para o seu caso de uso.

    • rInboundResolver— Um resolvedor do Route 53 que resolve DNS consultas no hub Amazon DNS Resolver.

    • rOutboundResolver: um resolvedor de saída do Route 53 que encaminha as consultas para o Resolvedor de entrada.

    • rAWSApiResolverRule— A regra de encaminhamento do Route 53 Resolver que é compartilhada com todos os VPCs falados.

    • rRamShareAWSResolverRule— O AWS RAM compartilhamento que permite que o falante use VPCs a regra rAWSApiResolverRule de encaminhamento.

    • * rVPC — O hubVPC, usado para modelar os serviços compartilhados.

    • * rSubnet1: uma sub-rede privada usada para hospedar os recursos do hub.

    • * rRouteTable1 — A tabela de rotas para o hubVPC.

    • * rRouteTableAssociation1 — Para a tabela de rRouteTable1 rotas no hubVPC, a associação para a sub-rede privada.

    • * rRouteSpoke — A rota do hub VPC até o raioVPC.

    • * rTgw — O gateway de trânsito que é compartilhado com todos os falantesVPCs.

    • * rTgwAttach — O anexo que permite ao hub VPC rotear o tráfego para o gateway de rTgw trânsito.

    • * rTgwShare — O AWS RAM compartilhamento que permite que as contas spoke usem o gateway de rTgw trânsito.

  • Um modelo para implantar os seguintes recursos nas contas spoke:

    • rAWSApiResolverRuleAssociation— Uma associação que permite que o spoke use VPC a regra de encaminhamento compartilhado na conta do hub.

    • * rVPC — O falouVPC.

    • * rSubnet1, rSubnet2, rSubnet3: uma sub-rede para cada zona de disponibilidade, usada para abrigar os recursos privados do spoke.

    • * rTgwAttach — O anexo que permite que o spoke VPC direcione o tráfego para o gateway de rTgw trânsito.

    • * rRouteTable1 — A tabela de rotas para o raioVPC.

    • * rRouteEndpoints — A rota dos recursos no raio VPC até o gateway de trânsito.

    • * rRouteTableAssociation1/2/3 — Para a tabela de rRouteTable1 rotas no spokeVPC, as associações para as sub-redes privadas.

    • * rInstanceRole — A IAM função usada para testar a solução.

    • * rInstancePolicy — A IAM política usada para testar a solução.

    • * rInstanceSg: o grupo de segurança usado para testar a solução.

    • * rInstanceProfile — O perfil da IAM instância usado para testar a solução.

    • * rInstance — Uma EC2 instância pré-configurada para acesso por meio do AWS Systems Manager. Use essa instância para testar a solução.

* Esses recursos oferecem suporte à arquitetura de amostra e podem não ser necessários ao implementar esse padrão em uma zona de pouso existente.

Épicos

TarefaDescriçãoHabilidades necessárias

Clone o repositório de códigos.

  1. Em uma interface da linha de comando, altere seu diretório de trabalho para o local em que você deseja armazenar os arquivos de amostra.

  2. Digite o comando :

    git clone https://github.com/aws-samples/vpc-endpoint-sharing.git
Administrador de rede, arquiteto de nuvem

Modifique os modelos.

  1. No repositório clonado, abra os arquivos hub.yml e spoke.yml.

  2. Analise os recursos criados por esses modelos e ajuste-os conforme necessário para seu ambiente. Para obter uma lista completa, consulte a seção Repositório de códigos em Ferramentas. Se suas contas já tiverem alguns desses recursos, remova-os do CloudFormation modelo. Para obter mais informações, consulte Trabalhando com modelos (CloudFormation documentação).

  3. Salve e feche os arquivos hub.yml e spoke.yml.

Administrador de rede, arquiteto de nuvem
TarefaDescriçãoHabilidades necessárias

Implante os recursos do hub.

Usando o modelo hub.yml, crie uma pilha. CloudFormation Quando solicitado, apresente os valores para os parâmetros do modelo. Para obter mais informações, consulte Criação de uma pilha (CloudFormation documentação).

Arquiteto de nuvem, administrador de rede

Implante os recursos do spoke.

Usando o modelo spoke.yml, crie uma pilha. CloudFormation Quando solicitado, apresente os valores para os parâmetros do modelo. Para obter mais informações, consulte Criação de uma pilha (CloudFormation documentação).

Arquiteto de nuvem, administrador de rede
TarefaDescriçãoHabilidades necessárias

Teste DNS consultas privadas ao AWS serviço.

  1. Conecte-se à rInstance EC2 instância usando o Session Manager, um recurso do AWS Systems Manager. Para obter mais informações, consulte Conecte-se à sua instância Linux usando o Session Manager (EC2documentação da Amazon).

  2. Para um AWS serviço que tenha um VPC endpoint na conta do hub, use nslookup para confirmar se os endereços IP privados do Resolvedor do Route 53 de entrada são retornados.

    A seguir temos um exemplo de uso nslookup para alcançar um endpoint do Amazon Systems Manager.

    nslookup ssm.<region>.amazonaws.com
  3. Na interface de linha de AWS comando (AWSCLI), insira um comando que possa ajudá-lo a confirmar que as alterações não afetaram a funcionalidade do serviço. Para obter uma lista de comandos, consulte Referência de AWS CLI comandos.

    Por exemplo, o comando a seguir deve retornar uma lista de documentos do Amazon Systems Manager.

    aws ssm list-documents
Administrador de rede

Teste DNS consultas públicas em um AWS serviço.

  1. Para um AWS serviço que não tem um VPC endpoint na conta do hub, use nslookup para confirmar se os endereços IP públicos foram retornados. Veja a seguir um exemplo de uso nslookup para acessar um endpoint do Amazon Simple Notification Service (AmazonSNS).

    nslookup sns.<region>.amazonaws.com
  2. Em AWSCLI, insira um comando que possa ajudá-lo a confirmar que as alterações não afetaram a funcionalidade do serviço. Para obter uma lista de comandos, consulte Referência de AWS CLI comandos.

    Por exemplo, se algum SNS tópico da Amazon estiver presente na conta do hub, o comando a seguir deverá retornar uma lista de tópicos.

    aws sns list-topics
Administrador de rede

Recursos relacionados