Installing an SSL Certificate on AWS for Load Balancers and CloudFront
Daniel MartinezShare
Amazon Web Services (AWS) centralizes SSL Certificate handling in one service, and everything downstream becomes simple once your SSL Certificate lives there. AWS Certificate Manager (ACM) holds the imported SSL Certificate, while load balancers and CloudFront distributions simply reference it.
The detail that catches almost everyone is region placement, and this guide covers it alongside the import and both attachment paths.
Prerequisites and Required Files
You need AWS console access with permission to manage ACM and the target load balancer or distribution. You also need your issued SSL Certificate, the ca-bundle of Intermediate Certificates from the Certificate Authority (CA), and your Private Key, all in PEM format.
The first two are available in the tracking system, while the Private Key exists only where your Certificate Signing Request (CSR) was generated. View Our Tracking & SSL Management 🔗
Choosing the Correct Region
ACM is regional, and the SSL Certificate must be imported where it will be used. A load balancer can only reference an SSL Certificate imported into its own region, while CloudFront only reads from US East (N. Virginia), the us-east-1 region, regardless of where your origin runs.
Serving both a load balancer outside us-east-1 and a CloudFront distribution therefore means importing the same SSL Certificate twice, once into each region. This is normal practice rather than a workaround.
Importing into AWS Certificate Manager
Open ACM in the chosen region and start a new import. Three fields take your material directly as pasted PEM text.
Certificate body takes the issued SSL Certificate alone. Certificate private key takes the Private Key. Certificate chain takes the full ca-bundle, and completing this third field is what spares mobile devices and strict clients from chain warnings later. Learn About Intermediate Certificates 🔗
Confirm the import, and the SSL Certificate appears in the ACM list showing its covered domains and expiry. ACM stores the Private Key encrypted and never exposes it again, so retain your own copy independently.
Attaching to an Application Load Balancer
Open the EC2 console, select Load Balancers, and choose your load balancer. On the Listeners tab, edit the HTTPS listener on port 443, or add one if the load balancer currently terminates only HTTP.
In the default SSL Certificate selection, choose From ACM and pick the imported entry, then save. New connections receive the SSL Certificate immediately. The load balancer terminates Transport Layer Security (TLS) at the edge and forwards traffic to your targets, an architecture worth understanding when deciding what the targets themselves should serve. Learn About SSL Offloading 🔗
Assigning to a CloudFront Distribution
With the SSL Certificate imported into us-east-1, open your CloudFront distribution and edit the General settings. Add your hostname under Alternate domain names, since CloudFront only presents a custom SSL Certificate for explicitly listed names, then select the ACM entry in the Custom SSL Certificate dropdown and save.
Distribution changes deploy across edge locations over several minutes, so allow the deployment to complete before testing.
Important : An imported SSL Certificate does not appear in the CloudFront dropdown when it sits in any region other than us-east-1. If the dropdown looks empty despite a successful import, the region is the first thing to check.
With the listener or distribution updated, the result is ready to confirm.
Verifying the Installation
Browse to the hostname and confirm the SSL Certificate details, then run an external scan to confirm the full chain reaches fresh clients, which validates that the chain field was completed at import. Trustico® provides free checking tools for this confirmation. Explore Our Trustico® SSL Tools 🔗
Troubleshooting Common Installation Problems
An import rejected over a key mismatch means the Private Key does not pair with the SSL Certificate, usually because the CSR was regenerated after submission. A reissue against the current CSR resolves it. Learn About Reissuing Your SSL Certificate 🔗
An import rejected over formatting means the pasted material is not clean PEM text. Confirm each block carries its begin and end markers with no surrounding whitespace or Windows line ending artifacts.
Chain warnings after a successful attachment mean the chain field was left empty at import. Reimport with the ca-bundle included and repoint the listener or distribution at the new entry.
Professional Installation Assistance
AWS environments often combine load balancers, distributions, and multiple regions, and placing each SSL Certificate correctly takes some platform familiarity.
Trustico® offers a Premium Installation service where our technicians complete the installation on your behalf. Discover Our Premium Installation Service 🔗