2014 相信自己能做的更好

---------------------------------------------------------------------------------------------------------
Everything is possible    Nothing is Impossible     
posts - 53, comments - 135, trackbacks - 0, articles - 22
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

如何使网站基于CA认证访问

Posted on 2005-11-23 09:42  Arping.Net探索  阅读(...)  评论(...编辑  收藏
概要

随着互联网技术的发展,网站的安全性问题已经越来越重要,本文介绍如何通过windows的“证书颁发机构”功能,使您的网站基于CA认证后才能访问。

SSL】:Security Socket Layer , 加密套接字协议层;

HTTP】:WWW服务程序所用的协议;

HTTPS】:是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。 它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。

【操作环境】:Windows 2000 Server企业版

【组件】:IIS5.0, 证书颁发机构(安装windows组件)

【虚拟目录】:http://localhost/kosoft/index.aspx

【说明】:设置网站的SSL是基于站点的,而不是针对某个虚拟目录

 

一、申请文本形式的证书

1.  浏览“证书颁发机构”组件(一般安装以后会出现在开始---程序---管理工具),如图1

 

(1)

2.  创建新的证书申请

打开IIS,在默认Web站点上右键选择“属性”,点击“目录安全性”选项卡,在“安全通信”中点击按钮“服务器证书(S)…”,系统打开了向导。如图2

 

(图2

3.  选择“创建一个新证书(C)”,点击“下一步”,“下一步”,输入名称“KoSoft”,选择位长“1024”位,点击“下一步”。

4.  系统出现“组织”、“组织部门”,随便填写几个相关数据。点击“下一步”,出现“站点的公用名称”,保持默认,点击“下一步”,选择“国家”、“省”、“市”。点击“下一步”。

5.  系统出现“证书请求文件名”页面,选择您想要的文件名和存放位置。这里保持默认。

6.  点击“下一步”,点击“完成”就申请了一个证书。

 

二、生成crt文件证书

1.  打开IE,访问http://localhost/certsrv/ 把刚才申请的证书提交证书颁发机构。出现如下的访问页面,如图3


(图3

2.  选择“申请证书”,点击“下一步”,选择“高级申请”,点击“下一步”,选择“使用 base64 编码的 PKCS #10 文件提交一个证书申请,或使用 base64 编码的 PKCS #7 文件更新证书申请”。点击“下一步”,出现如图4

 

(图4

3.  点击“浏览”插入刚才生成的certreq.txt文件内容,或者打开certreq.txt把内容复制,粘贴到这里。然后点即“提交”。

4.  您可以看到,您申请的证书已经收到,并且现在的状态是挂起。

5.  回到“证书颁发机构”组件,点击“待定申请”页,可以看到您刚才的申请单,如图5

 

(图5

6.  在证书上,右键选择“所有任务”——颁发,则证书就转移到了“颁发的证书”节点下,如图6

 

到此为止,证书已经申请,并且颁发成功

下边看看如何启用这个证书

 

三、应用证书

1.  打开IE,访问http://localhost/certsrv/ 把刚才申请的证书下载到本地

2.  选择“检查挂起的证书”,“下一步”,注意选择“Base 64 编码”,把证书下载到本地,文件名:certnew.cer

3.  打开IIS,在默认Web站点上右键选择“属性”,点击“目录安全性”选项卡,在“安全通信”中点击按钮“服务器证书(S)…”,系统打开了向导。点击“下一步”,出现如下图7,注意与第一次不同了。

 

(图7

4.  选择“处理挂起的请求并安装证书”,点击“下一步”,出现“证书注册”警告,选择“是”,完成向导。

5.  此时可以察看证书,编辑证书。

6.  选择“编辑”,打开如下页面,注意一定要勾选“申请安全通道(SSL)(R),点击“确定”。 如果客户端需要审核才能访问,在客户证书中选择“申请客户证书“,如下图8

 

访问http://localhost/kosoft/index.aspx , 发现,出现如下错误:

请尝试下列操作:

  • 在您要访问的地址前面键入“https:”,然后重试。

HTTP 403.4 - 禁止访问:要求 SSL
Internet
信息服务

 

试试看如下的地址:https://localhost/kosoft/index.aspx  发现,出现如下错误

网页要求客户证书

您要查看的网页要求使用客户证书。


请尝试下列操作:

  • 如果您已经安装了客户证书,请单击刷新按钮重试。
  • 如果您确信应该能够查看该目录或网页,请与 Web 站点管理员联系,其电子邮件地址或电话号码请参阅 grd-pec:89 主页。

HTTP 403.7 - 禁止访问:要求客户证书
Internet
信息服务

 

7回到IE,打开http://localhost/certsrv/,申请一个证书,选择“Request a certificate”,点击下一步选择高级申请选择Submit a certificate request to this CA using a form.”,点击下一步,出现证书申请页面,填写姓名,电子邮件,等信息,点击提交。系统提示如下:
证书挂起

您的证书申请已经收到。不过,您必须等待管理员发布您申请的证书。

请在一天或两天内回到此 web 站点以检索您的证书。

注意: 您必须用 web 浏览器在 10 天内返回以检索您的证书

8.在服务器端,打开证书颁发机构,打开待定申请列表,对申请的证书进行颁发。

9.在客户端打开IE,打开http://localhost/certsrv/,选择Check on a pending certificate,点击下一步,到证书已发布页面,点击证书安装。

10.关闭IE,然后重新打开IE,输入https://localhost/kosoft/index.aspx,便可以访问。

 

关于证书的有效日期

默认情况下,独立证书颁发机构 CA 签发的证书的有效期是一年。一年之后证书即过期,其使用将不再受信任。但在某些情况下,您可能必须要覆盖由中介或发证 CA 所签发的证书的默认终止日期。

 

注册表中定义的有效期限会影响所有由独立 CA 和企业 CA 签发的证书。对于企业 CA,默认注册表设置为两年。对于独立的 CA,默认注册表设置为一年。对于由独立 CA 签发的证书,其有效期限由本文稍后介绍的注册表项确定。该值适用于所有 CA 签发的证书。

 

对于企业 CA 签发的证书,其有效期限硬编码在用来创建证书的模板中。Windows 2000 Windows Server 2003 不支持对这些模板的修改。模板有效期限适用于所有由企业 CA 签发的证书。对于从属 CA 证书模板不存在例外。由 CA 签发的证书的有效期为下列时间段中的最短者: 本文前面提到的注册表中定义的有效期。

模板定义的有效期。这只适用于企业 CA

CA 证书的终止日期。

注意:“请求属性”名由伴随此请求并指定有效期限的值字串符对构成。默认情况下,它只能通过针对独立 CA 的注册表设置启用。

更改 Windows Server 2003 Windows 2000 Server 证书颁发机构所签发证书的终止日期

要更改 CA 的有效期限设置,请按照下列步骤操作:

1. 单击“开始”,然后单击“运行”。

2. 在“打开”框中,键入 regedit,然后单击“确定”。

3. 找到并随后单击下面的注册表项:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\CertSvc\Configuration\<CAName>

4. 在右窗格中,双击“ValidityPeriod”。

5. 在“数值数据”框中,键入以下时间单位之一,然后单击“确定”: Days

Weeks

Months

Years

6. 在右窗格中,双击“ValidityPeriodUnits”。

7. 在“数值数据”框中,键入您希望的数值,然后单击“确定”。例如,键入 2

8. 停止,然后重新启动“证书服务”服务。为此,请按下列步骤操作:

a.  单击“开始”,然后单击“运行”。

b.  在“打开”框中,键入 cmd,然后单击“确定”。

c.  在命令提示符处,键入下列命令行。在每一行之后按 Enter 键。

net stop certsvc

net start certsvc

d.  键入 exit 退出命令提示窗口。

 

 Word文档下载:http://www.cnblogs.com/Files/arping/如何使网站基于CA认证访问.rar