前兩天因為需要修正一個Windows Live Contacts Gadget在https連接下無法工作的錯誤,在dev machine的IIS上設置了一下SSL功能。
大家都知道要開啟SSL服務關鍵需要兩個東西:
1. A Certificate Authority (such VeriSign.com)
2. A site certificate
如果你使用的是Windows Server 2003或者XP Advanced Server,你其實可以利用系統提供的 “Certificate Services”服務來“冒充”一個CA并給自己發一個site certificate,這里有一個tutorial:
Building your own certificate authority: http://searchwindowssecurity.techtarget.com/tip/1 ,289483,sid45_gci1110403,00.html
如果你使用的是XP Professional,就沒有CA服務了。但作為程序調試或測試用的話,其實就只需要生成一個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的相關設置有所了解的話,可以試試做一遍,這里也有一個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.
現在你試試在browser里訪問:https://localhost,你會發現會出現一個窗口詢問是否接受一個untrusted certificate,選Yes, and you are in a safe channel now.
最后附上微軟的官方教程
為 Web 服務器配置 SSL
要在 IIS 中啟用 SSL,首先必須獲得用于加密和解密通過網絡傳輸的信息的證書。IIS 具有自己的證書請求工具,您可以使用此工具向證書頒發機構發送證書請求。此工具簡化了獲取證書的過程。如果您使用的是 Apache,則必須手動獲取證書。
在 IIS 和 Apache 中,您都會收到來自證書頒發機構的證書文件,此文件必須配置在計算機上。Apache 使用 SSLCACertificateFile 指令讀取其源文件中的證書。而在 IIS 中,您可以使用網站或文件夾屬性的目錄安全性選項卡來配置和管理證書。
您可以將證書從 Apache 遷移到 IIS;但是 Microsoft 建議您重新創建或獲取一個新的 IIS 證書。
配置文件夾或網站以使用 SSL/HTTPS
新聞熱點
疑難解答
圖片精選