我應該先說我對 SSL 的實務知識為零,而這個特定的設定似乎特別複雜。我的情況如下:我正在為一個客戶端運行 3 個網站,每個網站都有一個副本在 2 個 Linux 機器上。客戶端在其防火牆和兩個盒子之間運行硬體負載平衡器,以在兩個盒子之間分配流量。目前,這些網站都僅使用 HTTP,每個網站在每個盒子上都有自己的 IP 位址,並且可在 a.mysite.com、b.mysite.com 和 c.mysite.com 等公開 URL 上使用
客戶要求我將所有內容切換為在 HTTPS 下運行,並嘗試配置以下設定:建立一個新網域(在 https 下)https://main.mysite.com和https://main.mysite.com/a/將png映射到a.mysite.com,https://main.mysite.com/b/將png映射到b.mysite.com等
主要目標是將所有 3 個網站切換為 HTTPS。統一在 1 個域下的東西是「很高興擁有」。顧客認為證書很昂貴,是嗎?
首先,我對購買憑證、設定 SSL 等一無所知,因此任何指向 HTTPS 初學者指南的連結將不勝感激。對證書價格的粗略了解也很好。
其次,由於網頁伺服器軟體需要重新編譯才能在 SSL 下運行,因此我對允許我不更改網路伺服器軟體的解決方案感興趣。這會是反向代理嗎?
第三,「一域統一」是否可能?
第四,在這種情況下我需要多少個 SSL 憑證?
乾杯!
答案1
多域 (UCC) SSL 憑證比通常建議的通配符 SSL 便宜。它僅適用於 5 個域變體,而不是通配符提供的無限數量,但如果您的需求很簡單,則可能值得考慮。
無論哪種方式,單一 SSL 憑證都可以滿足您的需求。只是價格和未來的彈性有所不同。
答案2
證書可以貴也可以便宜,取決於您的需求。您可能需要的是「通配符」證書,該證書將允許 *.mysite.com。通配符憑證不會像單一網站憑證那麼便宜,但最終它們會比許多單一網站憑證便宜。您也可以在單一憑證上取得多個名稱,但這是一次性的事情,通配符憑證將允許該公用網域根下的任何名稱。
您沒有說您正在使用哪種伺服器軟體。如果 Apache(我假設是從“重新編譯”中提到的),並且您正在某種形式的 Unix 上運行它,請嘗試以下命令:
httpd -t -D DUMP_MODULES | grep -i ssl
如果你回傳任何訊息說 ssl 在那裡,那麼它就在那裡。
如果不是,則可以動態載入。然而,大多數發行版和軟體包系統可能預設安裝 ssl。就是這麼常見。
我也會檢查您的伺服器軟體有多舊。我不想做太多改變,但我認為如果沒有反向代理來添加此網站的維護,您會更高興。
答案3
我認為你可以使用通配符憑證來滿足這一點(昂貴):
- *.mysite.com
或三張證書(沒那麼貴):
- main.mysite.com
- a.mysite.com
- b.mysite.com
您還應該能夠在主網站上建立 url 重寫規則,以將客戶端傳送到正確的網域:
此設計不需要更改伺服器部署,而只需向每個網站新增憑證以及主網站上的 url 重寫規則。
並且,不要忘記添加重定向 url 以從 http 重新映射到 https: