1.openssl--没有web方式的页面,尽管可以生成可用的ca证书和密钥,但是使用极其不便;
2.jcssource,尽管有web方式的ca证书方法中心,可是生成的证书只能用在指定的web服务器上(我试过了,反正tomcat上不能用)。
3.EJBCA,一个完全免费的CA中心,经过两天的调试终于试通了,由于他需要EJB支持,因此服务器必须完全支持J2EE的所有标准,默认的是用JBOSS,网址是http://ejbca.sourceforge.net/
特点(readme文件翻译的):
EJBCA是一个很有价值的开源系统,对于目前国内PKI技术和产品有借鉴的意义。时值EJB3.0发布之际,本人翻译该软件的简介,希望起到让大家关注的效果。欢迎有兴趣的人士和我一起对这一软件进行进一步探究。EJBCA是一个全功能的CA系统软件,它基于J2EE技术,并提供了一个强大的、高性能并基于组件的CA。EJBCA兼具灵活性和平台独立性,能够独立使用,也能和任何J2EE应用程序集成。我们鼓励和感谢大家进行任何形式的贡献。<p>如果你想联系EJBCA团队或者想提供支持,请联系项目管理员,你能够在sourceforge项目页面上找到他。本软件是OSI认证的开源软件。OSI认证是Open Source Initiative的认证标志。
特点(readme文件翻译的):
EJBCA是一个很有价值的开源系统,对于目前国内PKI技术和产品有借鉴的意义。时值EJB3.0发布之际,本人翻译该软件的简介,希望起到让大家关注的效果。欢迎有兴趣的人士和我一起对这一软件进行进一步探究。EJBCA是一个全功能的CA系统软件,它基于J2EE技术,并提供了一个强大的、高性能并基于组件的CA。EJBCA兼具灵活性和平台独立性,能够独立使用,也能和任何J2EE应用程序集成。我们鼓励和感谢大家进行任何形式的贡献。<p>如果你想联系EJBCA团队或者想提供支持,请联系项目管理员,你能够在sourceforge项目页面上找到他。本软件是OSI认证的开源软件。OSI认证是Open Source Initiative的认证标志。
特征
LGPL开源许可;
建立在J2EE 1.3(EJB2.0)规范之上;
灵活的、基于组件的体系结构;
多级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到不同的目的地;
基于组件的体系结构,用来在发布证书时采用多种实体授权方法;
容易集成到大型应用程序中,并为集成到业务流程进行了优化。
LGPL开源许可;
建立在J2EE 1.3(EJB2.0)规范之上;
灵活的、基于组件的体系结构;
多级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完全采用Java编写,能够在任何采用J2EE服务器的平台上运行。开发和测试是在Linux和Windows2000上进行的。
您可以通过访问http://ejbca.sourceforge.net/获得关于EJBCA的详细资料。
EJBCA完全采用Java编写,能够在任何采用J2EE服务器的平台上运行。开发和测试是在Linux和Windows2000上进行的。
您可以通过访问http://ejbca.sourceforge.net/获得关于EJBCA的详细资料。
安装过程:
注意还要有一个 strong crypto 的package才行,我找了半天在附件中,把里面的文件解压到java_home/jre/lib/security,这个文件困扰了我好久,希望大家不要走我的弯路,直接成功!!
安装完成要设置JBOSS_HOME和JAVA_HOME,并且把ant/bin 加入path中,试ant可以直接执行。
现在开始配置(具体可以参考EJBCA的README文件,比较详细):
1.在命令行方式下,进入EJBCA的文件夹,例如d:\ejbca\
2.执行命令ant deploy
3.[b]成功[b]完成后启动JBOSS
4.jboss 完全启动后在还是在刚才的命令行下执行:install 命令
5.重新启动jBOSS
6.把EJBCA\P12\superadmin.p12导入浏览器。
2.执行命令ant deploy
3.[b]成功[b]完成后启动JBOSS
4.jboss 完全启动后在还是在刚才的命令行下执行:install 命令
5.重新启动jBOSS
6.把EJBCA\P12\superadmin.p12导入浏览器。
如果一切成功的话,访问:https://localhost:8443/ejbca
如果可以进入管理员(administrator)页面(要提示证书),说明安装成功!!
其他具体配置可以参考EJBCA的文件。