前兩天因為需要修正一個Windows Live Contacts Gadget在https連接下無法工作的錯誤,在dev machine的IIS上設置了一下SSL功能。
大家都知道要開啟SSL服務關(guān)鍵需要兩個東西:
1. A Certificate Authority (such VeriSign.com)
2. A site certificate
如果你使用的是Windows Server 2003或者XP Advanced Server,你其實可以利用系統(tǒng)提供的 “Certificate Services”服務來“冒充”一個CA并給自己發(fā)一個site certificate,這里有一個tutorial:
Building your own certificate authority: http://searchwindowssecurity.techtarget.com/tip/1 ,289483,sid45_gci1110403,00.html
如果你使用的是XP Professional,就沒有CA服務了。但作為程序調(diào)試或測試用的話,其實就只需要生成一個self- signed certificate就可以了。等browser提示你是否接受這個untrusted certificate的時候,只要選Yes就 行。
生成self-signed certificate有很多方法。稍微繁瑣一點的可以用OpenSSL (OpenSSL for windows: http://www.openssl.org/related/binaries.html )或者keytool (http://java.sun.com/j2se/1.4.2/docs/tooldocs/solaris/keytool.html )來sign一個certificate,然后再在IIS中導入這個certificate就行了。如果你想對IIS的相關(guān)設置有所了解的話,可以試試做一遍,這里也有一個tutorial:
Enabling SSL in IIS on Windows XP Professional: http://www.somacon.com/p41.php
當然,如果你想省掉所有這些麻煩也行,最簡單的在IIS啟動SSL的方法只要3步:
1. 下載 IIS 6.0 Resource Kit Tools: http://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&DisplayLang=en
2. 安裝.
3. “All Programs->IIS Resources->SelfSSL->SelfSSL”, 在命令行中鍵入 “selfssl”, 回答 “y”, and you are done.
現(xiàn)在你試試在browser里訪問:https://localhost,你會發(fā)現(xiàn)會出現(xiàn)一個窗口詢問是否接受一個untrusted certificate,選Yes, and you are in a safe channel now.
最后附上微軟的官方教程
為 Web 服務器配置 SSL
要在 IIS 中啟用 SSL,首先必須獲得用于加密和解密通過網(wǎng)絡傳輸?shù)男畔⒌淖C書。IIS 具有自己的證書請求工具,您可以使用此工具向證書頒發(fā)機構(gòu)發(fā)送證書請求。此工具簡化了獲取證書的過程。如果您使用的是 Apache,則必須手動獲取證書。
在 IIS 和 Apache 中,您都會收到來自證書頒發(fā)機構(gòu)的證書文件,此文件必須配置在計算機上。Apache 使用 SSLCACertificateFile 指令讀取其源文件中的證書。而在 IIS 中,您可以使用網(wǎng)站或文件夾屬性的目錄安全性選項卡來配置和管理證書。
您可以將證書從 Apache 遷移到 IIS;但是 Microsoft 建議您重新創(chuàng)建或獲取一個新的 IIS 證書。
配置文件夾或網(wǎng)站以使用 SSL/HTTPS
此過程假定您的站點已經(jīng)具備了證書。 以管理員身份登錄到 Web 服務器計算機。 單擊開始,指向設置,然后單擊控制面板。 雙擊管理工具,然后雙擊 Internet 服務管理器。 從左窗格中的不同服務站點的列表中選擇網(wǎng)站。 右鍵單擊希望為其配置 SSL 通信的網(wǎng)站、文件夾或文件,然后單擊屬性。 單擊目錄安全性選項卡。 單擊編輯。 如果希望網(wǎng)站、文件夾或文件要求 SSL 通信,請單擊需要安全通道 (SSL)。 單擊需要 128 位加密以配置 128 位(而不是 40 位)加密支持。 要允許用戶不必提供證書就可以連接,請單擊忽略客戶證書。或者,如果要讓用戶提供證書,請使用接受客戶證書。 要配置客戶端映射,請單擊啟用客戶證書映射,然后單擊編輯將客戶證書映射到用戶。如果配置了此功能,可以將客戶證書分別映射到 Active Directory 中的每個用戶。可以使用此功能以根據(jù)用戶訪問網(wǎng)站時提供的證書自動識別用戶。可以將用戶一對一映射到證書(一個證書標識一個用戶),或者將許多證書映射到一個用戶(根據(jù)特定的規(guī)則,對照證書列表來匹配特定的用戶。第一個有效的匹配項成為映射。) 單擊確定。新聞熱點
疑難解答
圖片精選