CA 为 Certificate Authority 的缩写,也就是认证权威机构。它提供数字证书的发放、管理、取消等服务。认证权威机构将自己的公钥放在根证书里发布到互联网上,以证明该机构发放的服务器和个人证书。在互联网上通过数字证书来进行身份认证、数字签名、数字加密等操作,从而保证信息安全。
在 Lotus Domino/Notes 里也需要有认证机制来保证服务器和个人用户的身份和信息安全。不同于互联网上的 CA,Domino 的每个服务器和个人都拥有唯一的 ID 文件,而所有这些 ID 文件都是由一个根—— certifier ID 发放的。这个根就是 Notes 层次名的最后一级。Domino 里使用 ID 文件来完成邮件加解密、身份验证。
为了使 Domino 用户在 Notes 世界以外的互联网上保证身份验证的正确和信息传播的安全,需要使用 CA 来发放符合互联网标准的数字证书。Lotus Domino 本身也带有 CA 服务,因而可以将 Domino 服务器配置成一个 CA,并使用 Domino CA 发放的数字证书或进行 SSL,或进行 internet 邮件的签名、加密等操作。
前文已经提到,互联网上存在独立的认证权威机构。常见的受信任的 CA 根证书已经被加载到常见浏览器和服务器中。因而可以配置 Domino 利用第三方 CA。本文以 Windows Server 2003 上的 Certificate Authority 为例,是为了让读者在使用 Domino 的同时,了解在第三方 CA 申请服务器证书及个人证书的全过程。文中描述了如何在 Domino 中配置使用第三方 CA 提供的数字证书进行 SSL 登录 Domino Web 页面,并在收发 Internet 邮件时使用第三方 CA 数字证书进行签名、加密的方法。
1 . Domino 新建密钥环 (key ring) 文件
Key Ring 文件将保存有密钥对,即公钥和私钥。在 Domino Administrator Client,打开数据库 Server Certificate Admin(certsrr.nsf),在右侧选择“1. Create Key Ring”。如图 1 所示。
在表单中输入必要的信息后点击按钮 “Create Key Ring”。注意 Common Name 作为服务器的主机名要正确输入,后面的步骤要用到。key ring 建好后会保存在 Notes 数据目录,默认名为 keyfile.kyr。
Domino 需要自己产生服务器证书申请,提供给第三方 CA。仍然是在数据库 Server Certificate Admin,选择“2.Create Certificate Request”。在随后出现的表单中点击按钮,Certificate Request 将会生成,内容是 BEGIN 和 END 行之间的部分。如图 2 所示。
拷贝申请内容,包括 BEGIN 到 END 行到剪贴板。后面要将之粘贴到第三方 CA Web 页面表单中。
打开 Windows CA Web 站点首页 http://<WindowsCAHost>/certsrv 。单击 Request a certificate 至下一页面,单击 advanced certificate request 至下一页面,单击 Submit a certificate request by using a base-64-encoded CMC or PKCS #10 file,出现提交证书请求的表单。将刚才上一步中的申请内容粘贴在“Saved Request”中,点击 Submit 提交请求。如图 3。
登录 Windows 服务器,从 Adminitrative tools 中打开 Certification Authority(CA)。在 CA 中打开左边的节点“Pending Requests”,在右侧视图选择刚才提交的请求。右键,选择 All Tasks > Issue。
由 CA 颁发的证书,实际上是被 CA 的公钥签过名的,因而可以证明证书的权威性。
回到 Windows CA Web 站点首页,选择 View the status of a pending certificate request 至下一页面,选择上一步提交的证书请求,在下一页面选择 Base 64 encoded,下载证书。
回到 Windows CA Web 站点首页,选择 Download a CA certificate。在表单中选择 Encoding method 为 Base 64,点击 Download CA certificate 下载 CA 根证书保存到本地,后面的步骤将会用到。
在安装服务器证书至 key ring 之前,必须要先安装 CA 的信任根证书。有些 CA 可能还有中级证书,因此在安装完根证书后,再需要安装中级证书,最后才可以安装服务器证书。这样才能证明服务器证书的来源和权威。
默认情况下,Domino 已经加载了常见的 CA 根证书比如 Verisign 和 Entrust。在数据库 Server Certificate Admin 里可以查看已经安装了的信任根,只需选择左侧 View & Edit Key Rings,如图 4 所示。
本文使用测试用 Windows CA,因而该 CA 信任根并不包含在 Domino 中,需要按照下列步骤安装。
在数据库 Server Certificate Admin 中,左侧选择 Create Key Rings & Certificates,右侧视图里选择“3.Install Trusted Root Certificate into Key Ring”,在随后出现的表单里,选择 Key Ring 文件名和 CA 根证书文件所在路径和文件名,即上一步从 Windows CA Web 站点下载的根证书文件。如图 5 所示。
安装完毕后,如需查看请依据图 4 所示,并选择正确的 key ring 文件查看。
接下来将要安装步骤 5 中下载到本地的服务器证书文件到 Domino key ring 中。在数据库 Server Certificate Admin 中选择“4.Install Certificate Into Key Ring”,在随后出现的表单中选择正确的文件名。如图 6 所示。
将保存在 Notes 客户端本地数据目录的 key ring 文件(默认为 keyfile.kyr 和 keyfile.sth 文件)拷贝到 Domino 服务器端的数据目录下。并更新 Server document 或 Internet Site document 启用 SSL。如图 7。
注意填写正确的 key ring 文件名,不需要绝对路径。在 Web 页里启用 SSL 端口。可选配置:在 Authentication options 中的 Client certificate 设为 Yes,Name & password 设为 No,用户可以在安装了个人证书的浏览器上不输入密码,只用个人证书就可以登录 Domino Web 站点。
接着重启 Domino HTTP 服务。在 Domino 服务器控制台敲入命令“tell http restart”。
请先在申请个人证书的浏览器上安装该 CA 的根证书。可以打开根证书文件,点击按钮“安装证书”即可。或者访问 Windows CA Web 站点首页 http://<WindowsCAHost>/certsrv,选择 Download a CA certificate,下一页面单击 install this CA certificate chain。
回到 CA Web 站点首页,选择 Request a certificate 至下一页面,选择 Web Browser Certificate。在表单中填入必要的信息。如图 8 所示。
提交请求后,到 Windows CA 中审批通过请求,步骤如第一部分第 4 步。
下面安装个人证书到之前申请时所用的浏览器上。在 CA Web 首页选择 View the status of a pending certificate request,按照网页要求安装即可。
如果浏览器是 Microsoft IE,在 Internet 选项中可查看证书。选择“内容”页,点击“证书”,在个人页中将看到个人证书已经成功安装到浏览器。如图 9 所示。
在 Domino 中以 Domino Certificate Publication Requests 为模板创建新的数据库。打开之前提交、安装个人证书的浏览器,访问该数据库:https://<DominoHost>/domcertpubreq.nsf。其中 domcertpubreq.nsf 为刚刚创建的 Domino Certificate Publication Requests 数据库文件名。
注意地址中使用 https。
浏览器自动会提示选择用户个人证书,单击需要注册的个人证书,确定即可。
在接下来出现的表单中为该浏览器输入用户名等信息,点击按钮 Submit Certificate 提交。 如图 10 所示。
接下来在 Notes 中打开 Certificate Publication Requests 数据库,找到 Submitted Certificates > Waiting for Approval。双击刚刚提交的请求,在表单中选择合适的 Domino 地址本里的用户,点击按钮“Accept”,如图 11。
Domino admin process 会自动将证书加到上面选择的 Domino 地址本里的用户 Person 文档中。稍等一会儿,该用户会收到邮件通知。此时查看 Person 文档,会看到 Internet Certificate 已经被加进来了。如图 12。
第四部分:Domino 使用第三方 CA 数字证书收发 SMIME 邮件。
上一部分申请 Windows CA 个人数字证书时,选择了 Web Browser Certificate,因此这个证书只能做客户端登录的身份认证。第二部分已经提到过,可以配置成只用证书登录 Domino Web 站点。
至于收发 SMIME 邮件,即用数字证书签名加密 internet 邮件,步骤和第三部分相似,只是证书申请的类型必须选择 E-Mail Protection Certificate。有些 CA 也将身份认证和邮件加密功能放在同一个数字证书里,就会简单得多。
以下为说明如何实现 Domino 用户使用第三方 CA 数字证书收发 SMIME 邮件,作者已为 2 个 Domino 地址本里的用户申请 E-Mail Protection Certificate,步骤请参考本文第三部分。
以 Microsoft Outlook Express 客户端邮件软件为例,在账户信息里选择正确的个人证书即可发送 SMIME 邮件了。如图 13 所示。
用 Outlook 发送一封签名邮件给另一个 Domino 用户,该用户从 Notes 里打开邮箱,可以看到状态栏上显示签名信息“signed by zhangsan zhangsan@ibmtest.com on xxxx, according Si Li/IBM”,这说明邮件已经被发件人的私钥签名。
收到签名邮件的收件人同时收到了对方发来的公钥,无论是 Notes 还是 Outlook 会将之自动保存,因而收件人回复邮件或发新邮件给发件人时,可以选择用对方公钥加密。从而实现收发 SMIME 邮件。
学习
讨论
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |