专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

keyfactor/ejbca-ce Docker 镜像 - 轩辕镜像

ejbca-ce
keyfactor/ejbca-ce
EJBCA®是开源的公钥基础设施(PKI)和证书颁发机构(CA)软件。
52 收藏0 次下载activekeyfactor镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

EJBCA Community Edition Docker镜像文档

镜像概述和主要用途

EJBCA Community Edition(EJBCA CE)是一款开源的公钥基础设施(PKI)和证书颁发机构(CA)软件,是运行时间最长的CA软件项目之一。EJBCA平台独立,可满足从证书注册、证书管理到证书验证的全流程需求。

EJBCA基于Java开发,可在OpenJDK等JVM上运行,支持Linux、Windows等多数平台。EJBCA分为两个版本:

  • EJBCA Community(EJBCA CE):免费开源,通过OSI认证的开源软件
  • EJBCA Enterprise(EJBCA EE):商业版本,通过通用标准(Common Criteria)认证

最低系统要求:

  • 至少2个CPU核心
  • 至少1GB内存

核心功能和特性

基础PKI功能

EJBCA实例可部署用于以下一种或多种场景,支持从小型到超大型部署:

证书颁发机构(CA)
  • 为设备、人员及其他实体颁发完全可定制的X.509证书
  • 证书可用于提供安全性、身份验证、安全通信(如TLS/DTLS)或证明IoT设备的真实性
  • 支持标准化的颁发、吊销等PKI协议,实现平滑集成和高度自动化
验证机构(VA)
  • 回答证书是否有效的问题
  • 支持在线证书状态协议(OCSP)进行在线检查
  • 支持证书吊销列表(CRL),适用于间歇性联网或隔离环境
注册机构(RA)
  • 自助服务门户,可将证书管理权限部分或全部委托给组织内的授权团队成员

使用场景和适用范围

EJBCA适用于需要建立和管理PKI的各类场景,包括但不限于:

  • 企业内部PKI:为员工、服务器、网络设备颁发证书,实现身份认证和加密通信
  • IoT设备认证:为物联网设备颁发唯一证书,确保设备身份和数据传输安全
  • SSL/TLS证书管理:为网站、应用服务颁发和管理TLS证书,保障HTTPS通信
  • 文档签名:提供数字签名证书,用于文档、代码等的真实性和完整性验证
  • 大型分布式系统:支持集群部署,适用于超大规模PKI基础设施需求

使用方法和配置说明

获取镜像

通过Docker命令直接拉取最新EJBCA Community镜像:

bash
sudo docker pull keyfactor/ejbca-ce
快速启动
临时测试实例(无认证访问)

启动临时测试实例,允许无认证网络访问管理系统:

bash
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname -e TLS_SETUP_ENABLED="simple" keyfactor/ejbca-ce

说明:

  • --rm:容器停止后自动删除
  • -p 80:8080:映射HTTP端口(8080容器内→80主机)
  • -p 443:8443:映射TLS端口(8443容器内→443主机)
  • -h mycahostname:设置容器主机名
  • TLS_SETUP_ENABLED="simple":生成管理CA和服务器TLS证书,但允许任何人通过HTTPS管理系统(仅用于测试,生产环境禁用)

容器完全启动后,访问 [***] 进入管理界面。

经典工作流(客户端证书认证访问)

启动需要客户端证书认证的实例:

bash
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname -e TLS_SETUP_ENABLED="true" keyfactor/ejbca-ce

说明:

  • TLS_SETUP_ENABLED="true":首次启动时生成管理CA,为服务器和初始管理员生成客户端TLS证书
  • 容器启动后,控制台会输出管理员证书的注册信息,需将证书导入浏览器
  • 重启浏览器(或使用隐私窗口)访问 [***],通过客户端证书认证
环境变量配置

容器行为可通过环境变量自定义,以下为关键配置:

安全参数

生产环境必须自定义以下安全相关密码:

环境变量描述
PASSWORD_ENCRYPTION_KEY用于加密EJBCA中的密码(如终端实体明文密码、加密令牌密码等),首次安装前设置,不可更改
CA_KEYSTOREPASS保护数据库中软件加密令牌(非HSM)的默认密码,建议为加密令牌手动设置密码
EJBCA_CLI_DEFAULTPASSWORD本地命令行界面(CLI)的默认用户('ejbca')密码

设置示例:

bash
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname \
  -e PASSWORD_ENCRYPTION_KEY="myrandomkey" \
  -e CA_KEYSTOREPASS="anotherrandomkey" \
  -e EJBCA_CLI_DEFAULTPASSWORD="randompassphrase" \
  keyfactor/ejbca-ce
其他重要环境变量

通过 docker inspect keyfactor/ejbca-ce:latest 可查看所有环境变量及默认值,常用变量包括:

环境变量描述默认值
LOG_LEVEL_APP应用日志级别INFO
TLS_SETUP_ENABLEDTLS配置模式:true(生成CA和证书)、simple(无认证访问)、later(代理TLS)、false(禁用TLS)true(首次启动)
DATABASE_JDBC_URL数据库JDBC连接URLjdbc:h2:/mnt/persistent/ejbcadb;DB_CLOSE_DELAY=-1
DATABASE_USER数据库用户名(外部数据库时必填)-
DATABASE_PASSWORD数据库密码(外部数据库时必填)-
外部数据库配置

EJBCA支持外部数据库实现集群部署,默认使用内置H2数据库(仅适合测试),生产环境建议使用MariaDB/MySQL或PostgreSQL。

数据库连接URL格式
数据库类型JDBC URL示例
H2(持久化)jdbc:h2:/mnt/persistent/ejbcadb;DB_CLOSE_DELAY=-1
H2(内存,非持久化)jdbc:h2:mem:ejbcadb;DB_CLOSE_DELAY=-1
MariaDB/MySQLjdbc:mariadb://database:3306/ejbca?characterEncoding=UTF-8
PostgreSQLjdbc:postgresql://database/ejbca
使用外部数据库示例(MariaDB)
bash
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname \
  -e TLS_SETUP_ENABLED="true" \
  -e DATABASE_JDBC_URL="jdbc:mariadb://172.26.0.1:3306/ejbcatest?characterEncoding=UTF-8" \
  -e DATABASE_USER="ejbca" \
  -e DATABASE_PASSWORD="password" \
  keyfactor/ejbca-ce

注意:首次启动时会自动创建数据库表结构,后续启动将复用现有数据。

代理后端配置

适用于在反向代理(如Nginx、Apache Httpd)后部署,需禁用容器内部TLS配置,通过代理处理TLS。

关键配置变量
环境变量描述
PROXY_AJP_BINDAJP代理端口(8009)绑定的IP地址
PROXY_HTTP_BINDHTTP后端端口(8081和8082)绑定的IP地址,8082接受SSL_CLIENT_CERT头
TLS_SETUP_ENABLED需设置为later(代理TLS)或false(禁用TLS),不可与true同时使用

说明:配置代理后会禁用管理CA创建,需手动配置EJBCA。

邮件通知配置

EJBCA通过JavaMail服务发送邮件通知,可通过环境变量配置SMTP参数:

环境变量描述默认值
SMTP_DESTINATIONSMTP服务器地址localhost
SMTP_DESTINATION_PORTSMTP端口25
SMTP_TLS_ENABLED启用TLStrue
SMTP_SSL_ENABLED启用SSLtrue
SMTP_USERNAMESMTP认证用户名-
SMTP_PASSWORDSMTP认证密码-
SMTP_FROM发件人***-

Gmail SMTP示例:

bash
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname \
  -e TLS_SETUP_ENABLED="simple" \
  -e SMTP_DESTINATION="smtp.gmail.com" \
  -e SMTP_DESTINATION_PORT="587" \
  -e SMTP_USERNAME="***" \
  -e SMTP_PASSWORD="userssecretpassword" \
  -e SMTP_FROM="***" \
  -e SMTP_SSL_ENABLED="false" \
  keyfactor/ejbca-ce
重要目录说明

以下目录用于持久化数据、配置和密钥,生产环境建议通过Docker卷挂载:

目录路径用途
/mnt/persistentH2数据库持久化目录(默认),需通过卷挂载以保留数据
/mnt/external/secrets/tls/casDER编码的CA证书目录,文件名作为CA名称(如ManagementCA.crt)
/mnt/external/secrets/tls/ks服务器密钥库目录,需包含server.jks、server.storepasswd等文件
/mnt/external/secrets/tls/ts信任库目录,需包含truststore.jks、truststore.storepasswd文件
/opt/keyfactor/ejbca/conf应用配置文件目录,可覆盖配置属性
/opt/keyfactor/bin启动脚本和CLI命令(如ejbca.sh、ejbcaClientToolBox.sh)

Docker部署示例

1. 使用外部H2数据库卷持久化数据
bash
# 创建卷
docker volume create ejbca-persistent-data

# 启动容器,挂载卷
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname \
  -v ejbca-persistent-data:/mnt/persistent \
  keyfactor/ejbca-ce
2. 自定义HTTPS端口
bash
# 映射主机9443端口到容器8443端口
docker run -it --rm -p 80:8080 -p 9443:8443 -h mycahostname keyfactor/ejbca-ce

修复静态链接端口:
创建web.properties文件,设置httpserver.external.privhttps=9443,挂载到容器:

bash
docker run -it --rm -p 80:8080 -p 9443:8443 -h mycahostname \
  -v $PWD/config/web.properties:/opt/primekey/ejbca/conf/web.properties \
  keyfactor/ejbca-ce
3. 挂载外部插件
bash
# 创建插件目录并放入JAR文件
mkdir -p ejbca-plugins && cp my-plugin.jar ejbca-plugins/

# 启动容器,挂载插件目录
docker run -it --rm -p 80:8080 -p 443:8443 -h mycahostname \
  -v $PWD/ejbca-plugins:/opt/primekey/ejbca/plugins \
  keyfactor/ejbca-ce

社区支持与资源

社区支持
  • 社区贡献:开源项目,欢迎贡献代码和文档
  • 支持方式:无SLA,基于社区最佳努力支持
  • 参与渠道:EJBCA社区指南
商业支持

EJBCA Enterprise版本提供商业支持,详情见EJBCA Enterprise。

教程资源
  • ***教程:KeyfactorCommunity频道,包括:
    • EJBCA Docker容器快速启动
    • Kubernetes部署EJBCA容器
    • 使用Helm部署EJBCA
  • 文档:EJBCA官方文档

许可证

EJBCA Community版基于LGPL许可证开源。

查看更多 ejbca-ce 相关镜像 →
bitnami/ejbca logo
bitnami/ejbca
by VMware
认证
Bitnami Secure Image for ejbca是预配置且安全加固的企业级Java证书颁发机构(ejbca)镜像,用于高效管理数字证书的颁发、吊销与生命周期。
2100K+ pulls
上次更新:4 个月前
bitnamicharts/ejbca logo
bitnamicharts/ejbca
by VMware
认证
Bitnami提供的EJBCA Helm chart,用于在Kubernetes集群上部署企业级PKI证书颁发机构(EJBCA),包含MariaDB数据库支持,适用于证书管理与PKI基础设施搭建。
100K+ pulls
上次更新:4 个月前
keyfactor/ejbca-cert-manager-issuer logo
keyfactor/ejbca-cert-manager-issuer
by Keyfactor
认证
Keyfactor EJBCA提供的cert-manager外部签发者,用于使cert-manager通过EJBCA签发证书。
110K+ pulls
上次更新:3 个月前
3keycompany/czertainly-ejbca-ng-connector logo
3keycompany/czertainly-ejbca-ng-connector
by 3keycompany
CZERTAINLY EJBCA NG连接器,用于EJBCA的证书管理与发现,实现v2客户端操作接口,支持SOAP Web Services通信,提供证书签发、续期、吊销及发现功能。
5M+ pulls
上次更新:8 个月前

轩辕镜像配置手册

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

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

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

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

轩辕镜像支持哪些镜像仓库?

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

流量耗尽错误提示

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

410 错误问题

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

manifest unknown 错误

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

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

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

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
keyfactor/ejbca-ce
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429