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á.
Garanta que os balanceadores de carga da AWS usem protocolos receptores seguros (HTTPS, SSL/TLS)
Criado por Chandini Penmetsa (AWS) e Purushotham G K (AWS)
Resumo
Na nuvem da Amazon Web Services (AWS), o Elastic Load Balancing distribui automaticamente o tráfego de entrada do aplicativo em vários destinos, como instâncias do Amazon Elastic Compute Cloud ( EC2Amazon), contêineres, endereços IP e funções do AWS Lambda. Os balanceadores de carga usam receptores para definir as portas e os protocolos que o balanceador de carga usa para aceitar o tráfego dos usuários. Os balanceadores de carga de aplicativos tomam decisões de roteamento na camada do aplicativo e usam o. HTTP/HTTPS protocols. Network Load Balancers make routing decisions at the transport layer and use the Transmission Control Protocol (TCP), Transport Layer Security (TLS), User Datagram Protcol (UDP), or TCP_UDP protocols. Classic Load Balancers make routing decisions at either the transport layer, using TCP or Secure Sockets Layer (SSL) protocols, or at the application layer, using HTTP/HTTPS
Sua organização pode ter um requisito de segurança ou conformidade de que os balanceadores de carga aceitem tráfego de usuários somente em protocolos seguros, como HTTPS ou SSL/TLS.
Esse padrão fornece um controle de segurança que usa uma EventBridge regra da Amazon para monitorar as CreateListener
chamadas de ModifyListener
API para Application Load Balancers e Network Load Balancers, e as chamadas de CreateLoadBalancer
API CreateLoadBalancerListeners
e para Classic Load Balancers. Se HTTP, TCP/UDP ou TCP_UDP forem usados para o protocolo de receptor do balanceador de carga, o controle invocará uma função do Lambda. A função do Lambda publica uma mensagem em um tópico do Amazon Simple Notification Service (Amazon SNS) para enviar uma notificação que contém os detalhes do balanceador de carga.
Pré-requisitos e limitações
Pré-requisitos
Uma conta AWS ativa
Um endereço de e-mail no qual você deseja receber a notificação de violação
Um bucket do Amazon Simple Storage Service (Amazon S3) para armazenar o arquivo .zip do código Lambda
Limitações
Esse controle de segurança não verifica os balanceadores de carga existentes, a menos que seja feita uma atualização nos receptores do balanceador de carga.
Esse controle de segurança é regional e deve ser implantado nas regiões da AWS que você pretende monitorar.
Arquitetura
Pilha de tecnologias de destino
Função do Lambda
Tópico do Amazon SNS
EventBridge regra
Arquitetura de destino

Automação e escala
Se você estiver usando o AWS Organizations, poderá usar o AWS Cloudformation StackSets para implantar esse modelo em várias contas que você deseja monitorar.
Ferramentas
AWS CloudFormation — CloudFormation A AWS é um serviço que ajuda você a modelar e configurar recursos da AWS usando a infraestrutura como código.
Amazon EventBridge — EventBridge A Amazon fornece um fluxo de dados em tempo real de seus próprios aplicativos, aplicativos de software como serviço (SaaS) e serviços da AWS, roteando esses dados para destinos como funções Lambda.
AWS Lambda: o Lambda é compatível com a execução de código sem provisionar ou gerenciar servidores.
Amazon S3: o Amazon Simple Storage Service (Amazon S3) é um serviço de armazenamento de objetos altamente escalável que pode ser usado para uma ampla variedade de soluções de armazenamento, incluindo sites, aplicativos móveis, backups e data lakes.
Amazon SNS: o Amazon Simple Notification Service (Amazon SNS) é um serviço da Web que coordena e gerencia a entrega ou o envio de mensagens entre publicadores e clientes, incluindo servidores da Web e endereços de e-mail. Os assinantes recebem todas as mensagens publicadas nos tópicos para os quais eles se inscrevem, e todos os assinantes em um tópico recebem as mesmas mensagens.
Práticas recomendadas
Certifique-se de que o tópico do SNS usado não esteja acessível ao público. Para obter mais informações, consulte a documentação da AWS.
Épicos
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Definir o bucket do S3. | No console do Amazon S3, escolha ou crie um bucket do S3 com um nome exclusivo que não contenha barras iniciais. Um nome de bucket do S3 é globalmente exclusivo, e o namespace é compartilhado por todas as contas da AWS. Seu bucket do S3 precisa estar na mesma região que o balanceador de carga que está sendo avaliado. | Arquiteto de nuvem |
Carregue o código do Lambda para o bucket do S3. | Faça upload do arquivo .zip do código Lambda fornecido na seção “Anexos” para o bucket S3 definido. | Arquiteto de nuvem |
Implante o CloudFormation modelo da AWS. | No CloudFormation console da AWS, na mesma região da AWS do bucket S3, implante o modelo fornecido na seção “Anexos”. No próximo épico, forneça os valores para os parâmetros. | Arquiteto de nuvem |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Dê um nome ao bucket do S3. | Em seguida, informe o nome do bucket do S3 que você criou no primeiro épico. | Arquiteto de nuvem |
Forneça o prefixo do Amazon S3. | Forneça a localização do arquivo .zip do código do Lambda em seu bucket do S3, sem barras iniciais (por exemplo, | Arquiteto de nuvem |
Forneça o ARN do tópico do SNS. | Forneça o tópico do SNS nome do recurso da Amazon (ARN) se você quiser usar um tópico do SNS existente para notificações de violação. Para criar um novo tópico do SNS, mantenha o valor como | Arquiteto de nuvem |
Forneça um endereço de e-mail. | Forneça um endereço de e-mail ativo para receber notificações do Amazon SNS. | Arquiteto de nuvem |
Defina o nível de registro em log. | Defina o nível de registro em log e a frequência da sua função do Lambda. | Arquiteto de nuvem |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Faça download do modelo. | Baixe o CloudFormation modelo fornecido na seção Anexos. | Arquiteto de nuvem |
Crie a pilha. | Na mesma região do bucket do S3, navegue até o console CloudFormation de serviço e implante o modelo baixado. Consulte o épico anterior para obter detalhes dos parâmetros. | Arquiteto de nuvem |
Verifique os recursos. | Depois que a pilha for completamente criada, navegue até a guia Recursos e verifique os recursos. O modelo criará os seguintes recursos:
| Arquiteto de nuvem |
Tarefa | Descrição | Habilidades necessárias |
---|---|---|
Confirmar a assinatura. | Quando o modelo é implantado com êxito, se um novo tópico do SNS tiver sido criado, uma mensagem de e-mail de assinatura será enviada para o endereço de e-mail fornecido nos parâmetros. Você deve confirmar essa assinatura de e-mail para receber notificações de violação. | Arquiteto de nuvem |
Solução de problemas
Problema | Solução |
---|---|
Falha na criação da pilha. Ocorreu um erro enquanto GetObject. Código de erro S3: PermanentRedirect. Mensagem de erro do S3: O bucket está nesta região: xx-xxxx-1. Use essa região para repetir a solicitação. | Certifique-se de que a região do bucket do S3 e a região em que a pilha está sendo implantada sejam as mesmas. |
Falha na criação da pilha. O parâmetro de runtime do python3.6 não é mais compatível com a criação ou atualização de funções do AWS Lambda. | Atualize o modelo baixado na linha 186 do Python versão 3.6 para 3.9. |
Recursos relacionados
Anexos
Para acessar o conteúdo adicional associado a este documento, descompacte o seguinte arquivo: attachment.zip