【实验名称】
Windows Server 2008 CA
认证实验
【实验背景】
Windows Server 2008
支持两种证书服务器,分别是应用于企业内部的企业证书服务器和用于企业或Internet的独立证书服务器。其中,企业证书服务器应用于域环境,需要AD的支持,用户可以直接向证书服务器申请并安装证书;而独立根证书服务器应用于非域环境。
Win2008
只有企业版和数据中心版支持web注册功能,标准版和web版不支持。
本实验用3台win2008做一个独立根CA实验。如果电脑配置差,Client可以用xp代替。
【实验前的准备工作】
准备工作:
这里域名为abc.com,IP地址如上图所示。此实验在VM7中进行,三台电脑网卡全部桥接;当然也可以全部建在一个分组内做实验。
实验心得:我做实验的电脑内存是3G,系统自动给win2008分配的内存是1G,物理机我用的是XP,导致很卡,所以要手动给虚拟机分配内存900M,这样3台win2008消耗2.7G内存,留下300多M给XP。
下面对客户机IE浏览器做设置:打开Internet选项,调整安全级别:
1
将对未标记为可安全执行脚本的ActiveX控件初始化并执行脚本(不安全);必须启用
2
允许运行以前未使用的ActiveX控件而不提示; 必须启用
3
下载未签名的ActiveX控件(不安全); 启用
4
下载已签名的ActiveX控件(不安全); 启用
5
使用仿冒网站筛选; 禁用
6
没有证书或只有一个证书时不提示进行客户端证书选择;如果不想有证书选择提示窗口,可以把它启用。
实验心得:平时做实验,我们可以把安全性降到最低,以免干扰实验。前2个必须启用,否则在申请证书时会跳出如下对话框。
【实验基本概念】
【实验原理】
【实验具体步骤】
下面安装配置CA服务器:
首先打开“服务器管理器”→添加角色,选中“Acitve Directory证书服务”。如下图所示
单击“下一步”,选中“证书颁发机构”和“证书颁发机构web注册”。后者主要是通过web界面来进行证书的相关操作。如下图所示。
单击“下一步”,如下图所示,由于是企业中第一个证书服务器,所以我们选“根CA”。
单击“下一步”,如下图所示,这里就用默认的。
单击“下一步”,如下图所示,这边修改CA的公用名称为chuangguo,该名称无实际意义,随便取。
安装IIS服务过程,但注意一定要选择"Asp.Net"组件
下面配置web服务器
首先安装好IIS和DNS组件,这里省略。
接下来创建
DNS
正想区域文件;
区域名称为:
weichen.com
!
创建成功之后,然后添加主机记录!
其中:两条是
DNS
服务器的
IP
记录;一条:
chuang.weichen.com
―为证书服务器的域名!
实验之前,我们使用正常的没有经过加密的访问方式进行测试;访问成功!
下面配置web服务器
首先安装好IIS和DNS组件,这里省略。
打开IIS,这里我们的加密网站就直接使用原来的默认网站了,当然新建网站也一样做。首先修改C:\inetpub\wwwroot中的首页,把原来的文件删除,新建一个index.htm,内容任意。并且测试下这个网页能被访问到,如下图所示:
注意:新建网页的时候,我们一般是用记事本,然后另存为index.htm,这里注意和windows 2003不一样,需要打开后缀名。否则另存为后的文件是index.htm.txt。在这里把DNS也配好,添加主机记录,客户机的的DNS地址也要设置好,测试通过域名能访问该网站。
二、
IIS
服务器此时还不信任颁发证书的
CA
服务器。解决办法是将
CA
服务器添加到
IIS
服务器计算机
"
受信任的根证书
颁发机构
",
1.2008B
上打开
http://192.168.16.30/certsrv/
或者:
http
:
chuang.weichen.com
,“下载
CA
证书、证书链或
CRL
”。为了方便,下载保存到桌面上,然后双击安装。
选择“下载CA证书、证书链或CRL”。为了方便,下载保存到桌面上,然后双击安装。安装过程中把证书导入到“受信任的根证书颁发机构”中,如下图:(这里最好勾选“显示物理存储区”,导入到local computer)
接下来在网站中配置证书,打开IIS,选中“计算机名字”,在中间选中“服务器证书”如下图所示,
在右边选中“创建证书申请”,如下图所示:
单击“下一步”,出现保存证书申请文件对话框,输入任意文件名,保存到桌面,用记事本打开,如下图:
接下来我们来完成证书申请,
在第二台win2008客户机上打开浏览器,输入:http://1.1.1.1/certsrv;如下图:这里选申请证书。
这里选“高级证书申请”
这里选“使用base64……”
此图中的编码从之前的abc中用记事本打开复制过来,注意包含-----BEGIN CERTIFICATE-----和-----END CERTIFICATE-----。
接下来去CA服务器上颁发证书。在“管理工具”中打开“Certification Authority”,进入“挂起的证书”中颁发,如下图所示:
打开http://chuang.weichen.com/certsrv,选“查看挂起的证书申请的状态”,如下图所示:
这里下载证书到桌面,保存为“110.cer“。
接下来在IIS中完成证书申请,如下图:
主要这里不要放一开始申请的导入“受信任的根证书颁发机构”的certnew证书,而是后来申请的certnew2证书。当弄错了,是不会继续的,所以这步一般不会错。
注:证书申请除了通过网页方式申请外,还可以打开MMC,添加证书模块来做
接下来对网站进行设置,配置HTTPS执行双向认证
默认情况下,HTTPS单向认证的模式工作,即客户端通过网站证书来验证网站的身份,但网站并不验证客户端的身份,如果需要通过证书验证客户端身份,则可以要求试图访问网站的客户端必须提供证书才能进行访问,执行双向认证时,网站将只接受HTTPS访问。在IIS右侧打开“网站绑定“,如下图:
在IIS中打开SSL设置,如下图:如图设置,最后不要忘记右边的“应用“。
此时,我们再用http://www.weichen.com访问则已不能在访问了!因为我们启用SSL加密技术设置!
若想能正常的访问则必须使用:https://www.weichen.com 方式进行访问!
【实验总结】
“要求SSL”选项,如果没有选中,则用户可以通过HTTPs,也可以通过HTTP来访问,如果“要求SSL”被选中,则用户必须通过HTTPS访问
“客户证书”有3个选项:忽略、接受、必需。如果“要求SSL”选项没有选中,则不能选择客户证书“必需”项。如果选择“忽略”,则服务器不会去检查是否有客户证书,即使客户端有客户证书,也不会被服务器接收。如果选择“接受”,如果客户有证书,会自动跳出,让客户选择如下图,如果没有,则正常转入原来的页面。建议客户不要选中“要求SSL”,如果需要使用客户端证书,也可以选择“接受”客户证书。如果有些页面要求客户必须通过HTTPS访问,可以使用代码自动跳转的方式。
当我们把设置改成必须通过SSL才能访问网站时,经常发现原来不加密的还是能访问,主要是网页缓存的问题,在Internet选项中清空缓存即可,最好再重启IIS,重新打开IE。
【实验拓展】
若想通过双向的服务器与客户端都通过认证访问;则具体思路方法如下:
【实验总结】
实验总结和注意点:
1.
可在运行中输入:certmgr.msc 可直接打开证书管理器来管理证书。
2.
实验过程中不要修改系统时间。否则出现下图:
3.
在工作组模式下证书颁发需要手工颁发,但在加入域环境下证书是自动颁发的(如果CA是域控,则颁发证书时一定要有域管理员权限的用户才可以申请证书)。
4.
实验中当客户机是windows 2003时访问https://IP没问题,但是一旦使用2008作为客户机做测试就会出现证书错误,是因为2008中严格规定证书是颁发给网站域名的,必须配置域名,用域名访问网站。
5.
实验中用以前的老虚拟机配置IIS时,发现地址无法绑定,如图,是因为在网络设置中一块网络配置了多个地址。
6.
关闭IE的增强的安全配置,可以在“服务器管理里”→“配置IE ESC”,管理员和用户都禁用。
.7
.有学生做该实验的时候虚拟机都是克隆的,计算机名都一样,会导致实验失败,如下图: