配置Domino CA以支持SSL
图文并茂为您详解如何配置Domino CA以支持SSL
部分文字参考网上《如何配置Domino CA以支持SSL》一文,但是原文只有晦涩的文字没有图,且文中描述为翻译后的中文,和实际配置中的英文环境有一定的个人理解差异,加上有部分解释不够完善,遂自行实验一番,以图文形式供需要者参阅。文中实验平台为Domino7。
================水煮豆豆博客很好很强大的分割线=====================
【导读】配置Domino CA以支持 SSL 是R4.61以后的版本才具有的功能.下面以R5为例,介绍如何配置 SSL (secure socket layer)。R4.6X、R6.X的配置基本相同 。
配置步骤
(一)配置验证字权威服务器
1创建验证字权威数据库
1)点击菜单"文件"--"数据库"--"新建"
2)服务器:选择验证字权威服务器
模板服务器:选择验证字权威服务器
模板:点击"显示高级模板",选择"Domino R5验证字权威"模板(cca50.ntf)
数据库名称:certca.nsf(在R4.6X中必须是该名称)
3)点击"确定"按钮
2配置验证字权威数据库
1)打开验证字权威数据库,左边点击"验证字权威配置"视图
2)右边点击"创建验证字权威密钥文件和证书"
密钥文件信息:
密钥文件名称:存储验证字权威密钥和证书的文件名称,相对于管理员客户端的数据目录.如果文件放在别的目录下,输入绝对路径.缺省值是CAKey.kyr
密钥文件口令:推荐最少六个字符
口令证实:重新输入口令
文件尺寸:
密钥尺寸:选择512或1024
层次名称:提供了验证字权威的唯一标识,包括
普通名称:验证字权威名称,例如Cyber CA
组织:公司名称,例如Cyber
州\省:至少三个字符,例如beijing
国家:两个字符的国家代码,例如CN
点击"创建验证字权威密钥文件"按钮,出现一个窗口显示验证字权威的信息,点击"确定"按钮
3)右边点击"配置验证字权威简要表" (水煮豆豆注:原文翻译的有问题,实际上是配置验证字的授权属性,这里如果没有正确配置的话,在后面申请服务器验证字的过程会出现很多人头疼的"type mismatch",要命的是,出错以后依然还能生成证书,如果已经出现这个错误的朋友,可以在这里重新配置属性环境,然后删除notes/data/下的服务器的key,然后重新做后面的步骤)
配置相关选项,点击"保存关闭"按钮
4)右边点击"创建服务器密钥文件和证书"
服务器密钥文件信息:
密钥文件名称:存储服务器密钥和证书的文件名称,相对于管理员客户端的数据目录.如果文件放在别的目录下,输入绝对路径.缺省值是keyfile.kyr
密钥文件口令:推荐最少六个字符
口令证实:重新输入口令
文件尺寸:
密钥尺寸:选择512
验证字权威证书标识:输入验证字权威名称,例如Cyber CA
服务器层次名称:提供了您的站点的唯一标识,包括
普通名称:服务器名称,例如 http://www.cyber.com/
组织:公司名称,例如Cyber
州\省:至少三个字符,例如beijing
国家:两个字符的国家代码,例如CN
点击"创建服务器密钥文件"按钮,输入验证字权威密钥文件的口令,点击"确定"按钮.
出现一个窗口显示服务器密钥文件的信息,点击"确定"按钮
(二)配置验证字权威服务器文档
1打开公共通信录数据库(水煮豆豆注:这个所谓的公共通信录就是传说中很有名的names.nsf,此外还要注意,这时要选择Domino目录下的而非Notes目录下的,很多人也是在这个地方转圈圈),选择"服务器"视图下的"服务器"子视图,编辑CA服务器的文档
2点击标签"端口"--"Internet端口"--"web"
SSL 密钥文件名称:输入CA服务器的密钥文件名称,相对于服务器的数据目录.如果文件放在别的目录下,输入绝对路径.缺省值是keyfile.kyr
SSL 端口号:443
SSL 端口状态:启用
验证选项:根据需要选择以下验证方式(客户端证书,名字和口令,匿名)
3重新启动服务器生效
4启动http服务器任务
(三)配置服务器验证字管理数据库,为web服务器向CA服务器申请证书
注意:该数据库是系统自动生成的.若您的web服务器和CA服务器是同一台Domino服务器,则web服务器使用CA服务器的证书,您不需配置该步.
1打开服务器上的服务器验证字管理数据库(certsrv.nsf),左边点击"创建密钥文件和证书"视图
(水煮豆豆注:本节后面的内容和前面的图类似,因此就不再截图了)
2右边点击"创建密钥文件",过程同上面的"创建验证字权威密钥文件和证书",在此不再赘述.
3右边点击"创建证书请求"
确认密钥文件名称
选择请求方式,共有两种:从CA站点粘贴;通过e-mail发送给CA.下面以前者为例来描述.
点击按钮"创建证书请求",输入该服务器的密钥文件的口令,点击"确定"按钮
在随后出现的创建证书请求的窗口中,将下面段落中的所有字符拷贝到剪贴板上,点击"确定"按钮
4提交证书请求
启动浏览器,在URL输入 http://caservername/certca.nsf ,其中caservername是您的CA服务器的名称.
左边点击"请求服务器证书",右边输入联系人信息,将第3步中剪贴板上的信息粘贴到下面的域中,点击"提交证书请求"按钮
5提取验证字权威作为信任的根证书
启动浏览器,在URL输入 http://caservername/certca.nsf ,其中caservername是您的CA服务器的名称.
左边点击"在您的服务器中接受该权威",在屏幕右边将最下面的段落拷贝到剪贴板上
6在服务器密钥文件中安装验证字权威证书作为信任的根证书
1)打开服务器上的服务器验证字管理数据库(certsrv.nsf),左边点击"创建密钥文件和证书"视图
2)右边点击"在密钥文件中安装信任的根证书"
确认密钥文件名称
证书标识:输入验证字权威名称,例如Cyber CA
证书来源:选择"剪贴板"
将第5步中的剪贴板上的信息粘贴到下面的域中,点击按钮"将信任的根证书合并入服务器密钥文件"
输入验证字权威口令,点击"确定"按钮
查看合并信息,点击"确定"按钮
点击"确定"按钮
7验证字权威的管理员同意证书请求
1)打开验证字权威数据库,左边点击"服务器证书请求"视图
2)右边屏幕会出现web服务器提交的证书请求文档,打开该文档
修改使用期限,记住提取ID,点击"同意"按钮
输入验证字权威的口令,点击"确定"按钮
输入该站点的主机名,点击"确定"按钮
8提取服务器证书
启动浏览器,在URL输入 http://caservername/certca.nsf ,其中caservername是您的CA服务器的名称.
左边点击"提取服务器证书",右边输入刚才记下的提取ID,点击"提取签名的证书"按钮
将下面段落中的所有字符拷贝到剪贴板上
9在服务器密钥文件中安装签名的证书
1)打开服务器上的服务器验证字管理数据库(certsrv.nsf),左边点击"创建密钥文件和证书"视图
2)右边点击"在密钥文件中安装证书"
确认密钥文件名称
证书来源:选择"剪贴板"
将第8步中的剪贴板上的信息粘贴到下面的域中,点击按钮"将证书合并入服务器密钥文件"
输入验证字权威口令,点击"确定"按钮
查看合并信息,点击"确定"按钮
点击"确定"按钮
10配置web服务器文档
1)打开公共通信录数据库,选择"服务器"视图下的"服务器"子视图,编辑web服务器的文档
2)点击标签"端口"--"Internet端口"--"web"
SSL 密钥文件名称:输入web服务器的密钥文件名称,相对于服务器的数据目录.如果文件放在别的目录下,输入绝对路径.缺省值是keyfile.kyr
SSL 端口号:443
SSL 端口状态:启用
验证选项:根据需要选择以下验证方式(客户端证书,名字和口令,匿名)
3)重新启动服务器生效
4)启动http服务器任务
(四)配置浏览器,为用户向CA服务器申请证书
1浏览器信任该验证字权威
启动浏览器,在URL输入 http://caservername/certca.nsf ,其中caservername是您的CA服务器的名称.
左边点击"在您的浏览器中接受该权威",右边的窗口中点击"在您的浏览器中接受该权威"
连续点击五次"下一步"按钮,输入验证字权威名称,例如Cyber CA,点击"完成"按钮 (水煮豆豆注:貌似我没有看到有这一步的任何选项。直接下载就是了)
2浏览器提交证书请求
启动浏览器,在URL输入 http://caservername/certca.nsf ,其中caservername是您的CA服务器的名称.
左边点击"请求客户端证书",右边的窗口中输入证书信息,联系人信息,加密长度选择512,点击"提交证书请求"按钮
在生成私有密钥的窗口中,点击"确定"按钮
设置communicator口令,点击"确定"按钮
3验证字权威的管理员同意证书请求
1)打开验证字权威数据库,左边点击"客户端证书请求"视图
2)右边屏幕会出现客户端提交的证书请求文档,打开该文档
选择在公共通讯录中注册证书
用户名称:从通讯录中选择使用该证书的用户
修改使用期限,记住提取ID,点击"同意"按钮
输入验证字权威的口令,点击"确定"按钮
4提取客户端证书
启动浏览器,在URL输入 http://caservername/certca.nsf ,其中caservername是您的CA服务器的名称.
左边点击"提取客户端证书",右边输入刚才记下的提取ID,点击"提取签名的证书"按钮
点击"接受证书"按钮
5(可选)如果您使用的是第三方的CA,还要在左边点击"注册客户端证书".
(水煮豆豆注:这时去访问SSL是会失败的,原因是keyfile在notes\data目录下而非domino\data下,此时需将所有keyfile文件copy到domino\data下。)
这样配置完成后,您就可以在URL中以https://的方式访问web服务器.
至此,这篇教程就该告一段落了。文中我们测试用的CA、SERVER、WEB都在一台服务器上,如果不在一起的话,问题可能还会有一些。我想我们在配置Domino这样的大型应用系统时,应当秉持理解原理为先的思想,而非简单的依葫芦画瓢,这样才能在纷繁复杂的网络环境中做到以不变应万变,成为合格的集成工作者