开源PKI系统EJBCA — (一)安装

ejbca是使用Java开发的一个CA服务器软件,功能比较完善,据说效率也较高。其官网为: https://www.ejbca.org

我准备了如下材料:

1、带有图形化桌面的Ubuntu 14.04 LTS
2、Oracle的JDK
3、JBoss EAP 6.4
4、EJBCA Community Edition 6.3.1.1

至于以上几个东东,我都是在官网下载的最新版本。当然这个做法可能不是很好,一般都是用稳定版,但我比较爱折腾,而且是试验环境嘛,所以下个新版本玩玩。

安装Ubuntu不用说了,装完文字界面后,使用sudo apt-get install ubuntu-desktop安装图形化桌面,然后重启。

(实际上不用图形化也行,不过用图形化界面方便进web管理而已)

修改/etc/hostname中的主机名。我将主机名修改为ca.wiser001.cn,以备后用。

在Ubuntu中建立一个用户,名为ejbca以供后用

sudo useradd -m ejbca
sudo passwd ejbca

至于安装JDK,可以参见我之前写过的一篇文章快速安装: Ubuntu上快速安装JDK

jboss可以从 wwww.jboss.org 下载。下载后是一个.jar文件,可以通过Ubuntu图形化界面打开安装。我将该软件安装到了ejbca的home目录中。

安装好以上这些东东后,还需要安装ant ant-optional unzip ntp这些东西

$ sudo apt-get install ant ant-optional unzip ntp

安装好之后,首先把NTP配置好。因为数字证书这个东西,时间不对完全就不!能!用!!!

使用ejbca用户,将下载好的ejbca软件解压缩至用户目录

$ unzip ejbca_ce_6_3_1_1.zip -d ~/

在ejbca的配置文件ejbca_6_3_1_1/conf/ejbca.properties中指定jboss server的安装目录。刚刚解压缩出来的conf目录中可能没有这个文件,需要先将范例文件复制一份出来

$ cp ejbca_ce_6_3_1_1/conf/ejbca.properties.sample ejbca_ce_6_3_1_1/conf/ejbca.properties
$ echo "appserver.home=/home/ejbca/EAP-6.4.0" >> ejbca_ce_6_3_1_1/conf/ejbca.properties

接下来,在一个新的terminal中启动jboss服务器,准备开始部署

$ EAP-6.4.0/bin/standalone.sh

待到Jboss完全启动后,进入ejbca目录执行部署安装。

$ cd ejbca_ce_6_3_1_1
$ ant deploy

然后即进入了部署过程,需要等待一小会,大概一两分钟的样子,之后会提示输入数据库的密码,我这里直接回车使用默认密码了。

部署结束jboss会自动重启,稍微等一会,让它完全启动。这个时候,jboss窗口会提示Deployed “ejbca.ear” 表示已经部署成功。接下来进行安装和配置工作。仍旧是在ejbca的窗口运行

$ ant install

这里会提示输入一些配置信息。分别有如下一些东西:

truststore和keystore的密码,我这里填的wiser001.cn

CA名称,在这里填写的名称即成为第一个管理CA。默认为Management CA这里我暂时保持不变,之后有需求再建立新的CA即可。

CA的DN,这里实际上也是随便填写或者使用默认的。如果要改,建议使用记事本写好了粘进去。作为一个强迫症患者,我改成了如下字段。

CN=ManagementCA,O=wiser001.cn,C=CN

回车后,会分别让选择CA的key类型、密钥长度、签名算法、有效期以及policy ID,都保持默认就好。

之后会让填写服务器DN。我这里配置如下:

CN=ca.wiser001.cn,O=wiser001.cn,C=CN

之后会提示修改超管SuperAdmin的CN、DN、密码及token密码,我均保持默认一路回车,最终回显的配置如下:

ejbca:init:
     [echo] 
     [echo] ------------------- CA Properties ----------------
     [echo] ca.name                : ManagementCA
     [echo] ca.dn                  : CN=ManagementCA,O=wiser001.cn,C=CN
     [echo] ca.tokentype           : soft
     [echo] ca.keytype             : RSA
     [echo] ca.keyspec             : 2048
     [echo] ca.signaturealgorithm  : SHA256WithRSA
     [echo] ca.validity            : 3650
     [echo] ca.policy              : null
     [echo] ca.tokenproperties     : ${ca.tokenproperties}
     [echo] httpsserver.hostname   : localhost
     [echo] httpsserver.dn         : CN=ca.wiser001.cn,O=wiser001.cn,C=CN
     [echo] superadmin.cn          : SuperAdmin
     [echo] superadmin.dn          : CN=SuperAdmin
     [echo] superadmin.batch       : true
     [echo] appserver.home         : /home/ejbca/EAP-6.4.0
     [echo]         

继续安装,大概继续等个两三分钟,安装完成。

之后,在/home/ejbca/ejbca_ce_6_3_1_1/p12这个目录中会生成一个superadmin.p12文件,这个文件就是管理员证书。

在浏览器中导入这个证书。

importcert

 

成功后,访问 https://ca.wiser001.cn:8443/ejbca 会提示选择证书,选择刚刚导入的超级管理员证书提交。

certauth

提交后,会提示连接不安全。因为该服务器使用的证书及CA都是我们自己创建的,所以,添加个例外好啦!之后可以在public web中下载根证书导入解决这个问题。

添加过例外,就进到了管理页面。

adminweb至此,ejbca的安装工作结束。

 

 

 

 

 

 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注