欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

IIS7下配置SSL的方法分析

 更新時間:2011年05月07日 00:48:25   作者:  
IIS6(Windows2003)下,SSL的所有配置信息都保存在IIS元數(shù)據(jù)中,在用戶模式中加密解密(這會耗費(fèi)很多的內(nèi)核/用戶模式轉(zhuǎn)換)。
在IIS7中,HTTP.sys在內(nèi)核模式下操作SSL加密解密,相對于IIS6,這種方式能提高近20%的性能。
當(dāng)SSL運(yùn)行于內(nèi)核模式時,會將SSL綁定信息保存在兩個地方。第一個地方,綁定配置保存在%windir%\System32\inetsrv\config\applicationHost.config中,當(dāng)站點(diǎn)啟動時,IIS7發(fā)送綁定信息給HTTP.sys,同時HTTP.sys會在特定的IP和端口監(jiān)聽請求。第二個地方,與綁定相關(guān)聯(lián)的SSL配置保存在HTTP.sys配置中。使用netsh命令可以查看保存在HTTP.sys的SSL綁定配置:
netsh http show sslcert
當(dāng)一個客戶開始連接并初始化SSL協(xié)商時,HTTP.sys在它的配置中查找這個IP:Port對應(yīng)的SSL配置。這個SSL配置必須包括證書hash值和名稱:
l 在ApplicationHost.config中確認(rèn)這個綁定是否存在
l HTTP.sys中是否包含有效證書的hash值以及命名是否存在
選擇證書時,需要考慮以下問題:
是否想讓最終用戶能夠通過你提供的證書確認(rèn)你服務(wù)器的唯一性?
如果是的,則
要么建立一個證書請求,并且發(fā)送證書請求到證書權(quán)威機(jī)構(gòu)(CA),比如VeriSign或者GeoTrust;
要么從Intranet的在線CA那里獲取一個證書
瀏覽器一般用三樣?xùn)|西來確認(rèn)服務(wù)器證書的有效性:
1. 當(dāng)前日期在證書的有效期范圍內(nèi)
2. 證書的“Common Name”(CN)與請求中的主機(jī)名相匹配。比如,如果客戶發(fā)起了一個到http://www.contoso.com的請求,則CN必須是這樣的:http://www.contoso.com/
3. 證書的發(fā)行者是已知的和受到信任的CA
如果其中有1項(xiàng)失敗,瀏覽器就會警告用戶。如果你有個Internet站點(diǎn)或者你不怎么熟的Intranet用戶,那你就需要確保這3項(xiàng)是都通過的。
自簽名的證書可以用你自己的計(jì)算機(jī)創(chuàng)建。如果最終用戶不重要,或者他們信任你的服務(wù)器,又或者用于測試環(huán)境,則這種自簽名證書將會非常有用。
Ø 使用WMI來綁定SSL證書
使用WMI命名空間,是不能夠請求或者創(chuàng)建證書。
建立SSL綁定
以下腳本展示了如何建立SSL綁定,以及添加相應(yīng)信息到HTTP.sys中:
復(fù)制代碼 代碼如下:

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值和名稱必須引用了你服務(wù)其上真實(shí)且有用的證書。如果其中有一項(xiàng)虛假,就會出現(xiàn)錯誤。
注意:證書的hash值和名稱必須引用了你服務(wù)其上真實(shí)且有用的證書。如果其中有一項(xiàng)虛假,就會出現(xiàn)錯誤。


配置SSL設(shè)置
以下腳本展示了如何通過IIS7的WMI提供程序來設(shè)置SSL。
復(fù)制代碼 代碼如下:

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證書

獲取一個證書

在樹目錄中選擇服務(wù)器節(jié)點(diǎn),在右面雙擊Server Certificates圖標(biāo):

http://learn.iis.net/file.axd?i=69

 

單擊Create Self-Signed Certificate…按鈕:

http://learn.iis.net/file.axd?i=70

 

輸入新證書的名字后單擊OK。

現(xiàn)在你有了一個自簽名證書。這個證書被標(biāo)記為服務(wù)器端驗(yàn)證

 

建立SSL綁定

選擇一個站點(diǎn),在Actions面板中單擊Bindings…。會顯示出添加、修改、刪除綁定對話框。單擊Add…按鈕添加新的SSL綁定。

/upload/201105/20110507004819416.jpg

默認(rèn)設(shè)置是80端口,在類型下拉框中選擇https,在SSL Certificate下拉框中選擇你剛才建立的自簽名證書名字,單擊OK。

http://learn.iis.net/file.axd?i=643

 

現(xiàn)在你已經(jīng)完成SSL綁定的建立工作了,剩下的就是要確認(rèn)是否工作正常了。

http://learn.iis.net/file.axd?i=644

 

 

Ø SSL綁定的確認(rèn)

Actions面板中,在Browse web site下,單擊剛才增加的綁定

http://learn.iis.net/file.axd?i=74

 

 

由于這個證書是個自簽名的證書,IE7會顯示一個錯誤頁面。

單擊Continue to this website(not recommended).繼續(xù)

http://learn.iis.net/file.axd?i=75

 

 

Ø 配置SSL設(shè)置

當(dāng)你要求用戶必須使用證書,又或者必須SSL方式連接時,你需要配置SSL設(shè)置。雙擊SSL Settings如下圖:

http://learn.iis.net/file.axd?i=645

相關(guān)文章

最新評論