|
|
隨著虛擬主機技術的發展,功能越來越豐富,已經不僅僅只是滿足個人網站的需要,越來越多的小型電子商務網站也採用了虛擬主機來建站,如何為這些商戶提供經濟、方便的 SSL 解決方案,成為虛擬主機供應商新的業務收入來源。
這個問題十分專業,有些像“先有雞還是先有蛋”的問題。SSL協定層是在HTTP協定層下面的,當SSL連接建立時,SSL模組在Web模組之前和瀏覽器進行通訊並交換憑證、建立加密隧道。眾所周知,Web伺服器是通過HTTP資料包中的”Host”欄位來區分虛擬主機的。而SSL模組在把伺服器憑證發送到瀏覽器時,還沒有收到任何關於HTTP的資料包,更不知道虛擬主機的網域名稱,因此SSL模組只能固定將一SSL憑證發送到瀏覽器,而不能根據網域名稱有選擇性的發送憑證。因此,您無法在一個IP位址的默認SSL 443埠下為多個虛擬主機配置多張憑證。
1、為需要SSL加密的虛擬主機配置不同的IP位址,埠號都使用443。例如: www.domain1.com 的SSL使用 202.96.101.1:443 www.domain2.com的SSL使用 202.96.101.2:443,通過 https://www.domain1.com 和 https://www.domain2.com 訪問這2個SSL網站了
2、如果只有一個IP位址,可以為多個網站配置不同的SSL埠。例如: www.domain1.com 的SSL使用 202.96.101.1:443 www.domain2.com的SSL使用 202.96.101.1:1000,通過 https://www.domain1.com 和 https://www.domain2.com:1000 訪問這2個SSL網站了
例如: 有2個虛擬主機 abc.domain.com、xyz.domain.com,你申請一張 *.domain.com的憑證,按照前面所說的原理,2個虛擬主機都使用同一個IP和默認的443埠,當瀏覽器訪問IP:443埠時,SSL模組把通用SSL憑證傳送給瀏覽器,建立合法的SSL隧道,然後WEB模組接收到HTTP資料包時判斷網域名稱選擇虛擬主機。
原理是OK的,不幸的是你無法按照這個原理對IIS進行配置,IIS不支援SSL埠配置網域名稱。如果僅依靠IIS,你不得不使用上面的2個方法(不同的IP位址或者不同的埠號)。
如果僅有1個IP位址,採用方法2時,abc.domain.com 使用 443埠、xyz.domain.com使用1000埠,你會發現一個現象,由於SSL埠不區分網域名稱,因此https://abc.domain.com還是https://xyz.domain.com都是指向abc.domain.com網站內容,而https://abc.domain.com:1000還是https://xyz.domain.com:1000都是指向xyz.domain.com網站內容的。當然這也有好處,你可以在abc.domain.com下放一個程式,程式判斷一下網域名稱,如果用戶訪問https://xyz.domain.com就馬上跳轉到https://xyz.domain.com:1000,不會有任何的安全警告。
就是使用第三方的SSL模組來替代IIS處理SSL加密,將憑證安裝反向代理伺服器中,瀏覽器訪問SSL反向代理伺服器,然後反向代理伺服器使用HTTP協定訪問你的Web伺服器。你可以選擇SSL反向代理硬軟體有:
1、支援SSL的負載平衡器,如F5、ArrayNetworks
2、使用ISA Server 2004軟體,參見:這裏。
3、使用免費的Squid軟體,參見:這裏。
4、使用免費的Stunnel軟體,參見: 這裏。
5、使用PortTunnel軟體,參見: 這裏。
我們推薦虛擬主機服務商採用:RapidSSL 簡易版(RapidSSL),因為它具有:
• |
RapidSSl憑證年服務費便宜,考慮到租用虛擬主機的客戶對價格相對敏感,這款憑證是最有吸引力的。
|
• |
通過Geotrust專有的線上申請技術,和Cloudmax 匯智的線上平臺,不需要提供書面證明,可在10分鐘內獲得憑證簽發,這不僅可以幫助虛擬主機服務商降低人工成本,而且可以實現用戶申請流程自動化。
|
• |
安裝簡單
|
• |
相容99%以上的瀏覽器和Web伺服器
|
|
|
|
|