打造IIS网站的专用“护心甲”—实战SSL加密

原创 2004年07月12日 12:09:00
Windows网络操作系统内置的IIS是大家最常用的Web服务器。但在系统默认配置下,IIS使用的是“HTTP协议”以明文形式传输数据,没有采用任何加密手段,传输的重要数据很容易被窃取。这对于一些安全性要求高的网站来说,是远远不够的。为了保证重要数据的万无一失,IIS也提供了SSL安全加密机制,下面就向大家介绍如何在IIS服务器中使用SSL安全加密机制。

  笔者以Windows Server 2003(简称Windows 2003)系统为例,介绍如何在IIS6服务器中应用SSL安全加密机制功能。要想为某个IIS网站创建数字证书,首先必须使用“Web服务器证书向导”功能为该网站生成一个证书请求文件。进入“控制面板→管理工具→Internet 信息服务(IIS)管理器”,在IIS管理器窗口中展开“网站”目录,右键点击要使用SSL安全加密机制功能的网站,在弹出菜单中选择“属性”,然后切换到“目录安全性”标签页,接着点击“服务器证书”按钮。在“IIS证书向导”窗口中选择“新建证书”选项,点击“下一步”,选中“现在准备证书请求,但稍后发送”,接着在“名称”栏中为该证书起个名字,在“位长”下拉列表中选择“密钥的位长”,这里要注意,位长不能设置的过大,否则会影响通信质量;接着设置证书的单位、部门、和地理信息,在站点“公用名称栏”中输入该网站的域名,然后指定证书请求文件的保存位置,这里笔者将该证书请求文本文件保存在“d\certreq.txt”。这样就完成了证书请求文件的生成。

  申请IIS网站证书

  完成了证书请求文件的生成后,就可以开始申请IIS网站证书了。但这个过程需要证书服务(Certificate Services)的支持。Windows 2003系统默认状态没安装此服务,需要手工添加。

  ● 安装证书服务

  在“控制面板”中运行“添加或删除程序”,切换到“添加/删除Windows组件”页,在“Windows组件向导”对话框中,选中“证书服务”选项,接下来选择CA类型,这里笔者选择“独立根CA”,然后为该CA服务器起个名字,设置证书的有效期限,建议使用默认值“5年”即可,最后指定证书数据库和证书数据库日志的位置后,就完成了证书服务的安装。

  完成了证书服务的安装后,就能开始申请IIS网站证书了。运行Internet Explorer浏览器,在地址栏中输入“localhost/CertSrv/default.asp”。接着在“Microsoft 证书服务”欢迎窗口中点击“申请一个证书”链接,然后在证书申请类型中点击“高级证书申请”链接,在高级证书申请窗口中点击“使用BASE64编码的CMC或PKCS#10文件提交….”链接,接着将证书请求文件的内容复制到“保存的申请”输入框中,这里笔者的证书请求文件内容保存在“d:/certreq.txt”,最后点击“提交”按钮。

  颁发IIS网站证书

  虽然完成了IIS网站证书的申请后,但这时它还处于挂起状态,需要颁发后才能生效。在“控制面板→管理工具”中,运行“证书颁发机构”程序。在“证书颁发机构”左侧窗口中展开目录,选中“挂起的申请”目录,在右侧窗口找到刚才申请的证书,鼠标右键点击该证书,选择“所有任务→颁发”。

  接着点击 “颁发的证书”目录,打开刚刚颁发成功的证书,在 “证书”对话框中切换到“详细信息”标签页。点击“复制到文件”按钮,弹出证书导出对话框,一路下一步,在“要导出的文件”栏中指定文件名,这里笔者保存证书路径为“d:/cce.cer”,最后点击“完成”。

  导入IIS网站证书

  在IIS管理器的“目录安全性”标签页中,点击“服务器证书”按钮,这时弹出“挂起的证书请求”对话框,选择“处理挂起的请求并安装证书”选项,点击“下一步”后,指定好刚才导出的IIS网站证书文件的位置,接着指定SSL使用的端口,建议使用默认的“443”,最后点击“完成”按钮

  配置IIS服务器

  完成了证书的导入后,IIS网站这时还没有启用SSL安全加密功能,需要对IIS服务器进行配置。

  在“目录安全性”标签页,点击安全通信栏的“编辑”按钮,选中“要求安全通道(SSL)”和“要求128位加密”选项,最后点击“确定”按钮即可。

  接着点击“身份验证和访问控制”栏的“编辑”按钮,在对话框中取消“启用匿名访问”和“集成Windows身份验证”选项,这里要选中“基本身份验证”选项,最后点击“确定”按钮。

U571P2T1D379608F14DT20040624112229.jpg
图1

  Windows网络操作系统内置的IIS是大家最常用的Web服务器。但在系统默认配置下,IIS使用的是“HTTP协议”以明文形式传输数据,没有采用任何加密手段,传输的重要数据很容易被窃取。这对于一些安全性要求高的网站来说,是远远不够的。为了保证重要数据的万无一失,IIS也提供了SSL安全加密机制,下面就向大家介绍如何在IIS服务器中使用SSL安全加密机制。

  笔者以Windows Server 2003(简称Windows 2003)系统为例,介绍如何在IIS6服务器中应用SSL安全加密机制功能。要想为某个IIS网站创建数字证书,首先必须使用“Web服务器证书向导”功能为该网站生成一个证书请求文件。进入“控制面板→管理工具→Internet 信息服务(IIS)管理器”,在IIS管理器窗口中展开“网站”目录,右键点击要使用SSL安全加密机制功能的网站,在弹出菜单中选择“属性”,然后切换到“目录安全性”标签页,接着点击“服务器证书”按钮。在“IIS证书向导”窗口中选择“新建证书”选项,点击“下一步”,选中“现在准备证书请求,但稍后发送”,接着在“名称”栏中为该证书起个名字,在“位长”下拉列表中选择“密钥的位长”,这里要注意,位长不能设置的过大,否则会影响通信质量;接着设置证书的单位、部门、和地理信息,在站点“公用名称栏”中输入该网站的域名,然后指定证书请求文件的保存位置,这里笔者将该证书请求文本文件保存在“d\certreq.txt”。这样就完成了证书请求文件的生成。

  申请IIS网站证书

  完成了证书请求文件的生成后,就可以开始申请IIS网站证书了。但这个过程需要证书服务(Certificate Services)的支持。Windows 2003系统默认状态没安装此服务,需要手工添加。

  ● 安装证书服务

  在“控制面板”中运行“添加或删除程序”,切换到“添加/删除Windows组件”页,在“Windows组件向导”对话框中,选中“证书服务”选项,接下来选择CA类型,这里笔者选择“独立根CA”,然后为该CA服务器起个名字,设置证书的有效期限,建议使用默认值“5年”即可,最后指定证书数据库和证书数据库日志的位置后,就完成了证书服务的安装。

  完成了证书服务的安装后,就能开始申请IIS网站证书了。运行Internet Explorer浏览器,在地址栏中输入“localhost/CertSrv/default.asp”。接着在“Microsoft 证书服务”欢迎窗口中点击“申请一个证书”链接,然后在证书申请类型中点击“高级证书申请”链接,在高级证书申请窗口中点击“使用BASE64编码的CMC或PKCS#10文件提交….”链接,接着将证书请求文件的内容复制到“保存的申请”输入框中,这里笔者的证书请求文件内容保存在“d:/certreq.txt”,最后点击“提交”按钮。

  颁发IIS网站证书

  虽然完成了IIS网站证书的申请后,但这时它还处于挂起状态,需要颁发后才能生效。在“控制面板→管理工具”中,运行“证书颁发机构”程序。在“证书颁发机构”左侧窗口中展开目录,选中“挂起的申请”目录,在右侧窗口找到刚才申请的证书,鼠标右键点击该证书,选择“所有任务→颁发”。

  接着点击 “颁发的证书”目录,打开刚刚颁发成功的证书,在 “证书”对话框中切换到“详细信息”标签页。点击“复制到文件”按钮,弹出证书导出对话框,一路下一步,在“要导出的文件”栏中指定文件名,这里笔者保存证书路径为“d:/cce.cer”,最后点击“完成”。

  导入IIS网站证书

  在IIS管理器的“目录安全性”标签页中,点击“服务器证书”按钮,这时弹出“挂起的证书请求”对话框,选择“处理挂起的请求并安装证书”选项,点击“下一步”后,指定好刚才导出的IIS网站证书文件的位置,接着指定SSL使用的端口,建议使用默认的“443”,最后点击“完成”按钮

  配置IIS服务器

  完成了证书的导入后,IIS网站这时还没有启用SSL安全加密功能,需要对IIS服务器进行配置。

  在“目录安全性”标签页,点击安全通信栏的“编辑”按钮,选中“要求安全通道(SSL)”和“要求128位加密”选项,最后点击“确定”按钮即可。

  接着点击“身份验证和访问控制”栏的“编辑”按钮,在对话框中取消“启用匿名访问”和“集成Windows身份验证”选项,这里要选中“基本身份验证”选项,最后点击“确定”按钮。

U571P2T1D379608F14DT20040624112229.jpg
图1

  SSL安全加密机制

  SSL(Security Socket Layer)的中文全称是“加密套接字协议层”,是由Netscape公司推出的一种安全通信协议,它位于HTTP协议层和TCP协议层之间,能够对信用卡和个人信息提供较强的保护。SSL在客户和服务器之间建立一条加密通道,确保所传输的数据不被非法窃取,SSL安全加密机制功能是依靠使用数字证书来实现的。

  应用了SSL加密机制后,IIS服务器的数据通信过程如下:首先客户端与IIS服务器建立通信连接,接着IIS把数字证书与公用密钥发给客户端。然后使用这个公共密钥对客户端的会话密钥进行加密后,传递给IIS服务器,服务器端接收后用私人密钥进行解密,这时就在客户端和IIS服务器间创建了一条安全数据通道,只有被IIS服务器允许的客户才能与它进行通信。机制

  SSL(Security Socket Layer)的中文全称是“加密套接字协议层”,是由Netscape公司推出的一种安全通信协议,它位于HTTP协议层和TCP协议层之间,能够对信用卡和个人信息提供较强的保护。SSL在客户和服务器之间建立一条加密通道,确保所传输的数据不被非法窃取,SSL安全加密机制功能是依靠使用数字证书来实现的。

  应用了SSL加密机制后,IIS服务器的数据通信过程如下:首先客户端与IIS服务器建立通信连接,接着IIS把数字证书与公用密钥发给客户端。然后使用这个公共密钥对客户端的会话密钥进行加密后,传递给IIS服务器,服务器端接收后用私人密钥进行解密,这时就在客户端和IIS服务器间创建了一条安全数据通道,只有被IIS服务器允许的客户才能与它进行通信。

官方颁发的SSL证书与自签名证书结合实现网站双向认证

这是一个非常有趣的实验。 大家已经知道,一些SSL证书颁发机构颁发的证书,只是装在服务器端,让访问者通过SSL链接访问网站,并且可以向访问者证实网站的真实地址。但是,如果要限制网站的访问者,也就需要...
  • hejianzou
  • hejianzou
  • 2015年11月16日 13:08
  • 2106

HTTPS在SSL/TLS上的使用和配置(IIS8和iOS客户端)

HTTPS在SSL/TLS上的使用和配置(IIS8和iOS客户端) CA证书 1.域名型SSL证书(DV SSL):信任等级普通,只需验证网站的真实性便可颁发证书保护网站;一般是免费的 2...
  • u013538542
  • u013538542
  • 2017年02月09日 17:35
  • 1318

在windows2003的IIS6上建立https SSL加密的方法

从商业机构到政府部门再到个人家庭,越来越多的用户使用网络来处理事务,交流信息和进行交易活动,这些都不可避免地涉及到网络安全问题,尤其是认证和加密问题。特别是在网上进行购物交易活动中,必须保证交易双方能...
  • Mideveloper
  • Mideveloper
  • 2014年08月18日 16:34
  • 4364

服务器SSL不安全漏洞修复方案

关于SSL POODLE漏洞 POODLE = Padding Oracle On Downgraded Legacy Encryption.是最新安全漏洞(CVE-2014-3566)的代号,俗称...
  • u011078940
  • u011078940
  • 2016年06月01日 10:44
  • 3151

通过HTTPS(SSL加密)方式访问webservice

web service在企业应用中常常被用作不同系统之间的接口方式。但是如果没有任何安全机制的话,显然是难以委以重任的。比较直接的web service加密方式就是使用https方式(SSL)方式加密...
  • lamb7758
  • lamb7758
  • 2017年01月03日 09:15
  • 525

读书笔记15 《好好学习》 成甲

术从简,道从心 越是复杂的问题,越要用简单的规律去思考
  • m0_37890694
  • m0_37890694
  • 2017年04月07日 09:07
  • 533

网站导入SSL证书

网站SSL证书安装: 一: 申请SSL证书,SSL证书是绑定域名的。 二: 拿到SSL证书之后解压文件得到.pfx 文件。 三: 打开IIS,(此处是IIS6)选择IIS服务器,然后点击服...
  • LoserOrLeader
  • LoserOrLeader
  • 2015年07月06日 13:39
  • 1613

windows上IIS实现https,配置ssl证书

实现IIS的https 1、申请证书,这里申请腾讯云的证书 1)登录腾讯云控制台,依次单击“云产品”>“SSL证书管理”>“申请证书” 2)在免费证书申请页面填写相关信息   3)单击“下一步”,...
  • qq_34857250
  • qq_34857250
  • 2017年01月04日 12:49
  • 6044

IIS的SSL配置

原文在此:http://wenku.baidu.com/view/443644c26137ee06eff91838.html 目  录   1    IIIS服务器的SSL配置 IIS...
  • zhichao2001
  • zhichao2001
  • 2013年01月04日 11:23
  • 4905

Angular一点基础知识

js中的mvc          mvc设计模式,简单说来是将复杂的代码设计规范化,把应用的输入,处理,输出分开,M是指数据模型,V是指用户界面,C则是控制器。像我刚接触的SSH框架中,例如stru...
  • qq_21577869
  • qq_21577869
  • 2015年07月21日 17:31
  • 241
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:打造IIS网站的专用“护心甲”—实战SSL加密
举报原因:
原因补充:

(最多只允许输入30个字)