Compatible certificates
Upload the public CA certificate that issued the origin certificate. For a self-signed origin certificate, upload that certificate as the trusted certificate. Gcore automated Let’s Encrypt certificates used for client HTTPS delivery cannot be used for origin SSL validation. The client certificate referenced byproxy_ssl_data must be a manually uploaded SSL certificate.
The API requires proxy_ssl_data when origin SSL validation is enabled, but the origin determines whether client authentication is optional or mandatory. To require mutual TLS, configure the origin to request a client certificate, trust the CA that issued the uploaded client certificate, and reject connections that do not present a valid certificate.
Connection flow
The certificate validation process works as follows.- On a cache miss, a CDN edge server connects to the origin over HTTPS.
- The origin presents its X.509 certificate. The edge server validates the certificate chain using the trusted CA (
proxy_ssl_ca) and presents the client certificate (proxy_ssl_data) when the origin requires it. - If validation succeeds, the edge server pulls the content and serves it to the client.
API configuration
Use the CDN API to configure the required certificates and resource fields.- Create a trusted CA certificate with Add CA certificate. Note the returned certificate ID.
- Create a manually uploaded (non-automated) SSL certificate with Add SSL certificate. Note the returned certificate ID.
-
Update the CDN resource with Change CDN resource:
- Set
originGroupto the ID of the existing origin group attached to the CDN resource. - Set
proxy_ssl_cato the trusted CA certificate ID. - Set
proxy_ssl_datato the client SSL certificate ID. - Set
proxy_ssl_enabledtotrue.
Replace the numeric values with the existing origin-group ID and the certificate IDs returned in the previous steps. - Set
proxy_ssl_ca and proxy_ssl_data are required when proxy_ssl_enabled is true, even when the origin does not require client authentication.