IIS7下配置SSL的方法分析_win服务器

在IIS7中,HTTP.sys在内核模式下操作SSL加密解密,相对于IIS6,这种方式能提高近20%的性能。
当SSL运行于内核模式时,会将SSL绑定信息保存在两个地方。第一个地方,绑定配置保存在%windir%\System32\inetsrv\config\applicationHost.config中,当站点启动时,IIS7发送绑定信息给HTTP.sys,同时HTTP.sys会在特定的IP和端口监听请求。第二个地方,与绑定相关联的SSL配置保存在HTTP.sys配置中。使用netsh命令可以查看保存在HTTP.sys的SSL绑定配置:
netsh http show sslcert
当一个客户开始连接并初始化SSL协商时,HTTP.sys在它的配置中查找这个IP:Port对应的SSL配置。这个SSL配置必须包括证书hash值和名称:
l 在ApplicationHost.config中确认这个绑定是否存在
l HTTP.sys中是否包含有效证书的hash值以及命名是否存在
选择证书时,需要考虑以下问题:
是否想让最终用户能够通过你提供的证书确认你服务器的唯一性?
如果是的,则
要么建立一个证书请求,并且发送证书请求到证书权威机构(CA),比如VeriSign或者GeoTrust;
要么从Intranet的在线CA那里获取一个证书
浏览器一般用三样东西来确认服务器证书的有效性:
1. 当前日期在证书的有效期范围内
2. 证书的“Common Name”(CN)与请求中的主机名相匹配。比如,如果客户发起了一个到http://www.contoso.com的请求,则CN必须是这样的:http://www.contoso.com/
3. 证书的发行者是已知的和受到信任的CA
如果其中有1项失败,浏览器就会警告用户。如果你有个Internet站点或者你不怎么熟的Intranet用户,那你就需要确保这3项是都通过的。
自签名的证书可以用你自己的计算机创建。如果最终用户不重要,或者他们信任你的服务器,又或者用于测试环境,则这种自签名证书将会非常有用。
Ø 使用WMI来绑定SSL证书
使用WMI命名空间,是不能够请求或者创建证书。
建立SSL绑定
以下脚本展示了如何建立SSL绑定,以及添加相应信息到HTTP.sys中:

复制代码 代码如下:

Set oIIS = GetObject("winmgmts:root\WebAdministration")
'''''''''''''''''''''''''''''''''''''''''''''
' CREATE SSL BINDING
'''''''''''''''''''''''''''''''''''''''''''''
oIIS.Get("SSLBinding").Create _
"*", 443, "4dc67e0ca1d9ac7dd4efb3daaeb15d708c9184f8", "MY"'''''''''''''''''''''''''''''''''''''''''''''
' ADD SSL BINDING TO SITE
'''''''''''''''''''''''''''''''''''''''''''''
Set oBinding = oIIS.Get("BindingElement").SpawnInstance_
oBinding.BindingInformation = "*:443:"
oBinding.Protocol = "https"
Set oSite = oIIS.Get("Site.Name='Default Web Site'")
arrBindings = oSite.Bindings
ReDim Preserve arrBindings(UBound(arrBindings) + 1)
Set arrBindings(UBound(arrBindings)) = oBinding
oSite.Bindings = arrBindings
Set oPath = oSite.Put_

注意:证书的hash值和名称必须引用了你服务其上真实且有用的证书。如果其中有一项虚假,就会出现错误。
注意:证书的hash值和名称必须引用了你服务其上真实且有用的证书。如果其中有一项虚假,就会出现错误。

配置SSL设置
以下脚本展示了如何通过IIS7的WMI提供程序来设置SSL。

复制代码 代码如下:

CONST SSL = 8
Set oIIS = GetObject("winmgmts:root\WebAdministration")
Set oSection = oIIS.Get( _
"AccessSection.Path='MACHINE/WEBROOT/APPHOST',Location='Default Web Site'")
oSection.SslFlags = oSection.SslFlags OR SSL
oSection.Put_

使用IIS管理器来绑定SSL证书

获取一个证书

在树目录中选择服务器节点,在右面双击Server Certificates图标:

 

单击Create Self-Signed Certificate…按钮:

 

输入新证书的名字后单击OK。

现在你有了一个自签名证书。这个证书被标记为”服务器端验证”

 

建立SSL绑定

选择一个站点,在Actions面板中单击Bindings…。会显示出添加、修改、删除绑定对话框。单击Add…按钮添加新的SSL绑定。

默认设置是80端口,在类型下拉框中选择https,在SSL Certificate下拉框中选择你刚才建立的自签名证书名字,单击OK。

 

现在你已经完成SSL绑定的建立工作了,剩下的就是要确认是否工作正常了。

 

 

Ø SSL绑定的确认

在Actions面板中,在Browse web site下,单击刚才增加的绑定

 

 

由于这个证书是个自签名的证书,IE7会显示一个错误页面。

单击Continue to this website(not recommended).继续

 

 

Ø 配置SSL设置

当你要求用户必须使用证书,又或者必须SSL方式连接时,你需要配置SSL设置。双击SSL Settings如下图:

时间: 2024-10-02 02:12:02

IIS7下配置SSL的方法分析_win服务器的相关文章

windows server 2008R2系统 IIS7.5配置伪静态的方法(urlrewrite)_win服务器

从网上找了一下,原来微软IIS官方网站给IIS7及以后续版本提供了个URL重写组件. 下载地址:http://www.iis.net/download/URLRewrite或者http://www.jb51.net/softs/479310.html 首先,打开上面网址,到IIS官方网站下载模块. 根据需要,点击右侧的下载链接(操作系统是64位的,就下载x64版本:32位的系统,就下载x86版本) IIS版本:IIS 7.5 URL Rewrite组件:IIS URL Rewrite Modul

VisualSVN Server的配置和使用方法 图文_win服务器

1.为什么要用VisualSVN Server,而不用Subversion? 回答: 因为如果直接使用Subversion,那么在Windows 系统上,要想让它随系统启动,就要封装SVN Server为windws service,还要通过修改配置文件来控制用户权限,另外如果要想以Web方式[http协议]访问,一般还要安装配置Apache,如果是新手,岂不是很头痛?而VisualSVN Serve集成了Subversion和Apache,省去了以上所有的麻烦.安装的时候SVN Server已

win2008下IIS7、IIS7.5 配置ASP+ACCESS使用环境_win服务器

一.IIS7的安装 Windows 中IIS7.IIS7.5是默认不安装的,所以在安装完Windows Vista/windows 7/windows 2008之后如果需要安装IIS7/iis7.5的话,就要自己动手了. 安装的步骤为:开始>控制面板>程序>打开或关闭Windows功能>Internet信息服务.IIS7安装时需要注意的是,如果需要ASP.ASP.NET等的支持,是需要把功能模块给装上的,默认是不安装的. IIS7安装完成之后可以在开始菜单的所有程序中看到"

win2003 iis 不支持请求(iis iso)的解决方法分析_win服务器

WIN2003 中的IIS6默认不知道是为了安全还是什么,不允许直接下载.ISO.GHO等格式的文件.这样显得很不方便.解决方法为: 1.打开INTERNET信息管理器 2.在以计算机名名+(本地计算机)上点右键,选择"属性",点击界面中的"MIME类型"按钮.这里列出的是所有IIS支持解析的扩展名,在这里可根据实际需要添加.删除. 比如现在是要增加ISO格式的解析,则点击"新建" 扩展名:输入:.iso MIME类型:输入:applicatio

从IIS6.0升级到IIS7.0日期格式调整方法整理_win服务器

将系统从IIS6.0平台升级导IIS7时(.netframework2.0 到4.0)操作系统WINSERVER2008时,有可能会遇到系统原本显示的日期格式被转化的问题 本人就遇到原本系统的日期格式是(yyyy-M-d) 结果平台升级后变成了(yyyy/M/d) 一下是从网上获取的解决方案,在此转载,以便记忆: ---------------- Win2008 IIS7日期格式更改方法 . 服务器从32位升级到64位的WIN2008,结果就出日期格式问题,首先想到的当然是到控制面板里面更改区域

Nginx 下配置SSL证书的方法_Linux

1.Nginx 配置 ssl 模块 默认 Nginx 是没有 ssl 模块的,而我的 VPS 默认装的是 Nginx 0.7.63 ,顺带把 Nginx 升级到 0.7.64 并且 配置 ssl 模块方法如下: 下载 Nginx 0.7.64 版本,解压 进入解压目录: 复制代码 代码如下: wget http://sysoev.ru/nginx/nginx-0.7.64.tar.gz tar zxvf nginx-0.7.64.tar.gz cd nginx-0.7.64 如果要更改heade

IIS7下配置SSAS通过HTTP远程连接

原文:IIS7下配置SSAS通过HTTP远程连接 安装环境操作系统:Windows7.Windows Server2008IIS版本:7.5 IIS7下配置SSAS通过HTTP远程连接详细的步骤如下:1.首先到分析服务器的SQLServer安装目录中找到如下目录和文件,路径如下:D:\Program Files\Microsoft SQL Server\MSAS10_50.MSSQLSERVER\OLAP\bin\isapi 2.在D盘新建一个olap文件,把上述的isapi内的所有东西全部co

nginx环境下配置ssl加密(单双向认证、部分https)_nginx

nginx下配置ssl本来是很简单的,无论是去认证中心买SSL安全证书还是自签署证书,但最近公司OA的一个需求,得以有个机会实际折腾一番.一开始采用的是全站加密,所有访问http:80的请求强制转换(rewrite)到https,后来自动化测试结果说响应速度太慢,https比http慢慢30倍,心想怎么可能,鬼知道他们怎么测的.所以就试了一下部分页面https(不能只针对某类动态请求才加密)和双向认证.下面分节介绍. 默认nginx是没有安装ssl模块的,需要编译安装nginx时加入--with

win2008 r2 iis7.5中限制带宽的方法(图文)_win服务器

最近网站有网友问IIS 7 下如何限制站点带宽?IIS6下很方便,IIS7 不知道到哪里设置了? 一. 上面限制的变成字节了.一般如果想限制80M的话,差不多是80,000,000了.大家可以根据需要选择. 1M=1024KB 1KB=1024bytes 所以一般情况下: 80M就是 80*1024*1024=83886080(个人比较喜欢多少M直接写80后面跟6个0就差不多了) 如果调节的是ASP的连接数就进入ASP 这个菜单,如果调节PHP的话就静进入FAST-CGI选择对应版本的PHP的最