Windows下基于IIS服务的SSL服务器的配置

实验环境

  • Windows Server 2008 R1(CA)
  • Windows Server 2008 R2(web服务器)
  • Windows 7 x64(客户端)
  • 3台虚拟机打开桥接模式,保证能够相互ping通

实验原理

  • CA(根CA)负责为服务器颁发证书使得服务器证书可信。
  • 服务器下载IIS组建,向CA申请一个SSL证书,并且将此证书与本机IP绑定。最后打开SSL服务。
  • 客户端信任CA,因此可以安全地访问服务器网址。

实验步骤

安装证书服务

  • 打开Windows Server 2008 R1,配置主机角色
  • 在“开始”菜单中的管理工具中选择“服务器管理器”,选择“添加角色”,在服务器角色中选中“Active Directory证书服务”后,点击“下一步”。

  • 在“角色服务”中选择“证书颁发机构”和“证书颁发机构Web注册”两项服务,点击“下一步”。

  • 在“安装类型”中选择“独立”选项,安装一个独立根CA,点击“下一步”。

  • 在“CA类型”中选择“根CA”选项,点击“下一步”。

  • 在“私钥”中选择“新建私钥”选项,配置私钥,点击“下一步”。

  • 在“私钥”中的“加密”配置中选择“SHA1”算法,配置加密方式,点击“下一步”。

  • 在“私钥”中的“CA名称”配置中填写CA的公用名称,点击“下一步”。

  • 在“私钥”中的“有效期”配置中选择“5年”,点击“下一步”。

  • 在“证书数据库”中默认证书数据库位置和证书数据库日志位置,点击“下一步”。

  • 成功配置独立根CA,点击“下一步”。

  • 成功安装独立根CA。

Web服务器证书申请与配置

  • 打开Windows Server 2008 R2
  • 创建主机角色。在“开始”菜单中的管理工具中选择“服务器管理器”,选择“添加角色”,在服务器角色中选中“Web服务器(IIS)”后,之后全部默认配置。
    (该过程与创建独立根CA时类似,不作过多描述。)

  • 在“开始”菜单中的管理工具中选择IIS管理器,进入本机主页,选择“服务器证书”

  • 在右侧选择“创建证书申请”,打开cmd查询本机IP,在通用名称处填本机IP,其他信息任意填写,填满后选择“下一步”,加密服务默认设置,再选择“下一步”。

  • 文件名填成:“本机IP.cert.txt”格式,点击完成,可以在指定路径处看到txt文件。

  • 打开浏览器,进入网址“http://CA的IP/certsrv

  • 在浏览器中选择“工具”,再选择“Internet选项”

  • 选择“安全”,为Internet设置“自定义级别”,将图示部分勾选为启用。

  • 选择“可信站点”,选择“站点”,点击“添加”,把CA站点添加到可信区域。点击确定完成设置。

  • 选择“申请证书”,选择“高级证书申请”,选择图示选项。

  • 将之前生成的txt粘贴至框内,选择“提交”。

  • 提交后可以看到提交成功的界面

  • 打开Windows Server 2008 R1(CA机),选择“开始”,打开管理工具中的“证书颁发机构”,点击“挂起的申请”,可以看到我们刚才发出的申请。右键该申请,并选择“所有任务”,“颁发”。

  • 回到Windows Server 2008 R2(服务器机),重新进入网址“http://CA的IP/certsrv”,选择“查看挂起的证书申请的状态”,可以看到一个“保存的申请证书”,选择“DER编码”,并下载证书链。

  • 将证书链保存至桌面,并且打开,安装两个证书。CA证书放在“受信任的根证书”下,服务其证书放在“个人”下。

  • 选择“开始”,在对话框输入mmc,打开控制台。选择“文件”,“添加/删除管理单元”

  • 在左侧区域找到“证书”,点击“添加”,在弹出的框中选择“计算机账户”,选择“下一步”后默认设置

  • 在左边打开证书,进入“受信任的根证书颁发机构”的“证书”处,右键空白区域,选择“所有任务”,“导入”将证书链导入。

  • 进入“IIS管理器”,选择“完成证书申请”,导入证书链并随意取一个名称。

  • 右键网站,选择“编辑绑定”

  • 选择“添加”,将类型改为“https”,IP地址选择本机IP,SSL证书选择我们刚才导入的证书(好记名称)

  • 选择“SSL”设置,勾选“要求ssl”

  • 至此完成web服务器证书的申请与配置

客户端证书申请及配置

  • 打开Windows 7 x64(客户端)
  • 要想让客户端访问web服务器,客户端浏览器必须信任独立根CA。
  • 进入根CA证书申请界面“http://CA的IP/certsrv
  • 首先设置客户端浏览器安全级别以及可信站点。过程与服务器配置中相同
  • 选择“下载CA证书、证书链或CRL”,选择“下载CA证书链”,按提示步骤将CA安装到”受信任的根证书颁发机构“下。

  • 浏览器输入“http://web服务器IP”,发现提示访问被拒绝。

  • 浏览器输入“https://web服务器IP”,成功访问服务器,说明此时web服务器已经配置成功。标志客户端与服务器之间成功通过SSL加密信道进行通信。

Windows下基于IIS服务的SSL服务器的配置的更多相关文章

  1. windows下基于IIS配置ssl证书遇到的坑

    前几天配置windows下基于IIS配置ssl证书 完全按照步骤执行 绑定https网址后,一直显示:无法访问此网站 检查了443端口,还有防火墙限制,没发现什么 足足困扰了我好几天 后来突然想到前不 ...

  2. windows下基于IIS配置ssl证书

    我这边用的是阿里云的免费证书,下面展示一下操作步骤. 首先登陆阿里云,搜索ssl证书进入ssl证书控制台.点击购买 然后选择免费版,配置如下: 选择立即购买,购买成功后回到ssl控制台即可查看证书.然 ...

  3. Windows下Apache+Tomcat+jsp+php的服务器整合配置经验总结

    对于Apache+Tomcat+jsp+php的整合,针对不同的Tomcat和apache的版本,稍微有些区别. 一.所需软件 (1)JDK: jdk-7u15-windows-x64.exejdk的 ...

  4. Windows下基于http的git服务器搭建-gitstack

    版权声明:若无来源注明,Techie亮博客文章均为原创. 转载请以链接形式标明本文标题和地址: 本文标题:Windows下基于http的git服务器搭建-gitstack     本文地址:http: ...

  5. Windows 下开启FTP服务并创建FTP用户

    Windows 下开启FTP服务,并创建用户 此教程教你怎么开启 Windows 的 FTP 服务,并创建用于登入 FTP 的用户.教程用到的操作系统是 Windows 7. 一.创建用于登入 FTP ...

  6. [转]Windows 下 Nginx+IIS 使用

    本文转自:https://blog.csdn.net/chihen/article/details/52698594 Windows 下 Nginx+IIS 使用 一.Nginx简介 Nginx (& ...

  7. Windows下当地RabbitMQ服务的安装

    Windows下本地RabbitMQ服务的安装 本文参考:刘若泽相关技术文档 当然这些内容页可以通过RabbitMQ官方网站获得. RabbitMQ配置说明手册 一.RaibbitMQ服务器配置 1. ...

  8. windows下利用iis建立网站网站并实现局域共享

    博客园 首页 新随笔 联系 管理 订阅 随笔- 54  文章- 9  评论- 0  Windows下利用IIS建立网站并实现局域网共享 https://blog.csdn.net/qq_4148541 ...

  9. windows 下使用 Filezilla server 搭建 ftp 服务器

    windows 下使用 Filezilla server 搭建 ftp 服务器 1. Filezilla server 免费,开源, ftp 服务端 2. 下载安装, windows  https:/ ...

随机推荐

  1. Qt 接受拖放

    第一步:在构造函数里面 添加拖放支持,相当于总开关(注意这里设置之后是整个窗口可以接受拖放) setAcceptDrops(true); 第二步:重写接受拖放相关的虚函数 void dragEnter ...

  2. git提交代码并将develop分支合并到master分支上

    提交合并代码流程: git add .git commit -m ''git pushgit checkout mastergit merge develop //将develop 分支与master ...

  3. 跨服务器查询sql语句样例(转)

    若2个数据库在同一台机器上: insert into DataBase_A..Table1(col1,col2,col3----) select col11,col22,col33-- from Da ...

  4. Linux下MySQL的数据文件存放在哪里的??

    http://bbs.csdn.net/topics/390620630 mysql> show variables like '%dir%';+------------------------ ...

  5. Python——字符串增加颜色

    给显示字符添加颜色: salary=int(input('\033[31;1m请输入你的工资:\033[0m')) ('\033[;1m请输入你的工资:\033[0m') 3x是给字符串改变颜色 31 ...

  6. PLC编程的基础知识的总结

    1.Programmable Logic Controller   PLC 代替计算机实现复杂的逻辑控制系统  ,可编程控制器是一种数字运算操作电子系统,转门在工业控制系统中使用而设计的,采用一种可以 ...

  7. 【HICP Gauss】数据库 环境的搭建 -1

    1.安装规则    1.主机名必须网络唯一  2.主机名必须两位数以上 可以中划线 不能下划线  3.固定IP地址  4.端口号 1888 新增账户 omm 用户组 dbgrp ,家目录 /home/ ...

  8. js中绑定事件处理函数,使用event以及传递额外数据

    IE8中使用attachEvent绑定事件处理函数时,不能直接向event 对象添加数据属性.可以用属性复制的方法,包装新的event对象. 1. 属性复制var ObjectExtend = fun ...

  9. 初识python多线程

    目录 GIL锁 Thread类构造方法 Lock类.Rlock类 参考: python3多线程--官方教程中文版 python多线程-1 python多线程-2.1 python多线程-2.2 pyt ...

  10. .net框架-数组(Array)& ArrayList & List

    数组(Array)特点: 初始化时规定长度 元素类型相同 数据存储连续,效率高 System.Collections.ArrayList : 初始化时无需规定长度,长度随存储的数据动态扩充与收缩 元素 ...