This article provides an overview of the steps to set up and work with manually managed, custom certificates through Pantheon's Global CDN and Advanced Global CDN, available through Pantheon's Custom Certificates concierge service.
Custom Certificates service is available to contract customers, including Elite, Enterprise, Higher Education, and Resellers. To get started, contact your account manager or our Sales Team.
Follow the steps below to request and send the appropriate certificate, and private key information for AGCDN where applicable:
Approximately two business days after a closed contract, the Pantheon Onboarding Team will provide you with the CSR file, to pass on to your Certificate Authority (CA).
Allow two business days for your Account Team to load the certificate.
You must use a Pantheon-generated CSR. This is a hard requirement. If you already have a certificate, it will need to be re-keyed to match the CSR we provide.
Your CA must accept the CSR Pantheon provides. If your CA fails to accept our CSR, you will not be able to use it to generate a certificate. The CA GlobalSign does not currently meet this requirement. The workaround is to use another CA.
Sites with Advanced Global CDN should provide the following certificate bundle:
- Main Certificate
- Intermediate Certificate
- Private Key
Allow two business days for your Account Team to load the certificate.
Note: The key file upload tool currently only accepts 2048-bit RSA keys. AGCDN custom certificates (and private keys) must be in
If you are presented with the option to Verify your domain to provision HTTPS, skip the verification by clicking Skip to updating DNS.
Once the certificate is in place, you will see the following under Details for your domain(s):
Test production domain(s) before updating DNS by overriding DNS on your local computer from your local
Note that modifying the
hosts file usually requires administrative privileges from the OS.
The location of the
hosts file varies depending on your operating system:
- MacOS / Linux:
Add lines to your operating system's
hosts file in the following format:
203.0.113.10 example.com 203.0.113.20 www.example.com
In the example above, replace the IP addresses with those provided by Pantheon, and the domains with your own.
For non-production domains, test on any environment (Dev, Test, Live or Multidev), just make sure to include the non-production domains on your certificate. We are happy to provide a new CSR if your original CSR and certificate did not initially non-production domains.
A Certification Authority Authorization (CAA) record is used to specify which certificate authorities (CAs) are allowed to issue certificates for a domain. In order to ensure your custom certificate is served for all traffic, you must prevent Let’s Encrypt from issuing certificates.
You have two options to prevent Let’s Encrypt from issuing certificates for domains on your custom certificate:
- An empty CAA policy
- CAA records permitting your CA, but not Let’s Encrypt
To help generate CAA records, please see the free online tool: https://sslmate.com/caa/
CAA records configured for the root domain (e.g.,
example.com) are inherited by subdomains (e.g.,
blog.example.com, etc.). Disabling Let's Encrypt for the root domain will disable subdomains.
If a Let's Encrypt Certificate is deployed before the CAA record preventing it, contact Pantheon Support for assistance. Please allow at least 3 business days for Pantheon to resolve the Let's Encrypt Certificate.
AAAA records provided by Pantheon Support. Note that even for subdomains,
AAAA records are required. Do not use a
About 45 days before your custom certificate expires, Pantheon will open a ticket with your team with a new CSR. You can send that CSR to the Certificate Authority to generate new certificates (as described above for bringing a custom certificate).
To update a certificate with additional domains, contact Pantheon Support with the following details:
- The current common name (CN) and any SANs
- A colon-separated list of domains the certificate is valid for
- The updated certificate attached
It may take up to two business days to process the request.
All sites require an encryption certificate. To downgrade a site that uses a custom certificate, modify the site's CAA records to re-enable Pantheon’s Global CDN Let's Encrypt to issue certificates. Alternatively, you can use another CDN like Cloudflare.
You can use a single certificate to cover multiple domains spread across various environments or sites. Pantheon's Global and Advanced Global CDN use Server Name Indication (SNI), which automatically matches inbound requests with an appropriate certificate, including custom certificates.
Custom certificates are available for contract customers (e.g. Elite, Enterprise, EDU+) and we have no plans to offer it for Basic or Performance sites purchased online. If bringing your own certificate for non-contract site is a requirement, please see suggestions on how to terminate TLS through a 3rd-party.
We have no current plans to offer a self-serve option. The concierge service is designed to quickly guide you through the steps required to deliver HTTPS on the Global CDN using your custom certificate, and we may follow-up with a self-serve option in the future.
For the broadest client compatibility we recommend limiting the number of Subject Alternate Names to 100.
Private keys are just that, private, and not available for export. They are stored securely, server side, and it’s a security best practice to not share private keys among different deployments.
If you manage multiple domains, with some on Pantheon, and some outside of Pantheon, then we recommend using separate certificates, and we are happy to provide you with a new Certificate Signing Request (CSR) so we can deploy a certificate on Pantheon that only has the domains served on Pantheon.
The Global CDN currently has 4 offsets. After certificate deployment, we will provide DNS information so you can upgrade. In the examples below,
X will be replaced with a value of
AAAA record 1:
AAAA record 2:
AAAA records are not required, but recommended as a best practice for performance, especially for mobile devices. See Introduction to Domain Name Services for more information.
CAA records are required in order to prohibit Let's Encrypt from issuing certificates. If your DNS provider does not support CAA records, consider one that does. If using a DNS provider that supports CAA records is not possible, please contact your Professional Services Engagement Manager for help.
To take your site live by moving custom domains from one Site Dashboard to another, with minimal HTTPS interruptions, please refer to Relaunch Existing Pantheon Site.
|Global CDN with Let's Encrypt||Global CDN with a Custom Certificate|
|Certificate Type||Issued by Let's Encrypt||Bring your own|
|Renewal||Automatic||Self-managed (up to you)|
|Inbound IP||Static (shared)||Static (shared)|
|Client Support||95.55% of Browsers |
Some very old browsers not supported 1 2
|95.55% of Browsers |
Some very old browsers not supported 1 2 *
|SSL Labs Rating||A+ with HSTS||A+ with HSTS *|
|Protocol||TLS 1.3 with SNI||TLS 1.3 with SNI|
|Ciphers||No Weak 3DES cipher||No Weak 3DES cipher|
|Delivery||Global CDN||Global CDN|
|Encryption Endpoint||Application Container||Application Container|
* The browser compatibility and SSL Labs scores are guaranteed for Pantheon-provided Let’s Encrypt certificates. The same results are typical for a custom certificate from a mainstream CA with mainstream attributes, but not guaranteed. For custom certificates, compatibility and SSL Labs score depends on attributes of that certificate, such as number of SAN entries, CA and signing algorithm.