说到网络,大家都会相到它给我们带来了很多的方便;但网络为我们的工作提供了极大的方便,有时在网络数据传输过程中被窃听或篡改也是时常有之发生;应为我们常用的“Http协议”是以明文的方式进行数据传输,没有采用任何加密手段,所以对于一些安全性较高的网站,如果没有采用加密的话,很难保证重要数据的万无一失;
SSL加密就提供了一种方便的加密方式;安全套接字层 (SSL) 是一组提供身份验证、保密性和数据完整性的加密技术。SSL 最常用于在 Web 浏览器和 Web 服务器之间创建一个安全通讯信道。它也可以用于保证客户端应用程序和 Web 服务之间的通讯安全。
要支持 SSL 通讯,必须用一个 SSL 证书对 Web 服务器进行配置。本模块描述了如何获得 SSL 证书,以及如何配置 Microsoft Internet 信息服务 (IIS) 来支持与 Web 浏览器和使用 SSL 的其他类型客户端应用程序之间的安全通讯。
在一些重要数据传输或身份验证时采用SSL加密就可以在保护到数据的安全性;SSL加密的目录访问是将http改成https开头的
如何建立一个自己的SSL安全证书保护我们的网站呢?(以下用自己建立的证书颁发中心给自己颁发证书)
以下分为5个步骤:
l 生成一个证书申请
l 提交一个证书申请
l 颁发证书
l 在WEB服务器上安装证书
l 将资源配置为需要SSL访问
生成一个证书申请
此过程将创建一个新的证书申请,这个申请可以发送到一个证书颁发机构 (CA) 来进行处理。如果成功,CA 会向您发送回一个文件,其中含有一个已经过验证的证书。
要生成一个证书申请,请执行下列操作:
1. | 启动 IIS Microsoft 管理控制台 (MMC) 管理单元。 | ||||
2. | 展开您的 Web 服务器名称,然后选择要安装证书的 Web 站点。 | ||||
3. | 右击此 Web 站点,然后单击 属性。 | ||||
4. | 单击 目录安全性 选项卡。 | ||||
5. | 单击 安全通信 内的 服务器证书 按钮启动 Web 服务器证书向导。 注 如果 服务器证书 不可用,则可能是选择了一个虚拟目录、目录或文件。返回到步骤 2 并选择一个 Web 站点。 | ||||
6. | 单击 下一步 跳过欢迎对话框。 | ||||
7. | 单击 创建一个新证书,然后单击 下一步。 | ||||
8. | 此对话框具有以下两个选项:
| ||||
9. | 单击现在准备申请,但稍后发送,然后单击 下一步。 | ||||
10. | 在 名称 字段中为证书输入一个描述性名称,在 Bitlen gt h 字段中为密钥输入一个位长,然后单击 下一步。 向导将当前 Web 站点的名称用作默认名。它不会用在此证书中,但可以作为一个友好的名称来帮助管理员。 | ||||
11. | 在 组织 字段中输入一个公司名称(例如,Contoso),然后在 组织alunit 字段中输入一个公司部门名称(例如,销售部),然后单击 下一步。 注 此信息将被放到证书申请中,因此应确保其准确性。CA 将验证此信息并将其放到证书中。浏览您 Web 站点的用户将需要查看此信息,以便决定是否应接受此证书。 | ||||
12. | 在 公用名 字段中,为您的站点输入一个公用名,然后单击 下一步。 重要说明 公用名称是最终获得证书的最重要信息之一。它是 Web 站点的 DNS 名称(即用户在浏览您的站点时输入的名称)。如果证书名称与站点名称不匹配,则在用户浏览到此站点时系统会报告一个证书问题。 如果您的站点在 Web 上,并且被命名为 www.contoso.com,这就是您应该指定的公用名。 如果您的站点是内部站点,并且用户按计算机名称来浏览,则应该输入计算机的 NetBIOS 或 DNS 名称。 | ||||
13. | 在 Country/Region、State/province和 City/locality 字段中输入适当信息,然后单击 下一步。 | ||||
14. | 为证书申请输入一个文件名称。 此文件中包含类似下面这样的信息。 -----BEGIN NEW CERTIFICATE REQUEST-----
MIIDZjCCAs8CAQAwgYoxNjA0BgNVBAMTLW1penJvY2tsYXB0b3Aubm9ydGhhbWVy??
-----END NEW CERTIFICATE REQUEST-----
这是您的证书申请的一种 Base 64 编码表示形式。此申请中包含输入到向导中的信息,还包含您的公钥和用您的私钥签名的信息。 这个申请文件将被发送到 CA。然后 CA 会使用证书申请中的公钥信息来验证用您的私钥签名的信息。CA 还验证申请中提供的信息。 在向 CA 提交申请之后,CA 会发送回一个包含在文件中的证书。然后需要重新启动 Web 服务器证书向导。 | ||||
15. | 单击 下一步。向导将显示证书申请中所含信息的摘要。 | ||||
16. | 单击 下一步,然后单击 Finish 来完成申请过程。 现在可以将证书申请发送到某个 CA 来进行验证和处理了。当您从 CA 收到证书响应之后,就可以再次使用 IIS 证书向导,在 Web 服务器上继续安装证书。 |
提交一个证书申请
此过程使用 Microsoft 证书服务来提交前一过程中生成的证书申请。
要提交一个证书申请,请执行下列操作:
1. | 使用记事本打开前一过程中生成的证书文件,并将其全部内容复制到剪贴板。 |
2. | 启动 Internet Explorer 并导航到 http:// hostname/CertSrv,其中 hostname 是运行 Microsoft 证书服务的计算机的名称。 |
3. | 单击 申请证书,然后单击 下一步。 |
4. | 在 选择申请类型 页上,单击 高级申请,然后单击 下一步。 |
5. | 在 高级证书申请 页上,单击 使用 base64 编码的 PKCS #10 文件提交一个证书申请,或使用 base64 编码的 PKCS #7 文件更新证书申请。(Submit a certificate request using a base64 encoded PKCS#10 file),然后单击 下一步。 |
6. | 在 提交一个保存的申请页 上,在 Base64 Encoded Certificate Request (PKCS #10 or #7) 文本框中单击,然后按 CTRL+V 粘贴此前复制到剪贴板上的证书申请。 |
7. | 在 (附加属性)Certificate Template 组合框中,单击 WebServer。 |
8. | 单击 提交。 |
9. | 关闭 Internet Explorer。 |
颁发证书
要颁发证书,请执行下列操作:
1. | 从 管理工具(AdministrativeTools) 程序组启动 证书颁发机构(Certification Authority) 工具。 |
2. | 展开证书颁发机构,然后选择 待定申请(Pending Requests) 文件夹。 |
3. | 选择刚提交的证书申请。 |
4. | 在 操作(Action) 菜单上,指向 所有任务(All Tasks),然后单击 Issue。 |
5. | 确认证书显示在 颁发的证书(Issued Certificates) 文件夹中,然后双击它来查看其内容。 |
6. | 在 详细信息(Details) 选项卡上,单击 复制到文件(Copy to File),然后将证书保存为一个 Base-64 编码 X.509 证书。 |
7. | 关闭证书的属性窗口。 |
8. | 关闭“证书颁发机构”工具。 |
在 Web 服务器上安装证书
此过程在 Web 服务器上安装在前一过程中颁发的证书。
要在 Web 服务器上安装证书,请执行下列操作:
1. | 启动 Internet 信息服务(如果它尚未运行)。 |
2. | 展开您的服务器名称,然后选择要安装证书的 Web 站点。 |
3. | 右击此 Web 站点,然后单击 属性。 |
4. | 单击 目录安全性 选项卡。 |
5. | 单击 服务器证书 来启动 Web 服务器证书向导。 |
6. | 单击 Process the pending request and install the certificate,然后单击 下一步。 |
7. | 输入包含 CA 响应的文件的路径和文件名,然后单击 下一步。 |
8. | 检查证书概述,单击 下一步,然后单击 Finish。 现在,已在 Web 服务器上安装了证书。 |
将资源配置为需要 SSL 访问
此过程使用 Internet 服务管理器将一个虚拟目录配置为需要 SSL 访问。您可以要求对特定文件、目录或虚拟目录使用 SSL。客户端必须使用 HTTPS 协议来访问任何此类资源。
要将资源配置为需要 SSL 访问,请执行下列操作:
1. | 启动 Internet 信息服务(如果它尚未运行)。 |
2. | 扩展您的服务器名称和 Web 站点。(此站点必须是一个已安装有证书的 Web 站点。) |
3. | 右击某个虚拟目录,然后单击 属性。 |
4. | 单击 目录安全性 选项卡。 |
5. | 在 安全通信 下,单击 编辑。 |
6. | 单击 Require secure channel (SSL)。 现在,客户端要浏览到此虚拟目录,就必须使用 HTTPS。 |
7. | 单击 OK,然后再次单击 OK 关闭 属性 对话框。 |
8. | 关闭 Internet 信息服务。 |
以上只是建立了单向的证书,要实现双向的,需要在IIs--->属性--->目录安全--->编辑--->选中要求客户端证书.
备注: 如果sharepoint服务器与证书服务器不是同一台服务器的话,要在sharepoint服务器中安装证书颁发机构的插件 ,安装成"企业从属ca"类型(从证书服务器继承而来) ,我的理解是安装了他,sharepoint才能解开客户端发过来客户端证书(客户端证书是从证书服务器上申请的),否则解不开.