Windows-Server-2003

IIS6:網站提供了錯誤的 SSL 證書

  • April 2, 2010

考慮一個帶有多個網站的 IIS6 安裝。每個都旨在成為具有自己證書(不是萬用字元證書)的不同子域。每個都有正確指定的主機頭。

  • foo.example.com- 埠 443。需要帶 128 位的 SSL。好好工作!它將其 SSL 證書正確地呈現給瀏覽器。為特定 IP 地址配置。
  • bar.example.com- 埠 443。需要帶 128 位的 SSL。為所有未分配的地址配置。檢查 IIS 屬性頁時,它會bar.example.com在“查看證書”按鈕上完全顯示證書。這是一個存在證書問題的新網站。它正在為 foo.example.com 提供證書。哎喲!

替代文字 http://www.imagechicken.com/uploads/1251156847014486300.png

**問題:**您可以在同一埠(443)上使用 SSL 證書在不同網站上執行多個子域嗎?您將如何在同一埠 (443) 的“全部未分配”的同一範圍內配置 2 個網站?

**更新:**忽略證書錯誤,瀏覽到時https://bar,提供的內容來自https://foo站點。

不使用 SSL 時,瀏覽以http://bar提供來自bar.

只有一個地址分配給這個 DMZ 伺服器。

SSL 證書綁定到 Web 伺服器的內部 IP 地址,而不是外部 IP 地址。

假設您已foo.example.com綁定到Public IP Abar.example.comon Public IP B,但您的 Web 伺服器只有 IP 地址 192.168.0.1

無論請求是 onIP A還是IP B,它仍然會在 192.168.0.1 結束。這意味著 IIS 別無選擇,只能使用分配給foo.example.com.

要解決此問題,您需要為 Web 伺服器分配多個 IP 地址。這很容易做到。與您的系統管理員交談以從 DHCP 範圍中刪除一些 IP(或詢問他/她您可以使用哪些 IP),然後轉到網卡的屬性(控制面板 > 網路連接),然後轉到 TCP 的屬性/IP。

您首先需要啟用一個靜態 IP(作為伺服器,我希望無論如何都可以這樣做),然後點擊“高級”,然後在“IP 地址”框下點擊“添加” - 並輸入新的 IP 地址您已由系統管理員分配(假設192.168.0.2)。

然後,在您的路由器上,您需要確保來自埠 443 的請求發送IP A到埠 443 上192.168.0.1的所有其他請求192.168.0.2

然後,在您的 IIS 配置中,您需要將 SSL 證書從綁定foo.example.com192.168.0.1,並將其餘的綁定到192.168.0.2(或保留為 All Unassigned,就像您一樣)。

如果這不起作用,或者您已經進行了配置,請更新您的問題並發表評論讓我們知道。

**更新:**我剛剛看到您的評論,感謝您的更新。您需要確保foo.example.com並且bar.example.com位於兩個不同的公共 IP 地址上。原因是因為數據包是加密的,所以您無法使用基於主機名的路由將請求發送到正確的 IP 地址(我相信是這種情況。如果有人知道不同,請告訴我)。對路由器可見的請求的唯一部分是目標 IP。這就是每個 IP 地址只能有一個 SSL 的原因。因此,您需要擁有公共 IP 才能使其正常工作,並且在您的 DNS 中,A 記錄bar.example.comfoo.example.com.

引用自:https://serverfault.com/questions/58163