Skip to content

Commit 0b37b90

Browse files
authored
Merge pull request #440 from smallstep/carl/tweaks
Small changes
2 parents 854244c + 39263fe commit 0b37b90

File tree

4 files changed

+41
-44
lines changed

4 files changed

+41
-44
lines changed

step-ca/acme-basics.mdx

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
updated_at: September 18, 2025
2+
updated_at: October 02, 2025
33
title: ACME Basics
44
html_title: ACME Protocol Basics for step-ca Users
55
description: Learn ACME protocol fundamentals for step-ca. Implement automated certificate management using industry-standard protocols.
@@ -26,8 +26,8 @@ ACME is a modern, standardized protocol for automatic validation and issuance of
2626

2727
## Requirements
2828

29-
- **Open source -** This tutorial assumes you have initialized and started up a `step-ca` server (see [Getting Started](./getting-started.mdx)).
30-
- **[Smallstep Certificate Manager](https://smallstep.com/certificate-manager) -** follow the instructions provided in the Certificate Manager [ACME documentation](../certificate-manager/acme/README.mdx).
29+
This tutorial assumes you have initialized and started up a `step-ca` server (see [Getting Started](./getting-started.mdx)),
30+
[Smallstep Certificate Manager](https://smallstep.com/certificate-manager), or other ACME server.
3131

3232
## Overview
3333

@@ -40,15 +40,12 @@ ACME is a modern, standardized protocol for automatic validation and issuance of
4040
## Why ACME?
4141

4242
With ACME, machines can get certificates from a CA without any human interaction involved.
43+
It is used by public Web PKI CAs (eg. Let's Encrypt) and by private, internal CAs.
4344

44-
For example, you can:
45-
46-
- Use ACME in production to issue X.509 certificates to internal workloads, proxies, queues, databases, etc. so you can use mutual TLS for authentication and encryption.
47-
- Simulate Let’s Encrypt’s certificate authority in development and
48-
pre-production scenarios where connecting to [Let’s Encrypt’s staging
49-
server][le-staging] is problematic.
50-
51-
[le-staging]: https://letsencrypt.org/docs/staging-environment/
45+
ACME allows the CA to prove that a client controls a set of resources for the purpose of certificate issuance.
46+
ACME doesn't restrict _who_ can make requests of the CA.
47+
There is an extension to ACME called External Account Binding (EAB) which adds keys for ACME accounts,
48+
and this feature is available in Smallstep's commercial CA software.
5249

5350
## A Typical ACME Flow
5451

tutorials/connect-jamf-pro-to-smallstep.mdx

Lines changed: 25 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
updated_at: September 19, 2025
2+
updated_at: October 02, 2025
33
title: Connect Jamf Pro to Smallstep
44
html_title: Integrate Jamf Pro with Smallstep Tutorial
55
description: Integrate Jamf Pro with Smallstep for Apple device security. Complete guide for enforcing device trust in macOS and iOS environments.
@@ -44,20 +44,17 @@ This API client will allow Smallstep to read your Jamf device inventory and mana
4444
1. In Jamf Pro, choose ⚙️ **Settings**
4545
2. Under the **System** tab, choose **API Roles and Clients**
4646
3. Add an **API Role**
47-
48-
Display name: Smallstep
49-
50-
For Privileges, choose:
51-
52-
- Read Mobile Devices
53-
- Read Computers
47+
- Display name: Smallstep
48+
- Privileges:
49+
- Read Mobile Devices
50+
- Read Computers
5451
4. Next, in the **API Clients** tab, add a **Client**
5552
- Display name: Smallstep
5653
- API Roles: Smallstep
5754
- Enabled: Yes, choose Enable
58-
- Choose **Save**
59-
5. Choose **Generate client secret**
60-
6. Temporarily save the **Client ID** and **Client Secret**. You’ll use them in the next step.
55+
5. Choose **Save**
56+
6. Choose **Generate client secret**
57+
7. Temporarily save the **Client ID** and **Client Secret**. You’ll use them in the next step.
6158

6259
## Connect Jamf Pro to Smallstep
6360

@@ -76,14 +73,14 @@ For compatibility reasons, Smallstep may use ACME or SCEP for certificate enroll
7673
1. In Jamf Pro, choose ⚙️ **Settings**
7774
2. Under the **Global** tab, Choose **Webhooks**
7875
3. Add a new Webhook
79-
1. Display name: Smallstep
80-
2. Webhook URL: (details from step #2)
81-
3. Authentication Type: Basic
82-
1. Basic Authentication Username: (details from step #2)
83-
2. Basic Authentication Password: (details from step #2)
84-
3. Basic Authentication Verify Password: (details from step #2)
85-
4. Content Type: JSON
86-
5. Webhook Event: SCEPChallenge
76+
- Display name: Smallstep
77+
- Webhook URL: (details from step #2)
78+
- Authentication Type: Basic
79+
- Basic Authentication Username: (details from step #2)
80+
- Basic Authentication Password: (details from step #2)
81+
- Basic Authentication Verify Password: (details from step #2)
82+
- Content Type: JSON
83+
- Webhook Event: SCEPChallenge
8784
4. Choose **Save**
8885

8986
Your Smallstep team is now linked to Jamf Pro. Smallstep will do a partial sync of your device inventory from Jamf every hour, and a full sync every 8 hours.
@@ -103,8 +100,8 @@ In this step, you’ll upload the Smallstep agent package to Jamf Pro’s softwa
103100
2. In Jamf Pro, choose ⚙️ **Settings**
104101
3. Under the **Computer Management** tab, Choose **Packages**
105102
4. Add a new Package
106-
1. Display name: Smallstep Agent
107-
2. Filename: (upload from step #1)
103+
- Display name: Smallstep Agent
104+
- Filename: (upload from step #1)
108105
5. Choose **Save**
109106

110107
#### Create an Agent Bootstrap Script
@@ -113,9 +110,9 @@ This step will install a script on your client devices that bootstraps the conne
113110

114111
1. In Jamf Pro, choose ⚙️ **Settings**
115112
2. Under the **Computer Management** tab, Choose **Scripts**
116-
3. Add a new Script
117-
1. In the **General tab**, for **Display Name**: `Smallstep Agent Install`
118-
2. In the Script tab:
113+
3. Add a new Script:
114+
- In the **General tab**, for **Display Name**: `Smallstep Agent Install`
115+
- In the Script tab:
119116
- Mode: `Shell/Bash`
120117
- Content:
121118

@@ -225,14 +222,15 @@ The devices that you scoped will receive a certificate and have the agent instal
225222

226223
By default, Jamf will attempt to re-deploy the configured package profile to every scoped Computer on a cadence. Each Computer will attempt to install the distributed package, regardless of any existing version already installed. The Smallstep Agent pkg has built-in logic to skip any unnecessary install logic when the currently installed version matches the version being distributed. However, configuring Jamf to prevent identical package re-deploys can reduce wasted cycles across your entire fleet of managed computers as well as reduce resource usage of your Jamf tenant.
227224

228-
1. In Jamf Pro Configure an Extension Attribute that reports the currently installed version on each computers
225+
1. In Jamf Pro, Configure an Extension Attribute that reports the currently installed version on each computers
229226
1. In Jamf Pro under Settings → Computer Management → Extension Attributes → New
230227
- Display Name: SmallstepAgent Version
231228
- Data type: String
232229
- Inventory display: General
233230
- Input Type: Script
234231
- Mode: Shell/Bash
235-
-
232+
- Content:
233+
236234
```shell
237235
#!/bin/bash
238236

@@ -251,7 +249,7 @@ By default, Jamf will attempt to re-deploy the configured package profile to eve
251249
fi
252250
```
253251
- Save
254-
2. In Jamf Pro Create a new Smart Computer Group
252+
2. In Jamf Pro, Create a new Smart Computer Group
255253
1. In Jamf Pro, go to Computers → Smart Computer Groups → New
256254
2. On the Computer Group tab
257255
- Display Name: Needs SmallstepAgent Version

tutorials/docker-tls-certificate-authority.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
updated_at: September 18, 2025
2+
updated_at: October 02, 2025
33
title: Run a private online TLS certificate authority in a Docker container
44
html_title: Run step-ca in Docker Container Tutorial
55
description: Run step-ca certificate authority in Docker. Containerized PKI deployment for modern infrastructure environments with easy scalability options.
@@ -47,7 +47,7 @@ The following environment variables are available for CA configuration:
4747
- `DOCKER_STEPCA_INIT_NAME` (**required**) the name of your CA—this will be the issuer of your CA certificates
4848
- `DOCKER_STEPCA_INIT_DNS_NAMES` (**required**) the hostname(s) or IPs that the CA will accept requests on
4949
- `DOCKER_STEPCA_INIT_PROVISIONER_NAME` a label for the initial admin (JWK) provisioner. Default: "admin"
50-
- `DOCKER_STEPCA_INIT_SSH` set this to a non-empty value to create an SSH CA
50+
- `DOCKER_STEPCA_INIT_SSH` set this to `true` to create an SSH CA
5151
- `DOCKER_STEPCA_INIT_PASSWORD` specify a password for the encrypted CA keys and the default CA provisioner. A password is generated by default. Note: In a production environment, a more secure option for specifying a password is to use the manual installation process, below.
5252

5353
Once `step-ca` is running, the CA's URL and SHA256 fingerprint are all clients need to bootstrap with the CA.

tutorials/intermediate-ca-new-ca.mdx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Use step-ca with your existing CA
33
html_title: Deploy Intermediate CA with Existing Root
44
description: Use step-ca as intermediate CA with existing infrastructure. Modernize PKI while preserving root certificate investments and trust chains.
5-
updated_at: September 17, 2025
5+
updated_at: October 02, 2025
66
---
77

88
Need to extend or migrate from an existing CA to a Smallstep CA?
@@ -24,7 +24,7 @@ while still issuing certificates trusted by your existing clients.
2424
</Alert>
2525

2626
This tutorial covers three ways of bootstrapping a Smallstep CA
27-
using an existing PKI.
27+
that can run in parallel with your existing PKI.
2828

2929
## About this tutorial
3030

@@ -35,13 +35,13 @@ using an existing PKI.
3535

3636
<Alert severity="info">
3737
<div>
38-
If you run into any issues please let us know <a href="https://github.com/smallstep/certificates/discussions">in GitHub Discussions</a>.
38+
If you run into any issues please let us know <a href="https://github.com/smallstep/certificates/discussions">in GitHub Discussions</a> or <a href="https://u.step.sm/discord">Discord</a>.
3939
</div>
4040
</Alert>
4141

4242
## Requirements
4343

44-
This tutorial assumes you have initialized and started up a `step-ca` instance using the steps in [Getting Started](../step-ca/getting-started.mdx).
44+
This tutorial assumes you have initialized and started a `step-ca` instance using the steps in [Getting Started](../step-ca/getting-started.mdx).
4545
You'll also need the ability to sign a new intermediate CA
4646
using your existing CA.
4747
You can use your existing root
@@ -158,6 +158,8 @@ To generate those artifacts run:
158158
step certificate create "Intermediate CA Name" intermediate.csr intermediate_ca_key --csr
159159
```
160160

161+
In this example, we're generating the Intermediate CA key on the filesystem. For stronger key protection, use our [cryptographic protection](../step-ca/cryptographic-protection.mdx) features to generate the signing key inside a Key Management System (KMS) instead.
162+
161163
### 3. Transfer the CSR file and get it signed.
162164

163165
Now, you will need to transfer the CSR (intermediate.csr) file to your existing root CA and get it signed. Below we have examples of

0 commit comments

Comments
 (0)