轩辕镜像
轩辕镜像专业版
个人中心搜索镜像
交易
充值流量我的订单
工具
工单支持镜像收录Run 助手IP 归属地密码生成Npm 源Pip 源
帮助
常见问题我要吐槽
其他
关于我们网站地图

官方QQ群: 13763429

轩辕镜像
镜像详情
smallstep/step-ca
官方博客使用教程热门镜像工单支持
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。
轩辕镜像 - 国内开发者首选的专业 Docker 镜像下载加速服务平台 - 官方QQ群:13763429 👈点击免费获得技术支持。
本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

step-ca Docker 镜像下载 - 轩辕镜像

step-ca 镜像详细信息和使用指南

step-ca 镜像标签列表和版本信息

step-ca 镜像拉取命令和加速下载

step-ca 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

step-ca
smallstep/step-ca

step-ca 镜像详细信息

step-ca 镜像标签列表

step-ca 镜像使用说明

step-ca 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

🛡️ 一个在线证书颁发机构(CA)和ACME服务器,用于安全自动化的X.509和SSH证书管理。
71 收藏0 次下载activesmallstep镜像
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源
中文简介版本下载
🚀轩辕镜像专业版更稳定💎一键安装 Docker 配置镜像源

step-ca 镜像详细说明

step-ca 使用指南

step-ca 配置说明

step-ca 官方文档

step-ca

step-ca 是一个私有在线证书颁发机构(CA),用于安全、自动化的X.509和SSH证书管理。

  • 为所有工作负载颁发TLS和HTTPS证书:虚拟机、容器、API、移动客户端、数据库连接、打印机、用户、WiFi网络、烤面包机等。
  • 可与任何ACME v2客户端配合使用——certbot、acme.sh、Traefik、Caddy、Kubernetes cert-manager等。
  • 为用户(通过单点登录OIDC ID令牌)或主机(通过云实例身份文档或一次性令牌)颁发SSH证书。
  • 支持PKCS#11 HSM和Yubikey PIV插槽中的硬件绑定私钥(参见step-ca-hsm镜像)。

重要链接:

  • step-ca 文档
  • 源码仓库 和此包的 Dockerfile
  • 有问题?在 GitHub Discussions 或 *** 上向我们提问。

标签

默认镜像 适用于大多数用户。
标签为 latest 和版本号,例如 0.23.0。
这是一个基于Alpine的镜像。

HSM镜像 用于存储在PKCS#11硬件安全模块(HSM)或Yubikey PIV插槽中的密钥。
标签为 hsm 和带版本的 hsm- 标签,例如 hsm-0.23.0、hsm-0.23.1 等。
此镜像中的 step-ca 二进制文件启用CGO编译。
基于Bullseye,因此可集成来自HSM供应商的 glibc 兼容PKCS#11模块。


不想运行自己的CA?
如需快速上手或作为运行自己 step-ca 服务器的替代方案,可考虑创建免费托管的smallstep证书管理器权威机构。


快速开始

要求

  • 要与 step-ca 交互,需在主机环境中安装 step 客户端。参见安装文档。

快速初始化

初始化PKI

在Docker主机上运行以下命令初始化PKI:

docker run -it -v step:/home/step \
    -p 9000:9000 \
    -e "DOCKER_STEPCA_INIT_NAME=Smallstep" \
    -e "DOCKER_STEPCA_INIT_DNS_NAMES=localhost,$(hostname -f)" \
    -e "DOCKER_STEPCA_INIT_REMOTE_MANAGEMENT=true" \
    smallstep/step-ca

👉 注意输出中的CA指纹(SHA256)、远程管理超级管理员用户名和远程管理密码。

以下环境变量可用于初始化CA配置:

  • (必填)DOCKER_STEPCA_INIT_NAME:CA名称——将作为CA证书的颁发者
  • (必填)DOCKER_STEPCA_INIT_DNS_NAMES:CA接受请求的主机名或IP
  • (推荐)DOCKER_STEPCA_INIT_REMOTE_MANAGEMENT:启用远程配置器管理
  • DOCKER_STEPCA_INIT_PROVISIONER_NAME:初始管理员(JWK)配置器的标签。默认:admin
  • DOCKER_STEPCA_INIT_SSH:设为true以启用SSH证书支持
  • DOCKER_STEPCA_INIT_ACME:为CA创建初始ACME配置器
  • DOCKER_STEPCA_INIT_PASSWORD_FILE:用于私钥和默认CA配置器的密码文件位置。适用于指向容器中/run/secrets内的Docker密钥。若同时设置DOCKER_STEPCA_INIT_PASSWORD和DOCKER_STEPCA_INIT_PASSWORD_FILE,仅使用DOCKER_STEPCA_INIT_PASSWORD_FILE。
  • (不推荐)DOCKER_STEPCA_INIT_PASSWORD:通常CA密码会自动生成。使用此选项可指定加密CA密钥和默认CA配置器的密码。注意:存储在环境变量中的密码不安全。生产环境中,更安全的方式是使用下文的手动安装流程。

这些变量仅在首次运行前配置step-ca时生效。

引导step客户端

CA初始化后将开始运行,可进行连接。客户端需知道CA的URL和SHA256指纹。

在主机环境中引导step客户端并将根CA证书安装到主机信任存储:

{
  CA_FINGERPRINT=$(docker run -v step:/home/step smallstep/step-ca step certificate fingerprint certs/root_ca.crt)
  step ca bootstrap --ca-url https://localhost:9000 --fingerprint $CA_FINGERPRINT --install
}

输出:

The root certificate has been saved in /Users/alice/.step/certs/root_ca.crt.
Your configuration has been saved in /Users/alice/.step/config/defaults.json.
Installing the root certificate in the system truststore...
[sudo] password for alice: ....
done.

本地step CLI现已配置为使用容器实例的step-ca,且根证书受主机环境信任。

运行健康检查:

curl https://localhost:9000/health

输出:

{"status":"ok"}

CA已准备就绪。

手动安装

已在Linux的Bash中测试。

1. 拉取Docker镜像

获取最新版本的step-ca:

docker pull smallstep/step-ca

2. 启动PKI引导容器

Docker卷step将存储CA配置、密钥和数据库:

docker run -it -v step:/home/step smallstep/step-ca step ca init --remote-management

init命令将引导配置流程。示例输出:

✔ What would you like to name your new PKI? (e.g. Smallstep): Smallstep
✔ What DNS names or IP addresses would you like to add to your new CA? (e.g. ca.smallstep.com[,1.1.1.1,etc.]): localhost
✔ What address will your new CA listen at? (e.g. :443): :9000
✔ What would you like to name the first provisioner for your new CA? (e.g. ***): ***
✔ What do you want your password to be? [leave empty and we'll generate one]:

Generating root certificate... done!
Generating intermediate certificate... done!

✔ Root certificate: /home/step/certs/root_ca.crt
✔ Root private key: /home/step/secrets/root_ca_key
✔ Root fingerprint: fa08cceda8501b1d93d275cfc614a5af2a37c6c72e674192b4598808c5bae91e
✔ Intermediate certificate: /home/step/certs/intermediate_ca.crt
✔ Intermediate private key: /home/step/secrets/intermediate_ca_key
✔ Database folder: /home/step/db
✔ Default configuration: /home/step/config/defaults.json
✔ Certificate Authority configuration: /home/step/config/ca.json
✔ Admin provisioner: *** (JWK)
✔ Super admin subject: step

Your PKI is ready to go. To generate certificates for individual services see 'step help ca'.

保存根指纹值!客户端引导需使用。

3. 将PKI密码存放在安全位置

镜像期望中间CA私钥密码存放在/home/step/secrets/password。再次启动容器shell并写入文件:

docker run -it -v step:/home/step smallstep/step-ca sh

在容器内,将密码写入指定位置:

echo -n "<your password here>" > /home/step/secrets/password

CA已配置完成,可启动。

4. 启动step-ca

CA在容器内的9000端口运行HTTPS API。本地暴露该端口并启动:

docker run -d -p 9000:9000 -v step:/home/step smallstep/step-ca

在主机环境中引导step客户端配置:

{
CA_FINGERPRINT=$(docker run  -v step:/home/step smallstep/step-ca step certificate fingerprint /home/step/certs/root_ca.crt)
step ca bootstrap --ca-url https://localhost:9000 --fingerprint $CA_FINGERPRINT --install
}

输出:

The root certificate has been saved in /Users/alice/.step/certs/root_ca.crt.
Your configuration has been saved in /Users/alice/.step/config/defaults.json.
Installing the root certificate in the system truststore...
[sudo] password for alice: ...
done.

本地step CLI现已配置为使用容器实例的step-ca,新根证书受主机环境信任。

运行健康检查:

curl https://localhost:9000/health

输出:

{"status":"ok"}

后续步骤:

  • 参见基本CA操作指南。
  • 参见配置指南了解如何调整step-ca以适应基础设施。
  • 需为其他容器获取证书?阅读文章Docker中的TLS证书自动化管理。
  • 或在下文设置开发环境。

代码签名

step-ca使用sigstore/cosign进行容器签名和验证。验证示例:

cosign verify smallstep/step-ca:0.23.1 \
--certificate-identity-regexp "[***]\.com/smallstep/workflows/.*" \
--certificate-oidc-issuer [***]

开发环境设置

需求:

  • Python 2.7.x解释器(用于启动独立Web服务器,可选)

在安装Docker的主机上运行以下步骤。

引导本地环境后,可运行配置TLS和mTLS的Web服务。首先获取localhost证书:

step ca certificate localhost localhost.crt localhost.key

输出:

✔ Key ID: aTPGWP0qbuQdflR5VxtNouDIOXyNMH1H9KAZKP-UcHo (admin)
✔ Please enter the password to decrypt the provisioner key:
✔ CA: <https://localhost:9000/1.0/sign>
✔ Certificate: localhost.crt
✔ Private Key: localhost.key

保存根CA证书副本:

step ca root root_ca.crt

输出:

The root certificate has been saved in root_ca.crt.

启动HTTPS安全Web服务器:

{
cat <<EOF > server.py
import BaseHTTPServer, ssl

class HelloHandler(BaseHTTPServer.BaseHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200);
        self.send_header('content-type', 'text/html; charset=utf-8');
        self.end_headers()
        self.wfile.write(b'\\n\\xf0\\x9f\\x91\\x8b Hello! Welcome to TLS \\xf0\\x9f\\x94\\x92\\xe2\\x9c\\x85\\n\\n')

httpd = BaseHTTPServer.HTTPServer(('', 8443), HelloHandler)
httpd.socket = ssl.wrap_socket(httpd.socket,
                   server_side=True,
                   keyfile="localhost.key",
                   certfile="localhost.crt",
                   ca_certs="root_ca.crt")
httpd.serve_forever()
EOF

python server.py
}

打开另一个终端查看运行的服务器:

$ curl https://localhost:8443
👋 Hello! Welcome to TLS 🔒✅

或在浏览器中访问 https://localhost:8443。

故障排除

树莓派Badger数据库错误

在树莓派上运行step-ca时,容器日志可能出现以下错误:

step-ca  | badger 2021/05/08 20:13:12 INFO: All 0 tables opened in 0s
step-ca  | Error opening database of Type badger with source /home/step/db: error opening Badger database: Mmap value log file. Path=/home/step/db/000000.vlog. Error=cannot allocate memory

修复方法:编辑config/ca.json中的db配置块:

docker run -v step:/home/step -it smallstep/step-ca vi /home/step/config/ca.json

将badgerFileLoadingMode的值从""改为"FileIO":

    "db": {
          "type": "badger",
          "dataSource": "/home/step/db",
          "badgerFileLoadingMode": "FileIO"
    },

保存并重启容器。

有问题?在 GitHub Discussions 或 *** 上向我们提问。

查看更多 step-ca 相关镜像 →

常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像免费版与专业版有分别支持哪些镜像?

免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

轩辕镜像下载加速使用手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

🔐

登录方式进行 Docker 镜像下载加速教程

通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤

🐧

Linux Docker 镜像下载加速教程

在 Linux 系统上配置轩辕镜像源,支持主流发行版

🖥️

Windows/Mac Docker 镜像下载加速教程

在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统

📦

Docker Compose 镜像下载加速教程

在 Docker Compose 中使用轩辕镜像加速,支持容器编排

📋

K8s containerd 镜像下载加速教程

在 k8s 中配置 containerd 使用轩辕镜像加速

🔧

宝塔面板 Docker 镜像下载加速教程

在宝塔面板中配置轩辕镜像加速,提升服务器管理效率

💾

群晖 NAS Docker 镜像下载加速教程

在 Synology 群晖NAS系统中配置轩辕镜像加速

🐂

飞牛fnOS Docker 镜像下载加速教程

在飞牛fnOS系统中配置轩辕镜像加速

📱

极空间 NAS Docker 镜像下载加速教程

在极空间NAS中配置轩辕镜像加速

⚡

爱快路由 ikuai Docker 镜像下载加速教程

在爱快ikuai系统中配置轩辕镜像加速

🔗

绿联 NAS Docker 镜像下载加速教程

在绿联NAS系统中配置轩辕镜像加速

🌐

威联通 NAS Docker 镜像下载加速教程

在威联通NAS系统中配置轩辕镜像加速

📦

Podman Docker 镜像下载加速教程

在 Podman 中配置轩辕镜像加速,支持多系统

📚

ghcr、Quay、nvcr、k8s、gcr 等仓库下载镜像加速教程

配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤

🚀

专属域名方式进行 Docker 镜像下载加速教程

无需登录即可使用轩辕镜像加速服务,更加便捷高效

需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429

商务:17300950906
|©2024-2025 源码跳动
商务合作电话:17300950906|Copyright © 2024-2025 杭州源码跳动科技有限公司. All rights reserved.