Configuração de um TLS mútuo em um Application Load Balancer
Para usar o modo de passagem de TLS mútuo, você só precisa configurar o receptor para aceitar qualquer certificado de clientes. Ao usar a passagem de TLS mútuo, o Application Load Balancer envia toda a cadeia de certificados do cliente para o destino usando cabeçalhos HTTP, o que permite implementar a lógica correspondente de autenticação e autorização na aplicação. Para obter mais informações, consulte Criar um receptor HTTPS para seu Application Load Balancer.
Ao usar o TLS mútuo no modo de verificação, o Application Load Balancer executa a autenticação de certificado de cliente X.509 para clientes quando um balanceador de carga negocia conexões TLS.
Para utilizar o modo de verificação de TLS mútuo, faça o seguinte:
Crie um recurso de armazenamento confiável.
Faça upload do seu pacote de autoridade de certificação (CA) e, opcionalmente, das listas de revogação.
Anexe o armazenamento confiável ao receptor que está configurado para verificar os certificados do cliente.
Use os procedimentos a seguir para configurar o modo de verificação de TLS mútuo no Application Load Balancer.
Criar um armazenamento confiável
Se você adiciona um armazenamento confiável ao criar um balanceador de carga ou receptor, o armazenamento confiável é automaticamente associado ao novo receptor. Caso contrário, você deverá associá-lo a um receptor.
- Console
-
O exemplo mostrado a seguir cria um armazenamento confiável usando a parte Armazenamento confiável do console. De maneira alternativa, você pode criar o armazenamento confiável ao criar um receptor HTTP.
Para criar um armazenamento confiável
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
-
No painel de navegação, escolha Armazenamentos confiáveis.
-
Escolha Criar armazenamento confiável.
-
Configuração do armazenamento confiável
-
Em Nome do armazenamento confiável, insira um nome para o armazenamento confiável.
-
Em Pacote da autoridade de certificação, insira o caminho do Amazon S3 para o pacote do certificado CA a usar.
-
(Opcional) Use a Versão do objeto para selecionar uma versão anterior do pacote de certificado CA. Caso contrário, a versão atual será usada.
-
(Opcional) Em Revogações, você pode adicionar uma lista de revogação de certificados ao armazenamento confiável.
-
Selecione Adicionar nova CRL e insira a localização da lista de revogação de certificados no Amazon S3.
-
(Opcional) Use a Versão do objeto para selecionar uma versão anterior da lista de revogação de certificados. Caso contrário, a versão atual será usada.
-
(Opcional) Expanda as Tags do armazenamento confiável e insira até 50 tags para o armazenamento confiável.
-
Escolha Criar armazenamento confiável.
- AWS CLI
-
Para criar um armazenamento confiável
Use o comando create-trust-store.
aws elbv2 create-trust-store \
--name my-trust-store \
--ca-certificates-bundle-s3-bucket amzn-s3-demo-bucket \
--ca-certificates-bundle-s3-key certificates/ca-bundle.pem
- CloudFormation
-
Para criar um armazenamento confiável
Defina um tipo de recurso AWS::ElasticLoadBalancingV2::TrustStore.
Resources:
myTrustStore:
Type: 'AWS::ElasticLoadBalancingV2::TrustStore'
Properties:
Name: my-trust-store
CaCertificatesBundleS3Bucket: amzn-s3-demo-bucket
CaCertificatesBundleS3Key: certificates/ca-bundle.pem
Associar um armazenamento confiável
Depois de criar um armazenamento confiável, você deve associá-lo a um receptor antes que o Application Load Balancer possa começar a usá-lo. Você pode ter somente um armazenamento confiável associado a cada um dos receptores seguros, mas um armazenamento confiável pode ser associado a vários receptores.
- Console
-
Você pode associar um armazenamento confiável a um receptor existente, conforme mostrado no procedimento a seguir. De forma alternativa, você pode associar um armazenamento confiável ao criar um receptor HTTPS. Para obter mais informações, consulte Criar um receptor HTTPS.
Para associar um armazenamento confiável
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
-
No painel de navegação, selecione Balanceador de carga.
-
Selecione o load balancer.
-
Na guia Receptores e regras, escolha o link na coluna Protocol:Port para abrir a página de detalhes do receptor seguro.
-
Na guia Segurança, escolha Editar configurações de receptor seguro.
-
Se o TLS mútuo não estiver habilitado, selecione Autenticação mútua (mTLS) em Tratamento de certificados do cliente e escolha Verificar com armazenamento confiável.
-
Em Armazenamento confiável, selecione o armazenamento confiável.
-
Selecione Salvar alterações.
- AWS CLI
-
Para associar um armazenamento confiável
Use o comando modify-listener.
aws elbv2 modify-listener \
--listener-arn listener-arn \
--mutual-authentication "Mode=verify,TrustStoreArn=trust-store-arn"
- CloudFormation
-
Para associar um armazenamento confiável
Atualize o recurso AWS::ElasticLoadBalancingV2::Listener.
Resources:
myHTTPSListener:
Type: 'AWS::ElasticLoadBalancingV2::Listener'
Properties:
LoadBalancerArn: !Ref myLoadBalancer
Protocol: HTTPS
Port: 443
DefaultActions:
- Type: "forward"
TargetGroupArn: !Ref myTargetGroup
SslPolicy: ELBSecurityPolicy-TLS13-1-2-2021-06
Certificates:
- CertificateArn: certificate-arn
MutualAuthentication:
- Mode: verify
TrustStoreArn: trust-store-arn
Substituir um pacote de certificados de CA
O pacote de certificados da CA é um componente obrigatório do armazenamento confiável. É uma coleção de certificados raiz e intermediários confiáveis que foram validados por uma autoridade de certificação. Esses certificados validados garantem que o cliente possa confiar que o certificado apresentado pertence ao balanceador de carga.
Um armazenamento confiável pode conter somente um pacote de certificados de CA por vez, mas você pode substituir o pacote de certificados de CA a qualquer momento após a criação do armazenamento confiável.
- Console
-
Para substituir um pacote de certificados CA
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
-
No painel de navegação, escolha Armazenamentos confiáveis.
-
Selecione o armazenamento confiável.
-
Escolha Ações, Substituir pacote de CA.
-
Na página Substituir pacote de CA, em Pacote de autoridade de certificação, insira a localização do Amazon S3 do pacote de CA desejado.
-
(Opcional) Use a Versão do objeto para selecionar uma versão anterior da lista de revogação de certificados. Caso contrário, a versão atual será usada.
-
Selecione Substituir pacote de CA.
- AWS CLI
-
Para substituir um pacote de certificados CA
Use o comando modify-trust-store.
aws elbv2 modify-trust-store \
--trust-store-arn trust-store-arn \
--ca-certificates-bundle-s3-bucket amzn-s3-demo-bucket-new \
--ca-certificates-bundle-s3-key certificates/new-ca-bundle-pem
- CloudFormation
-
Para atualizar o pacote de certificados CA
Defina um tipo de recurso AWS::ElasticLoadBalancingV2::TrustStore.
Resources:
myTrustStore:
Type: 'AWS::ElasticLoadBalancingV2::TrustStore'
Properties:
Name: my-trust-store
CaCertificatesBundleS3Bucket: amzn-s3-demo-bucket-new
CaCertificatesBundleS3Key: certificates/new-ca-bundle.pem
Adicionar uma lista de revogação de certificados
Opcionalmente, você pode criar uma lista de revogação de certificados para um armazenamento confiável. As listas de revogação são divulgadas pelas autoridades de certificação e contêm dados de certificados que foram revogados. Os Application Load Balancers só oferecem suporte a listas de revogação de certificados no formato PEM.
Quando uma lista de revogação de certificados é adicionada a um armazenamento confiável, ela recebe um ID de revogação. Os IDs de revogação aumentam a cada lista de revogação adicionada ao armazenamento confiável e não podem ser alterados.
Os Application Load Balancers não podem revogar certificados que tenham um número de série negativo em uma lista de revogação de certificados.
- Console
-
Para incluir uma lista de revogação
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
-
No painel de navegação, escolha Armazenamentos confiáveis.
-
Selecione o armazenamento confiável para exibir a página de detalhes.
-
Na guia Listas de revogação de certificados, selecione Ações e Adicionar lista de revogação.
-
Na página Adicionar lista de revogação, em Lista de revogação de certificados, insira a localização do Amazon S3 da lista de revogação de certificados desejada
-
(Opcional) Use a Versão do objeto para selecionar uma versão anterior da lista de revogação de certificados. Caso contrário, a versão atual será usada.
-
Selecione Adicionar lista de revogação
- AWS CLI
-
Para incluir uma lista de revogação
Use o comando add-trust-store-revocations.
aws elbv2 add-trust-store-revocations \
--trust-store-arn trust-store-arn \
--revocation-contents "S3Bucket=amzn-s3-demo-bucket,S3Key=crl/revoked-list.crl,RevocationType=CRL"
- CloudFormation
-
Para incluir uma lista de revogação
Defina um recurso do tipo AWS::ElasticLoadBalancingV2::TrustStoreRevocation.
Resources:
myRevocationContents:
Type: 'AWS:ElasticLoadBalancingV2::TrustStoreRevocation'
Properties:
TrustStoreArn: !Ref myTrustStore
RevocationContents:
- RevocationType: CRL
S3Bucket: amzn-s3-demo-bucket
S3Key: crl/revoked-list.crl
Excluir uma lista de revogação de certificados
Quando não precisar mais de uma lista de revogação de certificados, você pode excluí-la. Ao excluir uma lista de revogação de certificados de um armazenamento confiável, o ID de revogação também será excluído e não será reutilizado durante toda a vida útil do armazenamento confiável.
- Console
-
Para excluir uma lista de revogação
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
-
No painel de navegação, escolha Armazenamentos confiáveis.
-
Selecione o armazenamento confiável.
-
Na guia Listas de revogação de certificados, selecione Ações e Excluir lista de revogação.
-
Quando a confirmação for solicitada, insira confirm.
-
Escolha Excluir.
- AWS CLI
-
Para excluir uma lista de revogação
Use o comando remove-trust-store-revocations.
aws elbv2 remove-trust-store-revocations \
--trust-store-arn trust-store-arn \
--revocation-ids id-1 id-2 id-3
Excluir um armazenamento confiável
Quando não precisar mais usar um armazenamento confiável, poderá excluí-lo. Você não pode excluir um armazenamento confiável associado a um receptor.
- Console
-
Para excluir um armazenamento confiável
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
-
No painel de navegação, escolha Armazenamentos confiáveis.
-
Selecione o armazenamento confiável.
-
Escolha Excluir.
-
Quando a confirmação for solicitada, insira confirm e selecione Excluir.
- AWS CLI
-
Para excluir um armazenamento confiável
Use o comando delete-trust-store.
aws elbv2 delete-trust-store \
--trust-store-arn trust-store-arn