注:安装“证书服务”之后将不能修改计算机的“机器名”以及“域”,IIS将使用windows的80端口,80端口必须没有被占用,否则后果严重,无法安装。
右键“计算机”——>“管理”
点击左侧的“角色”
点击右侧的“添加角色”,弹出“添加角色向导”
勾选“Active Directory 证书服务”和“Web 服务器(IIS)”两个服务,点击下一步
点击“下一步”
勾选“证书颁发机构”和“证书颁发机构Web注册”,在勾选“证书颁发机构Web注册”时弹出“添加角色向导”
点击“添加必需的角色服务”,点击“下一步”
如果大家自己的服务器建议使用“企业”根节点,“企业”根更有利与使用windows的域控制器,来控制安全性,当然使用“独立”根节点也并不影响,这里因为机器全部使用的工作组而没有使用域,所以无法使用“企业”根,在这里使用“独立”根,点击“下一步”
选择“根CA”,点击“下一步”
选择“新建私钥”,点击“下一步”,进入“加密”
在这里选择“加密方式”,默认使用SHA1加密方式,这里不做更改,点击“下一步”
点击“下一步”
这里选择“CA证书”有效期限,默认为5年,点击“下一步”
这里选择证书的存放位置,以及日志的存放位置,使用“默认”选择,点击“下一步”
点击“下一步”
这里选择IIS服务器的安装配置,如没有特殊需求使用默认即可,点击“下一步”
点击“安装”,进入服务安装环节
等待安装结束,安装结束后,点击“关闭”。
安装结束后,右键“计算机”点击“管理”,在右侧展开目录树,出现
点击“Web服务器(IIS)”,在右侧中点击“启动”(安装之后默认是启动状态),打开浏览器,在地址栏中输入:http://localhost/certsrv/ 打开以下页面
截止到此windows 2008的证书服务,以及证书颁发服务全部安装完毕,ca证书服务器搭建完毕。
暂缺,但有相关的文档资料《搭建CA服务器用SSL实现网站数据加密传输.pdf》
参考资料: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
下面生成一个向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指定要打开的证书库
输入证书密码
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文件
将文件中的内容复制出来,然后打开浏览器,输入链接地址:http://证书服务器ip地址/certsrv/ 打开CA服务器的申请界面,点击“申请证书”
点击“高级证书申请”
点击“使用base64编码的CMC或PKCS #10文件提交一个证书申请……”
出现以下界面
在“保存的申请”输入框中粘贴“certreq.csr”文件中的内容
点击“提交”
注:如果CA证书服务器搭建时使用的是“企业”根时,到此就结束了可以直接下载证书,但因为搭建CA证书服务器时使用的是“独立”根,所以这里需要去证书服务器手动颁发一下证书
切换到CA证书服务器,右键“计算机”,点击“管理”,打开“角色”目录树,打开“Active Directory证书服务”,打开独立根,点击“挂起的申请”
右键右侧的申请
在“所有任务”中选择“颁发”,到此为止证书颁发成功,然后切换到web服务器,在浏览器中输入刚才申请证书的链接地址:http://证书服务器ip地址/certsrv/ 去下载证书,注意:这里将要下载2个证书,一个是CA服务器的根证书,一个是网站的CA证书
点击“下载CA证书、证书链或CRL”去下载CA服务器的根证书
点击“下载CA证书”
下载CA服务器的“根证书”,另存为rootCert.cer
注意:这个证书是CA证书服务器的根证书而并非申请的网站(系统)的CA证书
然后回到主页
点击“查看挂起的证书申请的状态”
看一下“保存的申请证书(日期)”日期是否是刚才申请的时间,如果是点击该链接,下载网站(系统)的CA证书
另存为“siteCert.cer”到此,证书申请完毕。
打开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中,到此证书全部导入完毕
将生成的keystore文件复制到tomcat安装目录的conf文件夹下,打开conf/server.xml,搜索non-SSL HTTP/1.1 Connector找到<Connector标签,主要增加3个属性scheme="https" keystoreFile="/conf/keystore" keystorePass="python" 。
-scheme访问的协议
-keystoreFile 证书库的目录位置,也就是刚刚的keystore文件位置
-keystorePass 证书库的密码,也就是开始输入的密码,在本例中是python
<Connector port="8443"
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下的工程,这里测试环境:
https://192.168.1.243:8443/zzgs_ui/login.jsp
因为这里使用的是我们自己搭建的CA证书服务器,所以IE提示“此网站出具的安全证书不是由受信任的证书颁发机构颁发的……”,解决这个问题需要改变客户端机器的IE设置,将CA服务器的根证书(也就是刚刚的rootCert.cer)导入到客户端浏览器中,下面以IE8为例。点解“工具”——“Internet选项”打开“内容”选项卡,点击其中的“证书”按钮
打开“证书”界面
打开“受信任的根证书颁发机构”点击“导入”
点击“下一步”
点击“浏览”按钮,选择要导入的证书(也就是刚刚的rootCert.cer)
点击“下一步”,一路默认选择
点击“是”
完成“CA服务器的根证书”导入,重启浏览器,访问刚才的地址https://192.168.1.243:8443/zzgs_ui/login.jsp 能够正常访问,使用https协议,并且在最后面有一个锁的标志,证明CA证书安装,并且使用正常。