EJBCA简介

EJBCA(Enterprise Java Bean Certificate Authority)是一个全功能的CA系统软件,它基于J2EE技术,并提供了一个强大的、高性能并基于组件的CA。EJBCA兼具灵活性和平台独立性,能够独立使用,也能和任何J2EE应用程序集成。

EJBCA是一个很有价值的开源系统,对于目前国内PKI技术和产品有借鉴的意义。EJBCA完全采用JAVA编写,能够在任何采用J2EE服务器的平台上运行。开发和测试是在Linux和Windows2000上进行的。

软件下载:http://ejbca.sourceforge.net/download.html

特点:

_ LGPL开源许可

_ 建立在J2EE规范之上

_ 灵活的、基于组件的体系结构

_ 多级CA

_ 多个CA和多级CA,在一个EJBCA实例中建立一个或者多个完整的基础设施

_ 单独运行,或者在任何J2EE应用中集成它

_ 简单的安装和配置

_ 强大的基于Web的管理界面,并采用了高强度的鉴别算法

_ 支持基于命令行的管理,并支持脚本等功能

_ 支持个人证书申请或者证书的批量生产

_ 服务器和客户端证书能够采用PKCS12, JKS或者PEM格式导出

_ 支持采用Netscape, Mozilla, IE等浏览器直接进行证书申请

_ 支持采用开放API和工具通过其它应用程序申请证书

_ 由RA添加的新用户可以通过Email进行提醒

_ 对于新用户验证可以采用随机或者手工的方式生成密码

_ 支持硬件模块,来集成硬件签发系统(例如智能卡)

_ 支持SCEP

_  支持用特定用户权限和用户组的方式来进行多极化管理

_ 对不同类型和内容的证书可以进行证书配置

_ 对不同类型的用户可以进行实体配置

_ 遵循X509和PKIX(RFC3280)标准

_ 支持CRL

_  完全支持OCSP,包括AIA扩展

_ CRL生成和基于URL的CRL分发点遵循RFC3280,可以在任何SQL数据库中存储证书和CRL(通过应用服务器来处理)。

_ 可选的多个发布器,以用来在LDAP中发布证书和CRL

_ 支持用来为指定用户和证书来恢复私钥的密钥恢复模块

_ 基于组件的体系结构,用来发布证书和CRL到不同的目的地

_ 基于组件的体系结构,用来在发布证书时采用多种实体授权方法

_ 容易集成到大型应用程序中,并为集成到业务流程进行了优化

EJBCA基本架构与部署:

EJBCA的基本架构,如下图:

wps_clip_image-9660[3][1]

wps_clip_image-23494[3][1]

完整的部署方案

EJBCA本身对负载均衡、高可用等有较好的支持,完整的部署方案描述了典型的完整的部署方案的部署形式,如下图:

wps_clip_image-19868[3][1]

CA与RA分离(External RA )部署模式

CA与RA分离(External RA )的部署模式,还可以退化成CA与RA部署在一起的模式,初期在安全性要求不高的情况下,基于成本及管理的方便,可以采用CA与RA一体化部署的模式。

EJBCA的安装

必备软件:

1. J2EE jdk

2. JBOSS-4.0.4.GA

3. EJBCA_3_4_1

4. apache-ant-1.8.2   ant版本必须是1.6.3以上的

5. mysql-4.1.11-win32.zip

6. mysql-connector-java-3.1.14.zip

7. jce_policy-1_4_2.zip

安装步骤:

1.准备:(1)安装jdk1.4.2_02到C:\java\jdk1.6.0_10

(2)复制ejbca到C:\ejbca_3_4_1,jboss-4.0.4.GA到C:\jboss-4.0.4.GA,apache-ant-1.8.2到C:\apache-ant-1.8.2

(3)添加环境变量: Path:C:\java\jdk1.6.0_10\bin;C:\jboss-4.0.4.GA\bin;C:\apache-ant-1.8.2\bin

Classpath: C:\java\jdk1.6.0_10\lib

JAVA_HOME: C:\java\jdk1.6.0_10

JBOSS_HOME: C:\jboss-4.0.4.GA

ANT_HOME: C:\apache-ant-1.8.2

EJBCA_HOME:C:\ejbca_3_4_1

(4)将解压后的jce_policy-1_4_2\jce中的local_policy.jar和US_export_policy.jar复制,覆盖C:\Java\jdk1.6.0_10\lib\security中的同名文件。

(5)运行jboss的run.bat。待jboss完全启动后,在浏览器中访问http://localhost:8080 ,出现jboss欢迎页面便表示jboss成功运行。然后一定要停止jboss运行。

(6)将mysql-connector-java-5.0.5解压缩。

o 将其中的mysql-connector-java-5.0.5-bin.jar拷贝到了%JBOSS_HOME%\server\default\lib目录下。

o 将%EJBCA_HOME%\conf\ejbca.properties.sample 复制保存为 %EJBCA_HOME%\conf\ejbca.properties

o 将%EJBCA_HOME%\conf\web.properties.sample, 复制保存为 %EJBCA_HOME%\conf\web.properties

o 将%EJBCA_HOME%\conf\database.properties.sample复制保存为 %EJBCA_HOME%\conf\database.properties

2.运行:

1. cmd到%EJBCA_HOME%目录下,运行ant bootstrap ,并将生成的%EJBCA_HOME%\dist\下的ejbca.ear拷贝到\%jboss-4.0.5%\server\default\deploy(高版本ejbca不需要)

2. cmd到%JBOSS_HOME%目录下,运行run.bat启动jboss控制台

3.  cmd到%EJBCA_HOME%目录下,运行ant install (安装会生成p12文件,如无此文件,检查前几步是否有漏项)

4. 停止JBOSS,%EJBCA_HOME%目录下,运行ant deploy (ejbca配置更改,EX.语言文件修改,需重新deploy)

5. cmd到%JBOSS_HOME%目录下,运行run.bat启动jboss,访问http://localhost:8080/ejbca

6. 进入adminstrator,浏览器需导入p12,默认密码是ejbca.

EJBCA创建证书

PS:由于本人做的时候并未设置中文板式,若遇到英文界面,请与下面中文教程对照。中文界面有待更新,敬候~

1.添加终端实体

wps_clip_image-17194[3][1]

添加过程中需要注意的地方:

wps_clip_image-11391[3][1]

wps_clip_image-20729[3][1]

wps_clip_image-18126[3][1]

2.查看证书信息

wps_clip_image-28019[3][1]

wps_clip_image-2886[3][1]

3.编辑终端

wps_clip_image-15865[3][1]

wps_clip_image-32015[3][1]

4.下载证书

wps_clip_image-1840[3][1]

wps_clip_image-27600[3][1] 我的版本wps_clip_image-26969[3][1]

wps_clip_image-4404[3][1]我的版本wps_clip_image-4147[3][1]

wps_clip_image-26548[3][1]

我的版本wps_clip_image-31525[3][1]

wps_clip_image-27818[3][1]

5.导入下载的证书到证书库

wps_clip_image-26497[3][1]

wps_clip_image-20469[3][1]

wps_clip_image-30242[3][1]

wps_clip_image-26032[3][1]

wps_clip_image-11955[3][1]

发表评论