Setting up TLS with your own certificates

This guide describes how to use the Fastly TLS product to upload and deploy your own TLS certificates and private keys using the Fastly web interface.

To serve secure traffic from Fastly using HTTPS (Hypertext Transfer Protocol Secure), a website or application needs to provide clients with a valid TLS certificate signed by a trusted Certification Authority (CA). TLS (Transport Level Security) and its predecessor SSL (Secure Sockets Layer) are the protocols that allow clients to form secure server connections so traffic can be served over HTTPS.

TIP

Fastly offers an API for uploading and managing your keys and certificates used to activate TLS for your domains on Fastly.

Before you begin

Before setting up TLS on your domains, be sure to review the Fastly TLS prerequisites and limitations.

Setting up TLS for the first time

To set up TLS, you'll upload a TLS certificate and the matching private key (used to initially generate the certificate). Then, you'll apply a TLS configuration to the domain and activate TLS on the domain.

To set up TLS for the first time, complete the following:

  1. Log in to the Fastly web interface and click the Secure link. The Secure page appears displaying an overview of Fastly's security offerings.
  2. Click Manage certificates.
  3. Click Get started.

  4. Click Upload my own private key and certificate to continue.

  5. Drag and drop the key file into the drag and drop area for key files. Alternately, click the browse link to navigate to the file on your system using the file picker. A success message appears along with a visualization of your key.

    IMPORTANT

    The key file upload tool currently only accepts 256-bit or 384-bit ECDSA keys or 2048-bit RSA keys.

  6. Drag and drop the certificate file into the drag and drop area for certificate files. Alternately, click the browse link to navigate to the file on your system using the file picker.

  7. Click Continue to move to the final steps of enabling TLS on your domain.

  8. Select the checkbox next to the domain you want to activate.

  9. From the Select a TLS Configuration menu, select the TLS configuration to apply. The configuration defines both the IPs that the certificate will be deployed to and the associated TLS settings that will be applied. The default option is HTTP/3 & TLS v1.3 + 0RTT (t.sni).

  10. Click Activate.

Securing additional domains

After you've set up TLS for your first domain, you can upload additional TLS certificates and private keys and activate TLS on other domains.

Uploading a private key and certificate

To upload a TLS certificate and the relevant private key, follow the steps below.

IMPORTANT

The key file upload tool currently only accepts 256-bit or 384-bit ECDSA keys or 2048-bit RSA keys.

  1. Select the Self-managed certificates tab.

  2. From the Upload key or certificate menu, select Add a new key or certificate.

    the add a new key and certificate page

  3. We recommend generating a new key for the new certificate. Drag and drop the key file into the drag and drop area for key files. Alternately, click the browse link to navigate to the file on your system using the file picker. If you have multiple private keys, you can identify each by the unique SHA1 hash.

  4. Drag and drop the certificate file into the drag and drop area for certificate files. Alternately, click the browse link to navigate to the file on your system using the file picker.

  5. Click Submit. The Certificate details page appears.

Once you upload your certificate file, you can activate TLS on a domain.

Activating TLS on a domain

Once a valid certificate and private key have been uploaded, all domains that appear as SAN entries will be listed on the Domains page with a status of TLS ready. To serve HTTPS traffic using your certificate, follow the steps below to activate TLS for the domain and point the DNS records to the certificate's location.

  1. Click Domains.

  2. Find the card for the domain with the certificates on which you want to activate TLS. Certificates in a disabled state will have the status of Ready to activate.

  3. Click Add TLS activation to the right of the certificate you want to activate.

  4. Select the TLS configuration you want to apply. If the configuration is already activated for a different certificate on the domain, a notice appears. You must click Switch to this certificate to continue.

    Fastly deploys your TLS certificate to the entire Fastly edge network. It may take up to an hour for your certificate to become available throughout the world.

  5. Click View details to view the DNS details for the domain. Use these details to configure your DNS records so that a TLS connection can be established using your certificate.

IMPORTANT

It can take up to 48 hours for new DNS records to propagate across the internet.

Applying a TLS configuration to a domain

TLS configurations are a collection of TLS settings that include the supported versions of TLS and HTTP, along with networking and handshaking options that clients will use. For accounts with more than one TLS configuration, the default configuration has a label in the right corner of the card.

the list of configurations on the TLS configurations tab with the default configuration marked as default in the upper right corner of the configuration card

TIP

TLS configuration names are editable by clicking the pencil icon next to the name.

To override the default TLS configuration applied to a domain or to migrate a domain to use a different configuration follow these steps.

  1. Click Domains.

  2. Find the card for the domain with the certificates on which you want to add additional TLS activations.

  3. Click View details next to the certificate on which you want to add additional activations.

  4. Click Add TLS activation.

  5. Select the TLS configuration you want to apply to the certificate.

    NOTE

    While you may have multiple certificates on a given domain, only one certificate can be active for a given TLS configuration. If the TLS configuration is already in use by another certificate, a Switch to this certificate button appears.

    Once the configuration is selected, the TLS configuration is applied to the domain. Each TLS configuration is active and available at their respective IP addresses and DNS records.

  6. Click View details and use the information to configure your DNS records so that a TLS connection can be established using your certificate.

  7. Confirm the new DNS records have propagated across the internet (this can take up to 48 hours), then delete the old TLS configuration by clicking the trash.

NOTE

For HTTP/1.1, be sure to activate TLS for each of your domains in the web interface. If you upload a certificate with multiple SANs, each domain must have TLS explicitly activated if you want to secure these domains on Fastly.

Exceptions may apply in the case of HTTP/2 if your browser coalesces secure connections and has previously received a TLS certificate from an earlier handshake. In this case, some browsers may reuse an existing secure connection to Fastly if its certificate has a matching SAN entry.

Updating a certificate

Fastly allows you to update a certificate by replacing it with a new one at any time. To help identify certificates that need updating and replacing, the following alerts appear on the certificate cards on the TLS certificates page:

  • Expiring: Indicates a certificate is nearing its expiration date.
  • Expired: Indicates a certificate is past its expiration date.
  • Replace: Indicates a certificate Fastly recommends you update and replace.

Updating certificates when there are no removed domains

To update a TLS certificate by replacing it with one that contains all the domains as the original (either as a superset or a matching list) follow these steps.

  1. Generate a new certificate with your preferred Certification Authority.
  2. Select the Self-managed certificates tab.
  3. Find the card for the certificate you’re replacing.
  4. Click the word Replace in the upper right corner of the certificate’s card.
  5. Drag and drop the replacement certificate file into the drag and drop area for certificate files. The certificate you select should be PEM-formatted and the SAN entries of this new certificate must contain all entries in the current certificate (i.e., it must either have an exact matching list or contain a superset). Alternately, click the browse link to navigate to the file on your system using the file picker.
  6. If a new key was generated with the new certificate, drag and drop the key file into the drag and drop area for key files. Alternately, click the browse link to navigate to the file on your system using the file picker.
  7. Below the drag and drop areas, verify that the certificate replacement menu is pre-selected with the certificate you want to replace with your new certificate.
  8. Click Submit.

All domains actively serving TLS traffic on the old certificate will be automatically transitioned to the updated certificate within a matter of minutes. Any new domains will need to be manually activated by following the steps for activating TLS on a domain.

Updating certificates when there have been changes to domains

If you want to update one of your certificates that requires removing domains, you will need to procure a new certificate with the updated list of SAN entries. Follow the steps to upload this certificate as a new certificate.

  1. Upload the new certificate.
  2. Click the Domains tab and find the previously existing domains that have already been activated with the certificate you’re replacing.
  3. Click View details next to the certificate on which you want to add additional activations.
  4. Click the Add TLS activation button.
  5. Select the TLS configuration you want to apply to the certificate. Once the configuration is selected, the TLS configuration is applied to the domain. Each TLS configuration is active and available at their respective IP addresses and DNS records.
  6. Delete the old certificate.

Certificates for newly activated domains can take between 5 minutes to an hour to fully deploy across Fastly’s global network. If the new certificate is not being used to serve TLS traffic within 1 hour, contact support for assistance.

Deactivating TLS and deleting certificates and private keys

Once a domain has TLS activated, you have the option to deactivate TLS via the Deactivate TLS button listed on the TLS domains page. If a domain has multiple certificates, you can elect to deactivate a specific certificate by clicking Add/Edit Activations and clicking the Deactivate button next to any active configurations. If all certificates are deactivated, Fastly will no longer serve TLS traffic on the selected domain and it will become disabled.

To delete a certificate from the Self-managed certificates page, be sure to disable TLS for all domains on that specific certificate. You will also need to delete all certificates before you can delete a matching private key. Private keys can only be deleted if they have no matching TLS certificate.

Certificate expirations

Thirty days before any certificate is due to expire, the web interface will display warnings on certificates soon to expire. Fastly will also begin to periodically send automated expiration notification emails to all superusers. If the certificate is not replaced or removed, Fastly will continue to email users on the account until the certificate expires. Once expired, Fastly will no longer send automatic notifications.

Was this guide helpful?

Do not use this form to send sensitive information. If you need assistance, contact support. This form is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.