Configure a third-party TLS certificate
Back to home
On this page
Upsun automatically provides standard Transport Layer Security (TLS) certificates for all sites and environments. These certificates are issued at no charge by Let’s Encrypt and cover most needs. To use them, you need to specify HTTPS routes. Note that some limitations apply.
Upsun allows you to use third-party TLS certificates free of charge.
You can use many kinds of custom certificates, including domain-validated, extended validation, high-assurance, or wildcard certificates. Consult your TLS issuer for pricing and instructions on how to generate a TLS certificate.
Seven days before a third-party custom certificate is due to expire, Upsun replaces it with a new default Let’s Encrypt certificate. This helps prevent downtime. To avoid switching to a default certificate, make sure you replace your custom certificate with an updated one more than seven days before its expiration date.
Note that custom certificates aren’t necessary for preview environments.
Wildcard certificates that cover all *.platform.sh
domains, including preview environments, are automatically provided.
Add a custom certificate
You can add a custom certificate using the CLI or in the Console.
Your certificate has to be in PKCS #1 format and start with -----BEGIN RSA PRIVATE KEY-----
.
If it doesn’t start that way, change the format.
To add your custom certificate, follow these steps:
-
Run the following command:
upsun domain:add YOUR_DOMAIN --cert PATH_TO_CERTIFICATE_FILE --key PATH_TO_PRIVATE_KEY_FILE
For example:
upsun domain:add secure.example.com --cert /etc/TLS/private/secure-example-com.crt --key /etc/TLS/private/secure-example-com.key
You can optionally include intermediate SSL certificates by adding
‐‐chain PATH_TO_FILE
for each one. -
Redeploy your production environment with the following command:
upsun environment:redeploy
- Open the project where you want to add a certificate.
- Click Settings.
- Click Certificates.
- Click + Add.
- Fill in your private key, public key certificate, and (optionally) intermediate SSL certificates.
- Click Add Certificate.
- Access your production environment.
- Click More.
- Click Redeploy.
Change the private key format
The expected format for your certificate’s private key is PKCS #1.
Private keys in PKCS #1 format start with -----BEGIN RSA PRIVATE KEY-----
.
If your private key starts with -----BEGIN PRIVATE KEY-----
, it’s in PKCS #8 format, which isn’t appropriate.
To convert your private key (private.key
) from PKCS #8 to PKCS #1 format (private.rsa.key
), run the following command:
openTLS rsa -in private.key -out private.rsa.key