安全套接字层 (SSL) 是一套提供身份验证、保密性和数据完整性的加密技术。SSL 最常用来在 Web 浏览器和 Web 服务器之间建立安全通信通道。它也可以在客户端应用程序和 Web 服务之间使用。为支持 SSL 通信,必须为 Web 服务器配置 SSL 证书。本文介绍如何获取 SSL 证书,以及如何配置 Microsoft® Internet 信息服务 (IIS),以便支持 Web 浏览器和其他客户端应用程序之间使用 SSL 安全地进行通信。
一般情况下按照下文中SOP去做是不会有问题的,但是我碰到一个怪问题,安装CA后并没有在IIS中产生对应提交证书事情用的虚拟目录,网上搜了好久也没有找到原因,以为是添加CA组件有问题。这时候想起MCSE等证书也许可以帮到的哦,可惜我没有去学。
可能碰到的问题:没有CA认证服务 CA认证服务是Windows的一项服务,在Windows组件安装就好了。 安装了CA后 在IE中访问http://hostname/CertSrv提交证书请求时找不到网页 不要紧 在windows系统路径查找certSrv文件夹,把那个文件夹加到IIS虚拟目录(IIS都没有? 那搞什么SSL啊,先安装一个吧),再访问就可以按照下文操作了。注意ssl与不用ssl端口不一样,协议名字也不一样哦 ssl的要用https而不是http访问。如果不是受信的CA client端会发出警告,但是还是可以work的,在Windows domain环境下可以用domain信任的方式建CA而不用花钱到外部CA中心申请数字认证,如果只是内部用的话,比如内部mail,web,签核流程等等。
生成证书申请此过程创建一个新的证书申请,此申请可发送到证书颁发机构 (CA) 进行处理。如果成功,CA 将给您发回一个包含有效证书的文件。
- 生成证书申请1.启动 IIS Microsoft 管理控制台 (MMC) 管理单元。
- 展开 Web 服务器名,选择要安装证书的 Web 站点。
- 右键单击该 Web 站点,然后单击“属性”。
- 单击“目录安全性”选项卡。
- 单击“安全通信”中的“服务器证书”按钮,启动 Web 服务器证书向导。注意:如果“服务器证书”不可用,可能是因为您选择了虚拟目录、目录或文件。返回第 2 步,选择 Web 站点。
- 单击“下一步”跳过欢迎对话框。
- 单击“创建一个新证书”,然后单击“下一步”。
- 该对话框有以下两个选项: “现在准备申请,但稍后发送”该选项总是可用的。 “立即将申请发送到在线证书颁发机构”仅当 Web 服务器可以在配置为颁发 Web 服务器证书的 Windows 2000 域中访问一个或多个 Microsoft 证书服务器时,该选项才可用。在后面的申请过程中,您有机会从列表中选择将申请发送到的颁发机构。单击“现在准备申请,但稍后发送”,然后单击“下一步”。
- 在“名称”字段中键入证书的描述性名称,在“位长”字段中键入密钥的位长,然后单击“下一步”。向导使用当前 Web 站点名称作为默认名称。它不在证书中使用,但作为友好名称以助于管理员识别。
- 在“组织”字段中键入组织名称(例如 Contoso),在“组织单位”字段中键入组织单位(例如“销售部”),然后单击“下一步”。 注意:这些信息将放在证书申请中,因此应确保它的正确性。CA 将验证这些信息并将其放在证书中。浏览您的 Web 站点的用户需要查看这些信息,以便决定他们是否接受证书。
- 在“公用名”字段中,键入您的站点的公用名,然后单击“下一步”。重要说明:公用名是证书最后的最重要信息之一。它是 Web 站点的 DNS 名称(即用户在浏览您的站点时键入的名称)。如果证书名称与站点名称不匹配,当用户浏览到您的站点时,将报告证书问题。如果您的站点在 Web 上并且被命名为 www.contoso.com,这就是您应当指定的公用名。如果您的站点是内部站点,并且用户是通过计算机名称浏览的,请输入计算机的 NetBIOS 或 DNS 名称。
- 在“国家/地区”、“州/省”和“城市/县市”等字段中输入正确的信息,然后单击“下一步”。
- 输入证书申请的文件名。该文件包含类似下面这样的信息。
-----BEGIN NEW CERTIFICATE REQUEST-----MIIDZjCCAs8CAQAwgYoxNjA0BgNVBAMTLW1penJvY2tsYXB0b3Aubm9ydGhhbWVy...-----END NEW CERTIFICATE REQUEST-----
这是您的证书申请的 Base 64 编码表示形式。申请中包含输入到向导中的信息,还包括您的公钥和用您的私钥签名的信息。 将此申请文件发送到 CA。然后 CA 会使用证书申请中的公钥信息验证用您的私钥签名的信息。CA 也验证申请中提供的信息。当您将申请提交到 CA 后,CA 将在一个文件中发回证书。然后您应当重新启动 Web 服务器证书向导。
14.单击“下一步”。该向导显示证书申请中包含的信息概要。
15.单击“下一步”,然后单击“完成”完成申请过程。
证书申请现在可以发送到 CA 进行验证和处理。当您从 CA 收到证书响应以后,可以再次使用 IIS 证书向导,在 Web 服务器上继续安装证书。提交证书申请此过程使用 Microsoft 证书服务提交在前面的过程中生成的证书申请。
提交证书申请
- 使用“记事本”打开在前面的过程中生成的证书文件,将它的整个内容复制到剪贴板。
- 启动 Internet Explorer,导航到 http://hostname/CertSrv,其中 hostname 是运行 Microsoft 证书服务的计算机的名称。
- 单击“申请一个证书”,然后单击“下一步”。
- 在“选择申请类型”页中,单击“高级申请”,然后单击“下一步”。
- 在“高级证书申请”页中,单击“使用 Base64 编码的 PKCS#10 文件提交证书申请”,然后单击“下一步”。
- 在“提交一个保存的申请”页中,单击“Base64 编码的证书申请(PKCS #10 或 #7)”文本框,按住 CTRL+V,粘贴先前复制到剪贴板上的证书申请。
- 在“证书模板”组合框中,单击“Web 服务器”。
- 单击“提交”。9.关闭 Internet Explorer。
颁发证书? 颁发证书
- 从“管理工具”程序组中启动“证书颁发机构”工具。
- 展开您的证书颁发机构,然后选择“挂起的申请”文件夹。
- 选择刚才提交的证书申请。
- .在“操作”菜单中,指向“所有任务”,然后单击“颁发”。
- 确认该证书显示在“颁发的证书”文件夹中,然后双击查看它。
- 在“详细信息”选项卡中,单击“复制到文件”,将证书保存为 Base-64 编码的 X.509 证书。
- 关闭证书的属性窗口。
- 关闭“证书颁发机构”工具。在 Web 服务器上安装证书此过程在 Web 服务器上安装在前面的过程中颁发的证书。
在 Web 服务器上安装证书
- 如果 Internet 信息服务尚未运行,则启动它。
- 展开您的服务器名称,选择要安装证书的 Web 站点。
- 右键单击该 Web 站点,然后单击“属性”。
- 单击“目录安全性”选项卡。
- 单击“服务器证书”启动 Web 服务器证书向导。
- 单击“处理挂起的申请并安装证书”,然后单击“下一步”。
- 输入包含 CA 响应的文件的路径和文件名,然后单击“下一步”。
- 检查证书概述,单击“下一步”,然后单击“完成”。
现在,已在 Web 服务器上安装了证书。将资源配置为要求 SSL 访问此过程使用 Internet 服务管理器,将虚拟目录配置为要求 SSL 访问。您可以为特定的文件、目录或虚拟目录要求使用 SSL。客户端必须使用 HTTPS 协议访问所有这类资源。
将资源配置为要求 SSL 访问
- 如果 Internet 信息服务尚未运行,则启动它。
- 展开您的服务器名称和 Web 站点。(这必须是已安装证书的 Web 站点)
- 右键单击某个虚拟目录,然后单击“属性”。
- 单击“目录安全性”选项卡。
- 单击“安全通信”下的“编辑”。
- 单击“要求安全通道 (SSL)”。现在客户端必须使用 HTTPS 浏览到此虚拟目录。
- 单击“确定”,然后再次单击“确定”关闭“属性”对话框。
- 关闭 Internet 信息服务。
[此贴子已经被作者于2009-2-12 9:39:47编辑过]