---
title: Trust a certificate from a private local certificate authority
publish: true
date: 2026-01-11
tags:
  - guide
  - step-ca
  - runbook
description:
---

# Trust a certificate from a private local certificate authority

## Overview

Make your device trust your private CA for TLS encryption.

## Prerequisites

- A local CA running (in our case step-ca) and reachable at `CA_URL`, for instance `https://local-ca.homelab.internal:443`
- An end device with access to a normal shell (*eww, Powershell*).
- very basic understanding of what a PKI is and how certificate trust works.


### Initial problem

When doing 

```bash
curl $CA_URL
```

you get :  

```
curl: (60) SSL certificate problem: unable to get local issuer certificate
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the webpage mentioned above.
```

Which is normal as your root Certificate authority uses a self-signed certificate.

## Steps

### Step 1: Setup

If not already done, install step cli on your end-device : 

```bash
brew install step
```

refer to official documentation https://smallstep.com/docs/step-ca/installation/ for additional installation details for your OS.

### Step 2 : get CA fingerprint

`CA_FINGERPRINT` is the fingerprint of your root certificate.

If you don't have any other device than Step CA with the CA configured, run 

Inside of your host/container running step CA (or any client with step ca already configured)

```bash
step certificate fingerprint <(step ca root)
```

### Step 3: Bootstrap cert

You'll need to run :

```bash
step ca bootstrap --ca-url $CA_URL --fingerprint $CA_FINGERPRINT
```


where `CA_URL` is the address of the CA with protocol

### Step 3 : Install certificate


```bash
step certificate install <(step ca root)
```


### Step 4: Verification

In most modern distributions and *UNIX* derivatives, curl (particularly when installed by default) is configured to run with the system trust store

Now after running

```bash
curl $CA_URL
```

you get 

`404 page not found`

Which is completely fine.

### You successfuly installed a certificate.

## References

- https://smallstep.com/docs/step-ca/installation/
- Related resources



---

*Created: 2026-01-11*
