Skills2026年4月13日·1 分钟阅读

step-ca — Private Certificate Authority for DevOps

step-ca is an open-source online Certificate Authority for secure automated certificate management. It provides ACME, SSH certificates, and mTLS for internal infrastructure — enabling TLS everywhere and SSO for SSH in your organization.

Agent 就绪

Agent 可直接安装

这个资产可安装;Agent 先选择当前运行时、检查安装计划,再运行匹配命令。

Native · 98/100策略:允许
Agent 入口
任意 MCP/CLI Agent
类型
Skill
安装
Single
信任
信任等级:Established
入口
step-1.md
直接安装命令
npx -y tokrepo@latest install 87ef82d8-372b-11f1-9bc6-00163e2b0d79 --target codex

先 dry-run 确认安装计划,再运行此命令。

TL;DR
step-ca automates TLS and SSH certificate management for internal services using the ACME protocol, like Let's Encrypt for your private network.
§01

What it is

step-ca is a private online Certificate Authority created by Smallstep that brings the automation of the public web PKI to internal infrastructure. It issues X.509 certificates for TLS and SSH certificates for authentication, supporting the ACME protocol that powers Let's Encrypt. This means internal services can get certificates automatically using the same tools (certbot, ACME clients) used on the public internet.

step-ca targets DevOps engineers and platform teams who need encrypted internal traffic, mutual TLS between microservices, and SSH certificate-based authentication without exposing services to public certificate authorities.

§02

How it saves time or tokens

step-ca automates certificate issuance and renewal that would otherwise require manual generation and distribution. The ACME protocol handles certificate lifecycle automatically, eliminating expired certificate incidents. SSH certificates replace SSH key management entirely -- no more distributing authorized_keys files across servers.

§03

How to use

  1. Install the step CLI and step-ca: brew install step step-ca.
  2. Initialize a new CA: step ca init --name 'My CA' --dns ca.example.com --address :443.
  3. Start the CA server: step-ca $(step path)/config/ca.json.
§04

Example

# Initialize a new private CA
step ca init --name 'Internal CA' --dns ca.internal --address :8443

# Start the CA
step-ca $(step path)/config/ca.json

# Get a certificate for a service
step ca certificate myapp.internal myapp.crt myapp.key

# Renew automatically with a daemon
step ca renew --daemon myapp.crt myapp.key

# Issue an SSH certificate
step ssh certificate user@host ssh_key
§05

Related on TokRepo

§06

Common pitfalls

  • The root CA key must be kept secure; compromise of this key invalidates the entire certificate chain. Use hardware security modules (HSMs) in production.
  • Clients need the CA root certificate installed in their trust store; without it, TLS connections to internal services will fail with certificate verification errors.
  • ACME challenges for internal services require DNS or TLS-ALPN challenges, not HTTP-01, since internal services are not publicly accessible.

常见问题

How does step-ca differ from Let's Encrypt?+

Let's Encrypt is a public CA for internet-facing services. step-ca is a private CA for internal infrastructure. step-ca uses the same ACME protocol but issues certificates for internal domains that public CAs cannot validate.

Can step-ca issue SSH certificates?+

Yes. step-ca issues SSH user and host certificates, replacing traditional SSH key management. SSH certificates expire automatically and can be tied to identity providers for single sign-on.

Does step-ca support Kubernetes?+

Yes. step-ca integrates with cert-manager for Kubernetes, automatically issuing and renewing TLS certificates for pods and ingress resources.

What backends does step-ca support for key storage?+

step-ca supports file-based key storage, Google Cloud KMS, AWS KMS, Azure Key Vault, YubiKey, and PKCS#11 hardware security modules.

Is step-ca free?+

The open-source step-ca is free under the Apache-2.0 license. Smallstep also offers a commercial product with additional features like a hosted CA and admin dashboard.

引用来源 (3)

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产