Configuración de nombres de dominio alternativos y HTTPS - Amazon CloudFront

Configuración de nombres de dominio alternativos y HTTPS

Para utilizar nombres de dominio alternativos en las URL de los archivos y utilizar HTTPS entre los lectores y CloudFront, realice los procedimientos aplicables.

Obtención de un certificado SSL/TLS

Obtenga un certificado SSL/TLS si aún no dispone de uno. Para obtener más información, consulte la documentación aplicable:

  • Para utilizar un certificado proporcionado por AWS Certificate Manager (ACM), consulte la Guía del usuario de AWS Certificate Manager. A continuación, diríjase a Actualización de la distribución de CloudFront.

    nota

    Le recomendamos que utilice ACM para aprovisionar, administrar e implementar los certificados SSL/TLS en los recursos administrados de AWS. Debe solicitar un certificado de ACM en la región EE. UU. Este (Norte de Virginia).

  • Para obtener un certificado de una entidad de certificación (CA) de terceros, consulte la documentación que proporciona. Cuando tenga el certificado, continúe con el siguiente procedimiento.

Importación de un certificado SSL/TLS

Si ha obtenido el certificado de una entidad de certificación de terceros, importe el certificado a ACM o cárguelo en el almacén de certificados de IAM:

ACM (recomendado)

ACM le permite importar certificados de terceros desde la consola de ACM y de forma programada. Para obtener más información sobre la importación de un certificado a ACM, consulte Importación de certificados a AWS Certificate Manager en la Guía del usuario de AWS Certificate Manager. Debe importar el certificado en la región EE. UU. Este (Norte de Virginia).

Almacén de certificados de IAM

(No recomendado) Utilice el siguiente comando de AWS CLI para cargar el certificado de terceros en el almacén de certificados de IAM.

aws iam upload-server-certificate \ --server-certificate-name CertificateName \ --certificate-body file://public_key_certificate_file \ --private-key file://privatekey.pem \ --certificate-chain file://certificate_chain_file \ --path /cloudfront/path/

Tenga en cuenta lo siguiente:

  • Cuenta de AWS: debe cargar el certificado en el almacén de certificados de IAM con la misma cuenta de AWS que utilizó para crear la distribución de CloudFront.

  • Parámetro --path: al cargar el certificado en IAM, el valor del parámetro --path (ruta del certificado) debe comenzar por /cloudfront/, por ejemplo, /cloudfront/production/ o /cloudfront/test/. La ruta debe acabar con una /.

  • Certificados existentes: debe especificar valores para los parámetros --server-certificate-name y --path que sean diferentes de los valores asociados con los certificados existentes.

  • Uso de la consola de CloudFront: el valor que especifique para el parámetro --server-certificate-name en AWS CLI, por ejemplo, myServerCertificate, aparece en la lista SSL Certificate (Certificado SSL) de la consola de CloudFront.

  • Con la API de CloudFront: anote la cadena alfanumérica que devuelve AWS CLI, por ejemplo, AS1A2M3P4L5E67SIIXR3J. Este es el valor que se especifica en el elemento IAMCertificateId. No es necesario el ARN de IAM, que también devuelve la CLI.

Para obtener más información sobre AWS CLI, consulte la Guía del usuario de AWS Command Line Interface y la Referencia de comandos de AWS CLI.

Actualización de la distribución de CloudFront

Para actualizar la configuración de su distribución, realice el siguiente procedimiento:

Para configurar la distribución de CloudFront para nombres de dominio alternativos
  1. Inicie sesión en la AWS Management Console y abra la consola de CloudFront en https://console.aws.amazon.com/cloudfront/v4/home.

  2. Elija la ID de la distribución que desea actualizar.

  3. En la pestaña General, seleccione Edit.

  4. Actualice los siguientes valores:

    Nombre de dominio alternativo (CNAME)

    Elija Agregar elemento para agregar los nombres de dominio alternativos aplicables. Separe los nombres de dominio con comas o escriba uno por línea.

    Certificado SSL personalizado

    Seleccione un certificado en el menú desplegable.

    Aquí se enumeran hasta 100 certificados. Si tiene más de 100 certificados y no ve el certificado que desea añadir, puede escribir un ARN de certificado en el campo para elegirlo.

    Si ha cargado un certificado al almacén de certificados de IAM pero no está en la lista y no puede elegirlo escribiendo el nombre en el campo, revise el procedimiento Importación de un certificado SSL/TLS para confirmar que el certificado se ha cargado correctamente.

    importante

    Después de asociar el certificado SSL/TLS a la distribución de CloudFront, no elimine el certificado de ACM ni el almacén de certificados de IAM hasta que haya eliminado el certificado de todas las distribuciones y se hayan implementado.

  5. Elija Guardar cambios.

  6. Configure CloudFront para que solicite HTTPS entre lectores y CloudFront:

    1. En la pestaña Behaviors (Comportamientos), elija el comportamiento de la caché que desee actualizar y después elija Edit (Editar).

    2. Especifique uno de los siguientes valores en Viewer Protocol Policy (Política de protocolo del espectador):

      Redireccionamiento de HTTP a HTTPS

      Los espectadores pueden usar tanto el protocolo HTTP como el HTTPS, pero las solicitudes HTTP se redirigirán automáticamente a solicitudes HTTPS. CloudFront devuelve el código de estado HTTP 301 (Moved Permanently) junto con la nueva URL HTTPS. A continuación, el lector vuelve a enviar la solicitud a CloudFront través de la URL HTTPS.

      importante

      CloudFront no redirige las solicitudes DELETE, OPTIONS, PATCH, POST ni PUT de HTTP a HTTPS. Si configura un comportamiento de la caché para que redirija a HTTPS, CloudFront responde a solicitudes HTTP DELETE, OPTIONS, PATCH, POST o PUT para ese comportamiento de la caché con el código de estado HTTP 403 (Forbidden).

      Cuando un lector realiza una solicitud HTTP que se redirige a una solicitud HTTPS, se aplican cargos de CloudFront a ambas solicitudes. En el caso de la solicitud HTTP, el cargo es solo para la solicitud y para los encabezados que CloudFront devuelve al lector. En el caso de la solicitud HTTPS, el cargo es por la solicitud y por los encabezados y el archivo que el origen devuelve.

      Solo HTTPS

      Los espectadores pueden obtener acceso a su contenido solo si utilizan HTTPS. Si un lector envía una solicitud HTTP en lugar de una solicitud HTTPS, CloudFront devuelve el código de estado HTTP 403 (Forbidden) y no devuelve el archivo.

    3. Elija Yes, Edit (Sí, editar).

    4. Repita los pasos de la "a" a la "c" para cada comportamiento de la caché adicional para el que desee exigir HTTPS entre los lectores y CloudFront.

  7. Confirme lo siguiente antes de utilizar la configuración actualizada en un entorno de producción:

    • El patrón de ruta de cada comportamiento de la caché es aplicable únicamente a las solicitudes en las que desea que los espectadores utilicen HTTPS.

    • Los comportamientos de la caché se muestran en el orden en que desee que CloudFront los evalúe. Para obtener más información, consulte Patrón de ruta.

    • Los comportamientos de la caché son solicitudes de redirección hacia los orígenes correctos.