Register for part 2 of our Device Identity Webinar Series!

Smallstep loves open source

Smallstep maintains the leading open source certificate management toolchain for automated PKI across cloud and on-prem environments. It replaces API keys with short-lived certificates for workloads, AI agents, and MCP integrations.

See on Github
background gradient

Check out our most popular repos

STEP-CA

x.509 and SSH Certificates made easy

step-ca provides the infrastructure, automations, and workflows to securely create and operate a private certificate authority (CA). step-ca makes it easy for developers, operators and security teams to manage certificates for production workloads.

step ca init terminal output - Smallstep open source PKI initialization with localhost configuration, port 443, password provisioner setup - private X.509 certificate authority bootstrap

Quickly bootstrap internal PKI

Get public key infrastructure and certificate authority running in minutes.

Learn more

Securely issue certificates

Automate enrollment using ACME, OIDC, one-time tokens, cloud APIs and more.

Learn more

Operationalize renewals

Use systemD timers, daemon mode, cron jobs, CI/CD, and more to automate certificate management.

Learn more

Use TLS and/or SSH everywhere

Build and operate systems using secure open standards (e.g. X.509, mTLS, JWT, OAuth, OIDC).

Learn more

STEP-CLI

The command-line interface for all things Smallstep

step-cli is a command-line tool for developers, operators, and security professionals to configure and automate the Smallstep toolchain. A swiss-army knife for the day-to-day operations of open standard identity technologies.

step-cli terminal - X.509 certificate creation and inspection with okta OIDC provisioner, private key generation, TLS certificate validation - Smallstep open source CA tools

Get certificates from step-ca and Certificate Manager

Administer your CA and get certificates using step.

Learn more

Automate client certificates

Support for Mac, Windows, and Linux operating systems.

Learn more

Inspect and lint certificates

View certificate details in human readable or JSON formats.

Learn more

Manage JWTs and Tokens

Get, inspect, and validate OAuth access tokens, identity tokens, and JWTs.

Learn more
Easy to Use, Hard to Misuse

Easy to use, hard to misuse

Safe defaults everywhere encourage best practices by making the right thing easy. Insecure or subtle operations are gated with flags to prevent accidental misuse.

Help That’s Actually Helpful

Help that’s actually helpful

Run step help on any subcommand to find thorough documentation, examples, and in-depth discussion of relevant security, architectural, and operational considerations.

Friendly Workflows

Friendly workflows

Thoughtfully designed to be intuitive, get the job done, and get out of the way. With step, complex security operations become simple and obvious.

Community love 💜

Eliminate static secrets

Limitations of open source

While we think step-ca is the best open source, online Certificate Authority on the internet, every piece of software comes with limitations and tradeoffs. step-ca is designed to favor a simple deployment of a scalable two-tiered X.509 PKI, with one Root CA and one Intermediate CA that issues end-entity certificates with passive revocation.

Limitations of step-ca that grew out of our design choices:

  • It issues X.509 certificates from a single configured Intermediate CA; multiple issuing CAs are not supported
  • Its root CA is always offline; a single-tier PKI is not supported
  • Issuance policies are authority-wide
  • There are known ACME concurrency limits for high-availability CAs
  • Very limited options for active revocation (CRL, OCSP)
  • Very limited options for legacy CA protocols
  • Very limited options for device attestation
  • No integration with Certificate Transparency (CT) logs
  • No support for certificate issuance history or metrics
  • No support for ACME External Account Binding (EAB)

If your use case demands these features, you should talk to us because you may be better served by our commercial platform.

Transition from open source without friction

Designed for mission-critical DevOps use cases, Step CA Pro is a drop in replacement for the open source step-ca component. Step CA Pro provides advanced features and compliance options, and full control over the CA and root signing keys while benefiting from our cloud-based integrations and management interface.

Step CA Pro + Smallstep

Get the Data Sheet

Step CA Pro unlocks device identity to ensure that only trusted devices can access your enterprise's most sensitive resources. Our collaboration with Google and Apple on the ACME Device Attestation (ACME DA) standard provides the strongest possible guarantee of authentic device identity, preventing credential exfiltration, phishing, and impersonation attacks.

Download
background gradient
Multi-platform device dashboard - Render, Apple, Linux, RDP, Windows filters - 32,175 managed fleet

Learn more about the platform

The Smallstep platform helps mitigate numerous cybersecurity threats – from phishing to advanced hardware attacks – without impacting end-user workflows.

Learn more

Enforce device identity everywhere

Whether you’re working towards a compliance standard, closing gaps in policy enforcement, or preventing nation-state attacks, our team is here to show you how the Device Identity Platform™ can help.

Book a demo

FAQs Open Source

Traditional PKI workflows built around OpenSSL scripts, AD CS, CFSSL, manual CRLs, and static certificates were not designed for modern, automated, cloud-native environments. They fail under the demands of ephemeral workloads, Kubernetes clusters, multi-cloud services, Zero Trust architectures, and frequent certificate rotation, where identity must be continuously validated and infrastructure changes constantly.

The Smallstep open-source suite replaces these brittle approaches with a modern, automation-first system. It includes step-ca, a lightweight and automation-friendly certificate authority, and step, a uniform CLI for issuing, renewing, inspecting, and debugging certificates. The platform provides native ACME support, including ACME Device Attestation, Kubernetes-native certificate automation through step-issuer and autocert, cloud workload identity using AWS, GCP, and Azure instance identity documents, and automated mTLS without requiring a service mesh. Together, these tools deliver a scriptable, safe-by-default PKI built for modern infrastructure.

step-ca is optimized for simplicity, automation, and modern identity workflows rather than heavyweight enterprise policy engines. It is designed to be easy to deploy, automate, and integrate into contemporary infrastructure and developer-centric environments.

Its key differentiators include a single-binary architecture with no external dependencies, built-in support for ACME, OIDC and OAuth, SSH certificates, and workload identity, and configuration using JSON or YAML instead of proprietary policy languages. step-ca integrates natively with Kubernetes, cloud providers, and SSO platforms, and is built for highly automated workflows. Rather than attempting to replicate every feature of AD CS or Vault, step-ca modernizes PKI for Zero Trust and cloud identity use cases.

Yes, many organizations run step-ca in production environments. It is production-capable and suitable for real-world use, but operating it at scale requires careful setup and disciplined operations.

Advanced production requirements are addressed by Step CA Pro, which adds enterprise capabilities such as HSM-backed CA keys, online revocation through OCSP, distributed high-availability clustering, SQL-backed durability, enterprise audit logging and metrics, registration authority mode for delegated issuance, and support for compliance frameworks including FIPS binaries and SLAs. Step CA Pro provides the additional hardening needed for regulated or large-scale deployments.

OpenSSL is a general-purpose cryptographic library with a notoriously complex and error-prone interface. While powerful, it was never designed for operational certificate lifecycle management.

The step CLI is built specifically for PKI automation. It provides safe defaults, simplifies CSR generation, certificate inspection, and linting, automates renewal loops, supports ACME client operations, manages JWT and JWK workflows, issues SSH certificates, and handles mTLS development tasks seamlessly. step focuses on making PKI operationally safe and automated rather than exposing low-level cryptographic primitives.

Smallstep provides two Kubernetes-native automation layers for certificate management. step-issuer integrates with cert-manager to allow it to issue mTLS certificates directly from step-ca, while autocert operates as a sidecar or controller that issues and renews certificates automatically without requiring cert-manager.

Both approaches support ACME, ACME Device Attestation, pod and service workload identities, automatic certificate reloads, and multi-cluster deployments. This enables mTLS across microservices without the need for a service mesh.

step-ca integrates directly with AWS instance identity documents, Google Cloud instance identity tokens, and Azure managed identity tokens. Workloads present these cloud provider–signed tokens as cryptographic proof of identity during enrollment.

This approach eliminates shared secrets and manual provisioning, enables automatic rotation, and delivers strong workload identity across cloud environments. There is no need to SSH into hosts, install static keys, or distribute root credentials.

Yes, step-ca includes an SSH certificate authority mode that supports user SSH certificates, host SSH certificates, OIDC-based step ssh login, and automatic host provisioning.

This replaces traditional authorized_keys sprawl with short-lived, identity-bound SSH credentials that are easier to manage and revoke.

The open-source version of step-ca supports ACME-based renewal, automated retry loops and hooks, lightweight CRL generation, and a short-lived certificate model that relies on passive revocation through expiration.

Active online revocation via OCSP and distributed revocation infrastructure are provided by Step CA Pro, as these capabilities require high availability, durable storage, and coordinated signing. In practice, short-lived certificates greatly reduce the operational need for traditional CRLs and OCSP.

step-ca can run in virtually any environment, including Kubernetes through Helm or containers, Linux systemd services, Docker or Docker Compose setups, local developer machines, edge and IoT systems, and any virtual machine or bare-metal host.

Its minimal footprint and no-dependency architecture make it well suited for cloud, on-prem, and hybrid deployments.

Yes, step-ca supports common migration patterns that allow organizations to modernize PKI without disruptive cutovers. These include importing an existing root CA, running step-ca as an intermediate under an existing root, or deploying it as a registration authority in front of legacy certificate authorities.

Organizations also commonly replace SCEP with ACME-based enrollment and migrate static, long-lived certificates to short-lived mTLS certificates. step-ca is designed to coexist with legacy systems, enabling phased and low-risk migrations.

Yes, the open-source CA implements the ACME device-attest-01 challenge and supports TPM 2.0 attestation, Apple device attestation for supervised devices, Chrome Verified Access, and vTPM attestation for cloud virtual machines.

Step CA Pro adds packaged manufacturer trust bundles, enterprise-scale validation, and high-availability and governance controls. The open-source version provides the framework, while Pro delivers the scale and operational safeguards.

Cryptographically, the open-source CA is sufficient, but regulated environments typically require additional operational and compliance guarantees. These include HSM-backed keys, FIPS-validated cryptography, high availability, strong audit trails, policy governance, and formal SLAs.

These requirements are addressed by Step CA Pro rather than the open-source version alone. The OSS edition is well suited for development, internal PKI, and edge workloads, while Step CA Pro is designed for regulated or large-scale enterprise deployments.

Service meshes provide mTLS, but they often introduce significant operational overhead through sidecars, control planes, and complex traffic routing. This complexity can outweigh the benefits, especially outside tightly controlled Kubernetes environments.

Smallstep offers a simpler alternative by providing a general-purpose PKI layer that issues certificates for workloads and devices without requiring sidecars or mesh-specific routing rules. It works across multi-cloud and hybrid environments, and teams commonly use step-ca to simplify mTLS and secure infrastructure that service meshes cannot reach, such as virtual machines, bare metal systems, and IoT devices.