win2008搭建CA服务器tomcat5的ssl配置

第一章CA 服务器搭建1. Windows 2008 安装“IIS ”以及“证书服务”注:安装“证书服务”之后将不能修改计算机的“机器名”以及“域”,IIS 将使用windows 的80端口,80端口

第一章CA 服务器搭建

1. Windows 2008 安装“IIS ”以及“证书服务”

注:安装“证书服务”之后将不能修改计算机的“机器名”以及“域”,IIS 将使用windows 的80端口,80端口必须没有被占用,否则后果严重,无法安装。 右键“计算机”——>“管理”

点击左侧的“角色”

点击右侧的“添加角色”,弹出“添加角色向导”

勾选“Active Directory 证书服务”和“Web 服务器(IIS )”两个服务,点击下一步

点击“下一步”

勾选“证书颁发机构”和“证书颁发机构Web 注册”,在勾选“证书颁发机构Web 注册”时弹出“添加角色向导”

点击“添加必需的角色服务”,点击“下一步”

如果大家自己的服务器建议使用“企业”根节点,“企业”根更有利与使用windows 的域控制器,来控制安全性,当然使用“独立”根节点也并不影响,这里因为机器全部使用的工作组而没有使用域,所以无法使用“企业”根,在这里使用“独立”根,点击“下一步”

选择“根CA ”,点击“下一步”

选择“新建私钥”,点击“下一步”,进入“加密”

在这里选择“加密方式”,默认使用SHA1加密方式,这里不做更改,点击“下一步”

点击“下一步”

这里选择“CA 证书”有效期限,默认为5年,点击“下一步” 这里选择证书的存放位置,以及日志的存放位置,使用“默认”选择,点击“下一步”

点击“下一步”

这里选择IIS 服务器的安装配置,如没有特殊需求使用默认即可,点击“下一步” 点击“安装”,进入服务安装环节

等待安装结束,安装结束后,点击“关闭”。

安装结束后,右键“计算机”点击“管理”,在右侧展开目录树,出现

,

点击“Web 服务器(IIS )”,在右侧中点击“启动”(安装之后默认是启动状态),打开浏览器,在地址栏中输入:http://localhost/certsrv/ 打开以下页面

截止到此windows 2008的证书服务,以及证书颁发服务全部安装完毕,ca 证书服务器搭建完毕。

2. Windows 2003 安装“IIS ”以及“证书服务”

暂缺, 但有相关的文档资料《搭建CA 服务器用SSL 实现网站数据加密传输.pdf 》

第二章向CA 证书服务器申请CA 证书

参考资料:http://doorgods.blog.163.com/blog/static/78547857201141934531616/ 在web 服务器上(安装Tomcat 的服务器)操作系统版本不限制,使用JDK 或JVM1.4以及以上版本。在“开始”——>“运行”中,输入cmd 打开文本命令窗口,将目录切换到jdk 或者jre 中的bin 下面(这里默认使用jdk1.5.0.10安装目录为c:/java/jdk1.5.0_10/)。 在命令窗口中输入命令:

cd c:/java/jdk1.5.0_10/bin

1. 生成Web 服务器的证书库

下面生成一个向ca 服务器申请证书的文件,在命令控制台中输入命令: keytool -genkey -alias tomcat -keyalg RSA -keystore keystore

生成web 服务器的证书存放库

keytool 是java 提供的声称证书的工具在jdk 或者jre 的bin 目录下存在keytool.exe 文件

-genkey 参数是建立证书库

-alias 为别名,这里使用tomcat

-keyalg 为指定加密方式,这里使用常用的RSA 加密方式

-keystore 为指定证书库存放文件 按“回车”键,出现输入证书库密码的提示框

输入密码,“回车”,出现输入证书注册信息的提示:

第一个提示输入的是“您的名字与姓氏是什么”,这里非常重要,一般填写域名,比如:www.sddpf.org.cn 或者ip 地址,比如:192.168.1.243

,

还有最后一个“该单位的两字母国家代码是什么”一般填写CN (大写) 最后确认你填写的信息是否正确,输入y ,“回车”

提示输入别名为tomcat 证书库的主密码(如果和keystore 密码相同,按回车),这里使用一致密码就可以直接“回车”。

在控制台输入命令

keytool –list –keystore keystore

-list 打开证书库列表

-keystore 指定要打开的证书库

输入证书密码

2. 生成向CA 证书服务器申请证书的文件

keytool -certreq -keyalg RSA -alias tomcat -file certreq.csr -keystore keystore

-certreq 声称申请证书文件

-keyalg 指定加密方式

-alias 证书库的别名 这里必须与上一步中建立的正数据名字相同

-file 指定生成的文件文件名称以及路径

-keystore 指定证书库

提示输入证书库keystore 的密码

生成申请证书成功,这时候在jdk/bin目录下生成了两个文件keystore 和certreq.csr ,keystore 为刚才生成的证书库文件,certreq.csr 为向CA 认证中心申请证书的申请文件,如果向第三方CA 认证中心申请证书,直接提交

certreq.csr 文件即可,但目前使用我们自己搭建的ca 服务器,而windows 提供的注册证书颁发服务没有提供提交文件的入口,故此:使用UE 或者editPlus 等工具打开certreq.csr 文件

务器ip 地址/certsrv/ 打开CA 服务器的申请界面,点击“申请证书” 点击“高级证书申请”

点击“使用base64编码的CMC 或PKCS #10文件提交一个证书申请……” 出现以下界面

在“保存的申请”输入框中粘贴“certreq.csr ”文件中的内容

点击“提交”

注:如果CA 证书服务器搭建时使用的是“企业”根时,到此就结束了可以直接下载证书,但因为搭建CA 证书服务器时使用的是“独立”根,所以这里需要去证书服务器手动颁发一下证书

,

切换到CA 证书服务器,右键“计算机”,点击“管理”,打开“角色”目录树,打开“Active Directory证书服务”,打开独立根,点击“挂起的申请” 右键右侧的申请

在“所有任务”中选择“颁发”,到此为止证书颁发成功,然后切换到web

这里将要下载2个证书,一个是CA 服务器的根证书,一个是网站的CA 证书

点击“下载CA 证书、证书链或CRL ”去下载CA 服务器的根证书

点击“下载CA 证书”

下载CA 服务器的“根证书”,另存为rootCert.cer

注意:这个证书是CA 证书服务器的根证书而并非申请的网站(系统)的CA 证书 然后回到主页

点击“查看挂起的证书申请的状态” 看一下“保存的申请证书(日期)”日期是否是刚才申请的时间,如果是点击该链接,下载网站(系统)的CA 证书 另存为“siteCert.cer ”到此,证书申请完毕。

3. 将申请的证书导入到web 服务器的证书库中

打开web 服务器的命令控制台(开始——>运行——>cmd),先讲CA 证书的根证书导入到web 服务器的证书库中

输入:

keytool -import -trustcacerts -alias root -file d:/rootCert.cer -keystore keystore

-import 倒入

-trustcacerts 证书

-alias 要导入证书库的字库 这里导入的是CA 服务器的根目录所以选择 root

-file 证书的路径

-keystore 指定目的证书库

提示输入证书库keystore 的密码

输入y 并“回车”,提示“认证已添加至keystore 中”

使用 keytool –list –keystore keystore命令查看证书库信息

然后将网站(系统)的CA 证书导入到证书库中

keytool -import -trustcacerts -alias tomcat -file d:/siteCert.cer -keystore keystore

-alias 这里使用的一开始建立证书库的时候tomcat 子库

,

-file 证书存放的路径

输入密码,并“回车”

提示证书回复已安装在keystore 中,到此证书全部导入完毕

第三章修改Tomcat 配置文件,使tomcat 使用CA 证书

将生成的keystore 文件复制到tomcat 安装目录的conf 文件夹下,打开

conf/server.xml,搜索non-SSL HTTP/1.1 Connector找到

-keystoreFile 证书库的目录位置,也就是刚刚的keystore 文件位置

-keystorePass 证书库的密码,也就是开始输入的密码,在本例中是python

maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true"

acceptCount="100" debug="0" scheme="https" secure="true"

clientAuth="false" sslProtocol="TLS" keystoreFile="/conf/keystore" keystorePass="python"/>

然后重启tomcat 打开浏览器访问tomcat 下的工程,这里测试环境:

因为这里使用的是我们自己搭建的CA 证书服务器,所以IE 提示“此网站出具的安全证书不是由受信任的证书颁发机构颁发的……”,解决这个问题需要改变客户端机器的IE 设置,将CA 服务器的根证书(也就是刚刚的rootCert.cer )导入到客户端浏览器中,下面以IE8为例。点解“工具”——“Internet 选项”打开“内容”选项卡,点击其中的“证书”按钮 打开“证书”界面 打开“受信任的根证书颁发机构”点击“导入”

点击“下一步”

点击“浏览”按钮,选择要导入的证书(也就是刚刚的rootCert.cer )

,

点击“下一步”,一路默认选择

点击“是”

完成“CA 服务器的根证书”导入,重启浏览器,访问刚才的地址

且在最后面有一个锁的标志,证明CA 证书安装,并且使用正常。

标签: