曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 4923|回复: 0
打印 上一主题 下一主题

[PKI/SSL] SSL 网站的搭建与证书的申请

[复制链接]

716

主题

734

帖子

2946

积分

超级版主

Rank: 9Rank: 9Rank: 9

积分
2946
跳转到指定楼层
楼主
发表于 2014-3-18 16:54:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在互联网上随处可见网址以 https 开头的网站,这些都是 SSL 网站。基于 SSL 的网站,必须申请 SSL 证书,这样网站才具备 SSL 安全连接能力。
如果网站是面向互联网用户服务的,那么网站需要向商业 CA 来申请证书,如 VeriSign 。如果网站是面向企业员工,业务合作伙伴的,那么只要自行假设 CA,并向此 CA 申请证书即可。下面将演示 SSL 网站的搭建与设置。

在这次的实验中,将利用到 3 台计算机,一台用来搭建 SSL 网站(IP : 192.168.2.90),另一台用来安装独立根 CA(IP : 192.168.2.98,名称为 GROAD-CA),第三台则用来当作客户机。

假设,SSL 网站的计算机的网址为 www.groad.net

同时,作为根 CA 的服务器里,也装有 DNS,并做了 groad.net 的正向查找区域,还有建立了 www.groad.net 的 A 记录。

由于独立 CA 默认不会自动发放证书,因此需要等 CA 管理员手动发放证书后,再通过浏览器连接 CA 来下载证书。

首先,网站服务器和客户机都应该信任发放 SSL 证书的 CA,否则浏览器在以 https(SSL) 连接网站时会显示警告信息:


由于这次实验所使用的 CA 是独立的根 CA,而 WEB 服务器及客户机也没加入域,因此我们需要在这两台计算机上手动执行信任 CA 的步骤。然而,如果是企业 CA,且 WEB 服务器和客户机都位于于中的话,那它们都会自动信任此企业 CA。

手动信任 CA 的方法和步骤可参考帖子《安装 AD CS 与架设根 CA》,这里就不赘述了。

现在,在 WEB 服务器上创建证书申请文件。IIS WEB 服务器要获得证书,需要向 CA 申请:
“管理工具” --> “Internet 信息服务(IIS)管理器” --> 单击左侧“起始页”下的服务器图标 --> 双击打开右侧的 “服务器证书”:



然后单击右边栏的 “创建证书申请”:


接着填写 “可分辨名称属性”,其中 “通用名称” 一般为你的网站网址,然后单击 “下一步”:


保持默认的 “加密服务提供程序属性”,然后单击 “下一步”:


填写一个为证书申请的文件名,实际上就相当于一个申请表,然后单击 “完成” 按钮:



仍然还在 WEB 服务器上操作,为了方便起见,现在 “服务器管理器” 里关掉 IE 的 “IP SEC”:



接下来,在 IE 的地址栏里输入独立根 CA 的证书申请网址(http://192.168.2.98/certsrv ):



点击上图中的 “申请证书、高级证书申请” 链接:



点击上图中的 “高级证书申请” 链接:



单击上图中红色框中的链接,这时会看到一个 “保存的申请”文本框,这里面要求填入 Base-64 编码的证书申请。我们将上面的 webcert.txt 中的内容复制,并粘贴到其中:



这就是 CSR (Certificate Secure Request)文件,是一个公钥,系统产生的私钥由 WEB 服务器自己保存。

粘贴进去后,单击 “提交” 按钮,然后会看到:



由于独立 CA 默认是不自动发放证书的,用户提交的证书申请,需要由 CA 系统管理员审核,然后再发放。

现在我们转到 CA 这边来,可以看到:


然后执行,“开始” --> “管理工具” --> “证书颁发机构” --> “挂起的申请” --> 右击申请 --> “所有任务” --> “颁发” :




现在回到 WEB 服务器这边来,打开 IE,连接到 CA (如 http://192.168.2.98/certsrv),然后点击 “查看挂起的证书的申请的状态”:



单击 “保存的申请证书”:



点击 “下载证书” 并保存到本地:



打开 IIS 管理器,单击 “完成证书申请”:



选择刚下载的证书,并填写一个好记的名称,并单击 “确定”按钮:



在 IIS 管理器里可以看到申请过来的服务器证书已经在其中了:



在 IIS 管理器中,选择一个站点,这里的名字是 groad,单击右侧栏里的 “绑定” 按钮:



在弹出的 “网站绑定” 对话框中,单击 “添加” 按钮,然后选择的网站类型为 https,IP 地址,443 端口,以及证书:



假如在点击上图中“确定”按钮后,有提示“证书链中的一个或多个中间证书丢失”的警告框,那么说明 WEB 服务器里还没有信任根 CA:



现在,我们在网站的首页里做一个默认的首页,其代码是:
[HTML] 纯文本查看 复制代码
<html>
<body>
<h2 align=center><b>曲径通幽网上商城</b></h2>
<center>
<a href="https://www.groad.net/shop/">欢迎,网上商城使用安全的SSL连接,请放心购物</a>
</body>
</html>


将 SSL 的链接放在一个子目录中的原因是,并不希望全站都都用 SSL 来通讯,这样会加重整个服务器负担,也会影响通讯质量,而只是将有必要的地方加上 SSL,比如网上商城:



使用 XP 自带的 IE6 浏览器点击上面的链接,可以看到安全提示:





如果出现上面的警告对话框(提示没有选定信任的公司颁发),可以单击 “是” 按钮继续浏览(不推荐);也可以先信任根 CA 后再次浏览,这样就不会看到上述的警告,最后可以看到:


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2024-5-19 02:40 , Processed in 0.066810 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表