

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Verifique que los equilibradores de carga ELB requieran la terminación de TLS
<a name="verify-that-elb-load-balancers-require-tls-termination"></a>

*Priyanka Chaudhary, Amazon Web Services*

## Resumen
<a name="verify-that-elb-load-balancers-require-tls-termination-summary"></a>

En la nube de Amazon Web Services (AWS), Elastic Load Balancing (ELB) distribuye automáticamente el tráfico entrante de las aplicaciones entre varios destinos, como instancias de Amazon Elastic Compute Cloud EC2 (Amazon), contenedores, direcciones IP y funciones de AWS Lambda. Los equilibradores de carga emplean oyentes para definir los puertos y protocolos que usa el equilibrador de carga para aceptar el tráfico de los usuarios. Los balanceadores de carga de aplicaciones toman las decisiones de enrutamiento en la capa de aplicación y utilizan los protocolos. HTTP/HTTPS Los equilibradores de carga clásicos toman las decisiones de enrutamiento en la capa de transporte, mediante los protocolos TCP o Secure Sockets Layer (SSL), o en la capa de aplicación, mediante HTTP/HTTPS.

Este patrón proporciona un control de seguridad que examina varios tipos de eventos para los equilibradores de carga de aplicaciones y los equilibradores de carga clásicos. Cuando se invoca la función, AWS Lambda inspecciona el evento y se asegura de que el equilibrador de carga sea compatible.

La función inicia un evento de Amazon CloudWatch Events en las siguientes llamadas a la API: [CreateLoadBalancer[CreateLoadBalancerListeners](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_CreateLoadBalancerListeners.html)](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_CreateLoadBalancer.html), [DeleteLoadBalancerListeners](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_DeleteLoadBalancerListeners.html), [CreateLoadBalancerPolicy](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_CreateLoadBalancerPolicy.html), [SetLoadBalancerPoliciesOfListener](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_SetLoadBalancerPoliciesOfListener.html), [CreateListener[DeleteListener](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_DeleteListener.html)](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_CreateListener.html), y [ModifyListener](https://docs.aws.amazon.com/elasticloadbalancing/latest/APIReference/API_ModifyListener.html). Cuando el evento detecta uno de estos APIs, llama a AWS Lambda, que ejecuta un script de Python. El script de Python evalúa si el oyente contiene un certificado SSL y si la política que se aplica utiliza seguridad de la capa de transporte (TLS). Si se determina que la política de SSL es distinta de TLS, la función envía una notificación de Amazon Simple Notification Service (Amazon SNS) al usuario con la información pertinente. 

## Requisitos previos y limitaciones
<a name="verify-that-elb-load-balancers-require-tls-termination-prereqs"></a>

**Requisitos previos **
+ Una cuenta de AWS activa

**Limitaciones**
+ Este control de seguridad no comprueba los equilibradores de carga existentes, a menos que se realice una actualización en los dispositivos de escucha del equilibrador de carga.
+ Este control de seguridad es regional. Debe implementarlo en cada región de AWS que desee supervisar.

## Arquitectura
<a name="verify-that-elb-load-balancers-require-tls-termination-architecture"></a>

**Arquitectura de destino**

![\[Asegurarse de que los equilibradores de carga requieran la terminación de TLS.\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/da99cda2-ac34-4791-a2bd-d37264d8d3d9/images/af92b3c8-32bb-45eb-a2a8-d8276fb3e824.png)


**Automatización y escala**
+ Si utiliza [AWS Organizations](https://aws.amazon.com/organizations/), puede utilizar [AWS Cloudformation StackSets](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/what-is-cfnstacksets.html) para implementar esta plantilla en varias cuentas que desee supervisar.

## Tools (Herramientas)
<a name="verify-that-elb-load-balancers-require-tls-termination-tools"></a>

**Servicios de AWS**
+ [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html): AWS le CloudFormation ayuda a modelar y configurar sus recursos de AWS, a aprovisionarlos de forma rápida y coherente y a gestionarlos durante todo su ciclo de vida. Facilita poder usar una plantilla para describir los recursos y sus dependencias, y lanzarlos y configurarlos juntos como una pila, en lugar de administrarlos de forma individual.
+ [Amazon CloudWatch Events](https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html): Amazon CloudWatch Events ofrece una transmisión casi en tiempo real de los eventos del sistema que describen los cambios en los recursos de AWS.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html): AWS Lambda es un servicio de computación que permite ejecutar código sin aprovisionar ni administrar servidores.
+ [Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/Welcome.html): Amazon Simple Storage Service (Amazon S3) es un servicio de almacenamiento de objetos altamente escalable que se puede utilizar para una amplia gama de soluciones de almacenamiento, incluidos sitios web, aplicaciones móviles, copias de seguridad y lagos de datos.
+ [Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/welcome.html): Amazon Simple Notification Service (Amazon SNS) coordina y gestiona la entrega o el envío de mensajes entre publicadores y clientes, incluyendo los servidores web y las direcciones de correo electrónico. Los suscriptores reciben todos los mensajes publicados de los temas a los que están suscritos y todos los suscriptores de un tema reciben los mismos mensajes.

**Código**

Este patrón incluye los siguientes archivos adjuntos:
+ `ELBRequirestlstermination.zip`: el código de Lambda para el control de seguridad.
+ `ELBRequirestlstermination.yml`— La CloudFormation plantilla que configura el evento y la función Lambda.

## Epics
<a name="verify-that-elb-load-balancers-require-tls-termination-epics"></a>

### Configuración del bucket de S3
<a name="set-up-the-s3-bucket"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Defina el bucket de S3. | En la [consola Amazon S3](https://console.aws.amazon.com/s3/), elija o cree un bucket de S3 para alojar el archivo .zip de código de Lambda. Este bucket de S3 debe estar en la misma región de AWS que el equilibrador de carga que desea evaluar. Un nombre de bucket de S3 es globalmente único y todas las cuentas de AWS comparten el espacio de nombres. El nombre de bucket de S3 no puede incluir barras a la izquierda. | Arquitecto de la nube | 
| Cargue el código de Lambda. | Cargue el código de Lambda (archivo `ELBRequirestlstermination.zip`) que se proporciona en la sección *Adjuntos* en el bucket de S3. | Arquitecto de la nube | 

### Implemente la plantilla CloudFormation
<a name="deploy-the-cloudformation-template"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Lance la CloudFormation plantilla de AWS. | Abra la [ CloudFormation consola de AWS](https://console.aws.amazon.com/cloudformation/) en la misma región de AWS que su bucket de S3 e implemente la plantilla adjunta`ELBRequirestlstermination.yml`. Para obtener más información sobre la implementación de CloudFormation plantillas de AWS, consulte [Crear una pila en la CloudFormation consola de AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) en la CloudFormation documentación. | Arquitecto de la nube | 
| Complete los parámetros de la plantilla. | Al lanzar la plantilla, se le solicitará la siguiente información:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/verify-that-elb-load-balancers-require-tls-termination.html) | Arquitecto de la nube | 

### Confirmar la suscripción
<a name="confirm-the-subscription"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Confirmar la suscripción. | Cuando la CloudFormation plantilla se implementa correctamente, envía un correo electrónico de suscripción a la dirección de correo electrónico que proporcionó. Debe confirmar esta suscripción de correo electrónico para recibir las notificaciones de infracciones. | Arquitecto de la nube | 

## Recursos relacionados
<a name="verify-that-elb-load-balancers-require-tls-termination-resources"></a>
+ [Creación de una pila en la CloudFormation consola de AWS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html) ( CloudFormation documentación de AWS)
+ [¿Qué es AWS Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) (documentación de AWS Lambda)
+ [¿Qué es un equilibrador de carga clásico?](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/introduction.html) (documentación del ELB)
+ [¿Qué es un equilibrador de carga de aplicación?](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html) (documentación del ELB)

## Conexiones
<a name="attachments-da99cda2-ac34-4791-a2bd-d37264d8d3d9"></a>

Para acceder al contenido adicional asociado a este documento, descomprima el archivo: [attachment.zip](samples/p-attach/da99cda2-ac34-4791-a2bd-d37264d8d3d9/attachments/attachment.zip)