Configuración de una TLS mutua en un Equilibrador de carga de aplicación - Elastic Load Balancing

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.

Configuración de una TLS mutua en un Equilibrador de carga de aplicación

Para utilizar el modo de transferencia TLS mutua, solo necesita configurar el listener para que acepte los certificados de los clientes. Cuando utiliza el acceso directo de TLS mutua, el Equilibrador de carga de aplicación envía toda la cadena de certificados del cliente al destino mediante encabezados de HTTP, lo que le permite implementar la lógica de autenticación y autorización correspondiente en la aplicación. Para obtener más información, consulte Crear un oyente HTTPS para el Equilibrador de carga de aplicaciones.

Cuando se usa la TLS mutua en el modo de verificación, el Equilibrador de carga de aplicación realiza la autenticación del certificado de cliente X.509 para los clientes cuando un equilibrador de carga negocia las conexiones de TLS.

Para usar el modo de verificación de TLS mutua, realice lo siguiente:

  • Cree un nuevo recurso del almacén de confianza.

  • Cargue su paquete de entidades de certificación (CA) y, si lo desea, las listas de revocación.

  • Adjunte el almacén de confianza al oyente que está configurado para verificar los certificados de los clientes.

Use los siguientes procedimientos para configurar el modo de verificación TLS mutua en su Application Load Balancer.

Creación de un almacén de confianza

Si agrega un almacén de confianza al crear un equilibrador de carga o un agente de escucha, el almacén de confianza se asocia automáticamente al nuevo agente de escucha. De lo contrario, debes asociarlo tú mismo a un oyente.

Requisitos previos
  • Para crear un almacén de confianza, debe tener un paquete de certificados de su entidad de certificación (CA).

Console

En el siguiente ejemplo, se crea un almacén de confianza mediante la parte del almacén de confianza de la consola. Como alternativa, puede crear el almacén de confianza al crear un agente de escucha HTTP.

Para crear un almacén de confianza
  1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación izquierdo, seleccione Almacenes de confianza.

  3. Elige Crear tienda de confianza.

  4. Configuración del almacén de confianza

    1. En Nombre de almacén de confianza, introduce un nombre para tu almacén de confianza.

    2. En el caso del paquete de autoridad de certificación, introduzca la ruta de Amazon S3 al paquete de certificados ca que desee utilizar.

    3. (Opcional) Utilice la versión de objeto para seleccionar una versión anterior del paquete de certificados de CA. De lo contrario, se utiliza la versión actual.

  5. (Opcional) En el caso de las revocaciones, puede añadir una lista de certificados revocados a su almacén de confianza.

    1. Elija Añadir nueva CRL e introduzca la ubicación de la lista de revocación de certificados en Amazon S3.

    2. (Opcional) Utilice la versión de objeto para seleccionar una versión anterior de la lista de revocación de certificados. De lo contrario, se utilizará la versión actual.

  6. (Opcional) Amplíe las etiquetas de la tienda de confianza e introduzca hasta 50 etiquetas para su tienda de confianza.

  7. Selecciona Crear almacén de confianza.

AWS CLI
Para crear un almacén de confianza

Utilice el 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 crear un almacén de confianza

Defina un 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

Asociar un almacén de confianza

Tras crear un almacén de confianza, debe asociarlo a un oyente para que el Equilibrador de carga de aplicación pueda empezar a utilizar el almacén de confianza. Recuerde que solo puede tener un almacén de confianza asociado a cada uno de sus oyentes seguros, pero un almacén de confianza puede estar asociado a varios oyentes.

Console

Puede asociar un almacén de confianza a un listener existente, como se muestra en el siguiente procedimiento. Como alternativa, puede asociar un almacén de confianza al crear un agente de escucha HTTPS. Para obtener más información, consulte Crear un agente de escucha HTTPS.

Para asociar un almacén de confianza
  1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Load Balancers.

  3. Seleccione el equilibrador de carga.

  4. En la pestaña Oyentes y reglas, elija el enlace de la columna Protocol:Port para abrir la página de detalles del oyente seguro.

  5. En la pestaña Seguridad, seleccione Editar la configuración del oyente seguro.

  6. Si el TLS mutuo no está activado, selecciona Autenticación mutua (mTLS) en Gestión de certificados de cliente y, a continuación, selecciona Verificar con un almacén de confianza.

  7. Para Almacén de confianza, elija el almacén de confianza.

  8. Seleccione Save changes (Guardar cambios).

AWS CLI
Para asociar un almacén de confianza

Utilice el comando modify-oyente.

aws elbv2 modify-listener \ --listener-arn listener-arn \ --mutual-authentication "Mode=verify,TrustStoreArn=trust-store-arn"
CloudFormation
Para asociar un almacén de confianza

Actualice el AWS::ElasticLoadBalancingV2::Listenerrecurso.

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

Sustitución de un paquete de certificados de CA

El paquete de certificados de CA es un componente obligatorio del almacén de confianza. Es un conjunto de certificados raíz e intermedios de confianza que ha validado una entidad de certificación. Estos certificados validados garantizan que el cliente pueda confiar en que el certificado que se presenta es propiedad del equilibrador de carga.

Un almacén de confianza solo puede contener un paquete de certificados de CA a la vez, pero puede reemplazar el paquete de certificados de CA en cualquier momento una vez haya creado el almacén de confianza.

Console
Para reemplazar un paquete de certificados de CA
  1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación izquierdo, seleccione Almacenes de confianza.

  3. Selecciona la tienda de confianza.

  4. Elija Acciones y reemplace el paquete CA.

  5. En la página Reemplazar paquete de CA, en Paquete de autoridad de certificación, introduzca la ubicación de Amazon S3 del paquete de CA deseado.

  6. (Opcional) Utilice la versión de objeto para seleccionar una versión anterior de la lista de revocación de certificados. De lo contrario, se utilizará la versión actual.

  7. Seleccione Reemplazar el paquete de CA.

AWS CLI
Para reemplazar un paquete de certificados de CA

Utilice el 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 actualizar el paquete de certificados de CA

Defina un 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

Incorporación de una lista de revocación de certificados

Si lo desea, puede crear una lista de revocación de certificados para un almacén de confianza. Las autoridades de certificación publican las listas de revocación; estas últimas contienen datos de los certificados que se han revocado. Los Equilibradores de carga de aplicación solo admiten listas de revocación de certificados en formato PEM.

Cuando se agrega una lista de revocación de certificados a un almacén de confianza, se le asigna un identificador de revocación. La revocación IDs aumenta por cada lista de revocaciones que se agrega al almacén de confianza y no se puede cambiar.

Los balanceadores de carga de aplicaciones no pueden revocar los certificados que tengan un número de serie negativo en una lista de revocación de certificados.

Console
Para añadir una lista de revocaciones
  1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación izquierdo, seleccione Almacenes de confianza.

  3. Seleccione el almacén de confianza para ver su página de detalles.

  4. En la pestaña Listas de revocación de certificados, selecciona Acciones, Añadir lista de revocaciones.

  5. En la página Agregar lista de revocación, en Lista de revocación de certificados, introduzca la ubicación de Amazon S3 de la lista de revocación de certificados que quiera.

  6. (Opcional) Utilice la versión de objeto para seleccionar una versión anterior de la lista de revocación de certificados. De lo contrario, se utilizará la versión actual.

  7. Seleccione Agregar lista de revocación

AWS CLI
Para añadir una lista de revocaciones

Utilice el 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 añadir una lista de revocaciones

Defina un recurso de tipo AWS::ElasticLoadBalancingV2::TrustStoreRevocación.

Resources: myRevocationContents: Type: 'AWS:ElasticLoadBalancingV2::TrustStoreRevocation' Properties: TrustStoreArn: !Ref myTrustStore RevocationContents: - RevocationType: CRL S3Bucket: amzn-s3-demo-bucket S3Key: crl/revoked-list.crl

Eliminación de una lista de revocación de certificados

Cuando ya no necesite una lista de revocaciones de certificados, puede eliminarla. Al eliminar una lista de revocación de certificados de un almacén de confianza, su identificador de revocación también se elimina y no se vuelve a utilizar mientras dure el almacén de confianza.

Console
Para eliminar una lista de revocaciones
  1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación izquierdo, seleccione Almacenes de confianza.

  3. Selecciona la tienda de confianza.

  4. En la pestaña Listas de revocación de certificados, elija Acciones, Eliminar lista de revocaciones.

  5. Cuando se le solicite confirmación, ingrese confirm.

  6. Elija Eliminar.

AWS CLI
Para eliminar una lista de revocaciones

Utilice el 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

Eliminación de un almacén de confianza

Cuando ya no utilice un almacén de confianza, puede eliminarlo. No puede eliminar un almacén de confianza que esté asociado a un oyente.

Console
Para eliminar un almacén de confianza
  1. Abre la EC2 consola de Amazon en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación izquierdo, seleccione Almacenes de confianza.

  3. Selecciona la tienda de confianza.

  4. Elija Eliminar.

  5. Cuando le pidan confirmación, escriba confirm y elija Eliminar.

AWS CLI
Para eliminar un almacén de confianza

Utilice el comando delete-trust-store.

aws elbv2 delete-trust-store \ --trust-store-arn trust-store-arn