打造自己的认证中心EJBCA.doc_第1页
打造自己的认证中心EJBCA.doc_第2页
打造自己的认证中心EJBCA.doc_第3页
打造自己的认证中心EJBCA.doc_第4页
打造自己的认证中心EJBCA.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EJBCA:打造独立的网络公安局为了将高强度的加密产品推广到现实生活中,计算机专家们想了许多办法,公钥基础设施 (Public Key Infrastructure,PKI)就是目前应用十分广泛的一种加密系统。其最大优点在于使用了公钥加密技术,并且引入了具有公信力的第三方。这里所介绍的EJBCA就是这样一个功能齐全、易于安装的证书认证系统。它是一个源代码开放的、功能齐全并易于安装配置证书的认证系统,可以从/下载。通过EJBCA软件的安装使用,普通用户也能轻松领略加解密世界的奥妙!EJBCA由5部分组成:认证中心、注册机构、 证书库、证书申请者和证书信任方。其中,认证中心、注册机构和证书库3部分是PKI的基本部分,证书申请者和证书信任方是参加网上交易的主体。由此可见,PKI就是一个现实生活中公安局的网络再现。6.3.1 EJBCA系统的安装(1)需要的软件如表6.1所示。表6.1 需要的软件软件名称及版本下载地址JDK1.6.0_9/JBOSS-4.2.2.GAejbca_3_6_1/download.htmapache-ant-1.7.0/ant/jce_policy-1_6_0/javase/downloads/index.jsp(2)设置环境变量。在Windows中,使用鼠标右键单击我的电脑,在菜单中选择属性命令,打开高级选项卡,然后点击环境变量按钮,弹出环境变量对话框。在系统变量栏中,单击新建按钮,在变量名后填入JAVA_HOME,填入变量值D:javajdk1.6.0。如图6.17所示。采用类似的方法,设置如表6.2所示的环境变量。其中,变量值中的%是通配符。(3)修改加密包。为了解决美国出口限制,还需要下载强加密包。首先将jce高强度加密包解压缩,并覆盖到%JAVA_HOME%/jre/lib/security。图6.17 设置环境变量表6.2 环境变量变 量 名变 量 值JAVA_HOMED:javajdk1.6.0EJBCA_HOMED:ejbcaJBOSS_HOMED:ejbcajboss-4.2.2ANT_HOMED:ejbcaapache-ant-1.7.0PATHPATH;%JAVA_HOME%BIN;%JBOSS_HOME%BIN;%ANT_HOME%bin;CLASSPATH.;%JAVA_HOME%libdt.jar;%JAVA_HOME%libtools.jar;%JAVA_HOME%lib;(4)初步生成部署文件ejbca.ear。在%EJBCA_HOME%目录下,运行ant bootstrap。安装过程中,由于内存处理任务较繁重,为了防止内存溢出错误,需要设置ANT_OPTS变量。可以设置环境变量:ANT_OPTS=-Xmx512m。(5)启动JBoss并初始化CA系统。运行%JBOSS_HOME%/run.bat文件。同时,在%EJBCA_ HOME%/下,运行以下命令:ant install,安装管理CA并初始化EJBCA系统。安装完毕,停止JBoss。如图6.18所示。图6.18 启动JBoss并初始化CA系统(6)重新部署整个系统。在%EJBCA_HOME%目录下,运行命令:ant deploy。将重新部署整个系统,并用密钥库配置Sevlet容器。(7)将%EJBCA_HOME%/p12/superadmin.p12证书导入浏览器,默认密码是ejbca。选择证书文件,并单击右键,在弹出的对话框中选择安装PFX,就会打开导入证书的对话框。如图6.19所示。图6.19 证书导入向导(8)重新启动JBoss。登录http:/localhost:8080/ejbca/。如果可以进入管理员(administrator)页面(证书提示),说明安装成功。管理地址为https:/localhost:8443/ejbca/adminweb/index.jsp。分别单击左侧的系统配置、个人选项,在右侧的管理员首选项中,设置Web界面默认语言为ZH(中文)。设置完毕,界面如图6.20所示。图6.20 EJBCA管理界面6.3.2 PKI技术的产品实现-数字证书数字证书类似于日常生活中的身份证,它包含了许多个人的重要信息,如用户身份、公开密钥、有效期、授权信息等,它实现了身份识别、完整性、真实性及不可否认性等安全要素。证书格式及证书内容通常遵循X.509标准,目前使用较多的是1997年提出的V3版本。从证书的一般用途来看,数字证书可分为签名证书和加密证书。签名证书主要用于对用户信息进行签名,以保证信息的不可否认性;加密证书主要用于对用户传送信息进行加密,以保证信息的真实性和完整性。在上面的安装过程中,即产生了一个数字证书。在打开的网页中,选择浏览器中的工具Internet选项菜单命令,在弹出的对话框中单击内容选项卡,选择其中的证书按钮,即可看到相关证书。6.3.3 数字证书的管理流程由于CA中心是一个权威性的第三方认证机构,因此,数字证书的申请也必须经过严格的申请流程,这样才能体现CA中心的权威性、公正性。这里,设置EJBCA的申请流程如下。(1)用户资料审核。注册机构对用户资料进行审核,并根据证书级别不同,审核用户相关的资料与证书请求信息的一致性。(2)产生、验证和分发密钥。一般情况下,用户需要到RA(注册中心)去进行证书申请。在这里,RA是一个十分重要的代理审核机构,类似于下属单位的代理办事处。RA完成对用户的身份认证后,以签名数据的方式向CA提供用户的公钥和相关信息。然后,CA完成对公钥的测试并产生证书。(3)证书的发放。用户资料审核通过后,CA对用户信息和公钥进行签名,生成证书发布到服务器上,以供用户下载。用户提交申请表之后,利用受理点给的ID号与密码,获取自己的证书后,即表示用户接受证书,证书开始生效。(4)证书验证。在网络世界里,证书的持有人可以是个人用户、企事业单位、商家、银行用户,也可以是网络上的服务器、路由器等设备。归纳起来,这些证书持有者在开展某项具体业务时,可以进行数据加解密、数据签名和签名验证等操作。在下面的申请流程及证书使用流程中,将会严格按照上述操作规范进行。6.3.4 EJBCA数字证书的申请及应用鉴于CA中心的严格管理流程,因此,申请数字证书时,用户必须首先到终端提交个人的相关信息。1个人数字证书的申请(1)提交申请资料。现在,进入https:/localhost:8443/ejbca/adminweb/index.jsp页面,单击左侧RA功能下面添加终端实体。如图6.21所示。在出现的表单中,有用户名、密码、Email、通用名、组织部门、城市、省、国家等信息。按照系统规定的格式提示,输入相关数据即可。填写相关信息时,一定要牢记该用户的用户名和密码。(点击查看大图)图6.21 添加终端实体(2)登录证书下载页面。打开浏览器访问http:/localhost:8080/ejbca,进入EJBCA的主页,这里显示了EJBCA的主要功能选择。包括证书申请注册(Enroll)、证书撤消列表(Retrieve)、证书查看及管理(Administration)。如图6.22所示。(点击查看大图)图6.22 登录证书下载页面(3)下载数字证书。现在,假设添加UserB已经成功,进入证书申请页面。选择其中的浏览器证书注册链接Create Browser Certificate(创建浏览器证书),进入申请页面。在这个界面中,会提示用户输入用户名和密码。输入UserB及其密码,即可进入数字证书下载页面,按照图中的列表选择浏览器提供的不同密钥机制即可,如图6.23所示。(4)安装并查看数字证书。选择某种加密算法后,单击OK按钮。安装过程中,系统会提示是否安装根证书。选择安装此证书,按照提示即可生成个人浏览器证书。在打开的网页中,选择浏览器中的工具,选择菜单中的Internet选项命令,在弹出的对话框中单击内容选项卡,单击其中的证书按钮,即可看到颁发成功的浏览器证书。图6.23 下载数字证书2利用个人数字证书发送安全电子邮件使用安全电子邮件证书,用户可以收发加密和数字签名邮件,保证电子邮件传输中的机密性、完整性和不可否认性,确保电子邮件通信各方身份的真实性。安全电子邮件利用公钥算法保证签名邮件不会被篡改,而加密邮件除了邮件接收者以外,任何人无法阅读其中的内容。需要注意的是,证书中的邮件地址必须同绑定的邮件账号一致。这样就可以对自己的邮件签名和加密了。下面,通过一个存储在硬盘中的数字证书进行相关操作的演示。(1)在Outlook Express中设定邮件。打开Outlook Express,选择工具账户菜单命令,在弹出的Internet账户对话框中,单击右边的添加按钮,选择邮件选项。在向导中,输入用户的邮件显示姓名,单击下一步按钮,输入电子邮件地址,系统会提示分别输入接收邮件服务器和发送邮件服务器的域名或IP地址,如:,。继续单击下一步按钮,系统会提示用户输入邮箱的账号和密码,如果是TOM账户,建议勾选使用安全密码验证。设置成功的新账户如图6.24所示。图6.24 在Outlook Express中设置服务器参数(2)在Outlook Express中设置邮箱与数字证书的绑定。在Outlook Express中,选择工具账号菜单命令,在弹出的对话框中选取邮件 选项卡中的用于发送安全电子邮件的邮件账号。然后单击属性,选择上面的安全标签,可以看到 签署证书和加密首选项两栏。在签名证书项后,点击选择按钮,即可看到相应的签名证书。选择加密数字证书,单击确定按钮完成邮箱与证书的绑定。如图6.25所示。图6.25 在Outlook Express中设置安全参数确定之后,完成Outlook Express的安全数字证书配置工作,现在就可以准备发送签名或加密的电子邮件了。(3)发送签名和加密的电子邮件。发送签名或加密邮件前,必须先获得接收方的数字标识,可以首先让接收方给发一份签名邮件,以便获取对方的数字标识。启动Outlook Express 6.0,点击新邮件,撰写新邮件。同时选中右上方的签名或者加密选项。单击发送按钮,签名邮件发送成功。当收件人收到并打开有数字签名的邮件时,将看到数字签名邮件的提示信息,单击继续按钮后,才可阅读到该邮件的内容。发送加密邮件的方法与发送签名邮件的方法类似。6.3.5 利用数字证书提高服务器安全服务器证书是数字证书的一种形式,类似于驾驶证、护照和营业执照的电子副本,用于在网络通讯中标识和验证服务器的身份。在网络应用系统中,服务器软件利用证书机制保证与其他服务器或客户端通信的安全性。这个身份证书可以存贮在软盘、硬盘、IC卡中。服务器证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道保证了双方传递信息的安全性,而且用户可以通过服务器证书验证他所访问的网站是否为真实可靠的。简单地说,默认情况下,我们所使用的HTTP协议是没有任何加密措施的,所有的消息全部都是以明文形式在网络上传送的,恶意的攻击者可以通过安装监听程序来获得我们与服务器之间的通讯内容。这种危害在一些企业内部网络中尤其比较大,对于使用Hub的企业内网来说简直就是没有任何安全可讲,因为任何人都可以在一台电脑上看到其他人在网络中的活动,对于使用交换机来组网的网络来说,虽然安全威胁性要小很多,但很多时候还是会有安全突破口,比如没有更改交换机的默认用户和口令,被人上去把自己的网络接口设置为侦听口,依然可以监视整个网络的所有活动。1SSL的相关知识SSL(加密套接字协议层)位于HTTP层和TCP层之间,建立用户与服务器之间的加密通信,确保所传递信息的安全性。SSL是工作在公共密钥和私人密钥基础上的,任何用户都可以获得公共密钥来加密数据,但解密数据必须要通过相应的私人密钥。使用SSL安全机制时,首先客户端与服务器建立连接,服务器把它的数字证书与公共密钥一并发送给客户端,客户端随机生成会话密钥,用从服务器得到的公共密钥对会话密钥进行加密,并把会话密钥在网络上传递给服务器,而会话密钥只有在服务器端用私人密钥才能解密,这样,客户端和服务器端就建立了一个唯一的安全通道。SSL可以用于在线交易时保护像信用卡号以及股票交易明细这类敏感信息。受SSL保护的网页具有https前缀,而非标准的http前缀。而且随着技术的发展,新型专用网络设备SSL加速器可以使Web站点通过在优化的硬件和软件中进行所有的SSL处理来满足性能和安全性的需要。当具有SSL功能的浏览器(Navigator、IE)与Web服务器(Apache、IIS)通信时,它们利用数字证书确认对方的身份。数字证书是由可信赖的第三方发放的,并被用于生成公共密钥。当最初的认证完成后,浏览器向服务器发送48字节利用服务器公共密钥加密的主密钥,然后Web服务器利用自己的私有密钥解密这个主密钥。最后,浏览器和服务器在会话过程中用来加解密的对称密钥集合就生成了。加密算法可以为每次会话显式地配置或协商,最广泛使用的加密标准为数据加密标准(DES)和RC4。一旦完成上述启动过程,安全通道就建立了,保密的数据传输就可以开始了,如图6.26所示。图6.26 SSL安全通道由于SSL具有应用面广、实施成本低、安全高效、操作简单等优点,它已成为电子商务系统中应用得最广泛的协议,例如目前美国的大多数电子商务应用系统都是基于SSL协议的。当浏览器要与远端Web服务器建立安全连接时,它向安全代理发出请求,由安全代理负责与远端Web服务器建立连接。连接建立后,浏览器与服务器之间的数据传输是经过安全代理转发完成的。浏览器与安全代理之间的数据传输是用浏览器本身支持的40位以下的弱加密算法加密的,而安全代理与远端Web服务器之间的数据传输则是用高强度的数据加密算法加密的。默认情况下,HTTP协议是没有任何加密措施的,所有的消息全部都是以明文形式在网络上传送的,这种通信方式存在很多缺陷。有了数字证书,就可以使用一种安全性更高的认证,即通过SSL(Security Socket Layer)安全机制来保证浏览过程的安全性。建立了SSL安全机制后,客户端和服务器端就建立了一个唯一的安全通道。只有SSL允许的客户才能与SSL允许的Web站点进行通信,并且在使用URL资源定位器时,输入https:/,而不是http:/。2获取服务器证书请求文件在Windows XP中,打开Internet信息服务管理器,然后打开要为之申请证书的站点的属性。(1)准备证书请求。以本地机器为例,选择默认Web站点,点击右键,在弹出的菜单中选择属性,出现属性对话框。找到目录安全性对话框。如果以前从未用过该项,编辑显示为灰色。选择服务器证书按钮,根据服务器证书的状态,单击下一步按钮。在出现的选项中,选择新建证书。单击下一步按钮,如图6.27所示。图6.27 准备服务器证书请求(2)设置名称和安全性。在这一步,要选择密钥的长度,位长越长,安全性越高,因此建议选择能力范围内的较大值。如图6.28所示。不过,位长过长也会使安全性降低。设置完毕,现在已经产生了一对密钥。私钥将存储在服务器上。这些信息将显示在服务器证书上,并将说明这个密钥的所有者。图6.28 设置名称和安全性(3)设置单位信息。接着输入单位信息,通过这些单位信息能够与其他单位区分开。输入完毕单击下一步按钮。(4)设置公用名称。注意公用名称是用来区分不同证书的最好方法。在SSL服务器证书的情况下,一般输入主机的域名,比如即可。(5)设置地理信息。选择存储证书请求的文件,选择一个容易找到的位置,用写字板打开这个文件,拷贝并粘贴在申请页面的证书请求一栏中。一旦请求被提交,将不再需要这个文件。单击下一步按钮,完成申请步骤。(6)产生申请的摘要信息。如图6.29所示。当证书请求产生之后,会被保存为一个使用默认文件名(如c:certreq.txt)或指定文件名的文本文件,存储在服务器的硬盘上。使用记事本或其他ASCII文本编辑器打开证书请求文件,可以查看证书请求的内容。注意,不能用Word或其他文字处理软件打开证书请求文件,因为这些软件会在证书请求文件中插入格式控制符。图6.29 生成请求文件摘要3获得服务器证书和安装服务器证书(1)添加服务器证书的实体申请。进入https:/localhost:8443/ejbca/adminweb/index.jsp页面,单击左侧RA功能下面的添加终端实体。在出现的表单中,有用户名、密码、Email、通用名、组织部门、

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论