Store Certificates Locally on Docker

Note About Certificate Renewal

Certificates Usage

In order to use encrypted traffic (HTTPS) a managed reverse proxy must have access to the relevant certificates of the domains and URLs it exposes.

Example - you have two applications and one API endpoint to protect:

  • www.acme.com

  • www.acme.com/sales

  • products.acme.com/catalog

Examples
Certificates used
Required action

Case 1

You have one wildcard certificate for *.acme.com

Place the certificate in the desired certificate storage by following the instructions below. CloudGuard WAF will use it for all relevant applications

Case 2

You have two certificates: (1) for www.acme.com and (2) for products.acme.com

Place both certificates in the desired certificate storage by following the instructions below. CloudGuard WAF will automatically use certificate 1 for the first two Applications/APIs and certificate 2 for the last Application

Storing certificates locally on a managed Reverse Proxy Docker

Follow these steps to store your certificate and private keys on the docker that can be used by CloudGuard WAF to process HTTPS traffic:

  • Pros: you have full control of your secrets.

  • Cons: Method fits a single docker deployment, not an auto-scaled deployment.

Step 1: Download command-line tool

The tool's purpose is to verify the certificate and key files and generate an output .pkg file with a unique name.

Linux Download or run: wget https://sc1.checkpoint.com/nano-agent/certverify/linux/certverify && chmod +x certverify

Mac Download

Windows Download

You can use this tool on any machine where you have the files, before you actually store them on your managed Reverse Proxy Server(s).

Step 2: Run the command-line tool

Linux and Mac:

  • PEM certificates: ./certverify --cert {certificate.pem} --key {private-key.key}

  • PFX certificates: ./certverify --cert {certificate.pfx} --pass {password}

Windows:

  • PEM certificates : certverify --cert {certificate.pem} --key {private-key.key}

  • PFX certificates : certverify --cert {certificate.pfx} --pass {password}

Only certificates that contain Subject Alternative Name (SAN) are supported.

The tool will verify the certificate and key files, and generate an output .pkg file with a unique name that includes both.

Step 3: Store certificate and private key on your managed Reverse Proxy docker using SCP

Note - package file and folder names contain the name appsec - short for "Application Security" provided by CloudGuard WAF.

The input pkg file for this step is the uniquely named pkg output file of the previous step.

  • Linux or Mac: ./scp {unique-name.pkg} admin@{docker-ip}:/appsec/etc/certs

  • Windows: "C:\Program Files (x86)\WinSCP\WinSCP.com" /command "open scp://admin:{password}@{docker-ip}" "put cert_cert.pkg /appsec/etc/certs/" "exit"

Step 4: Enforce Policy

Open CloudGuard WAF Web Interface in your browser and click the Enforce button at the top bar. This will signal the Managed Reverse Proxy to read the certificates from the local certificate storage.

Step 5: Change relevant DNS entries

You can now change your DNS entries as relevant to point to your managed Reverse Proxy docker IP address or to a Load Balancer in front of several managed Reverse Proxy dockers.

Last updated

Was this helpful?