Windows-Server-2008

從哪裡開始在一個外部 IP 地址後面設置主機名 NAT?

  • October 16, 2012

不確定我在這裡使用了正確的術語,這基本上就是我要問的原因(使用正確的術語我可以肯定地用Google搜尋它)。

我有一個裝有 Windows 2008 的“大型伺服器”,上面有幾個虛擬機(linux、win7.win2k8)。可以使用公共 IP 地址訪問伺服器。我想啟用以下功能,只是不知道從哪裡開始:

  • 將網站放在不同的虛擬機上(即 VM1 託管 a.com 和 VM2 託管 b.com)
  • 網站應使用 http 和 https (ssl) 協議
  • 允許在每個 VM 上使用遠端桌面或類似的 RDP
  • 允許其他協議,如 webdav、scp 或 ftp,到每台機器

我有點假設我需要一個用於遠端桌面訪問的 VPN,並且我需要某種基於主機或基於主機 + 基於協議的 NAT(如果是這樣的話)。

這似乎已經做了一百萬次了,我只是不知道從哪裡開始,使用什麼軟體,或者乾脆用Google搜尋什麼。另外,我擔心 SSL 不會以這種方式工作,因為在握手之前主機名是不可見的。

您的問題確實有很多要涉及的內容,但我將專注於 SSL 網站部分,因為它具有超出技能水平/知識的真正限制;如果您需要有關 VPN 配置、WebDAV、FTP 等的具體幫助,將問題的其餘部分分解成更小的部分是有意義的。

如果您只計劃託管幾個 SSL 網站,或者它們將是萬用字元網站(即 *.example.com)並且您在前面有一個反向代理伺服器,那麼您可以堅持使用一個公共 IP 地址。如果您需要多個域(example.com、example.net、foo.com、bar.com 等),那麼您可能能夠提取安裝在反向代理上的主題備用名稱 (SAN) 或 UCC 證書。維基百科上有一個方便的圖表,向您展示了流​​行的證書供應商列表以及您通過他們的產品獲得的域名數量;Global Sign 提供多達 40 個證書。

您還可以使用替代埠(https://vm1:443https://vm2:444)和適當的 NAT 規則(在您的 VM 前面的防火牆中),但這通常不適用於公共站點。

現在,您不能讓伺服器使用 SSL 處理不同站點的原因是 SSL 的工作原理:SSL 對話(握手)發生從客戶端發送主機標頭(“主機名”)之前並由終止 SSL 連接的伺服器解釋,例如像 Apache 或 IIS 這樣的 Web 伺服器或像nginx這樣的反向代理/Web 伺服器。這是因為伺服器不“知道”此時要呈現什麼證書,並且(通常)只會呈現配置中定義的預設(或第一個)證書。此“預設”SSL 證書可以是主題備用名稱 (SAN) 證書或萬用字元證書,這可能適合您的需要。

伺服器名稱指示(SNI) 是多 SSL 站點問題的新替代方案(實際上是 SSL/TLS 協議的擴展,它允許客戶端將主機標頭指定為 SSL 對話的一部分),但被老化的瀏覽器人口,並且僅在 IE7+(也僅 Vista+)、Firefox 2+ 等中可用,因此如果您期望未經清洗的大眾訪問您的 SSL 站點,則可能不適合您的需求。

因為聽起來您正試圖成為某種託管服務提供商(這是一個完全不同的蠕蟲罐頭),所以我想從我的 ISP/colo 提供商那裡獲得盡可能多的 IP 塊,或者代理 ARP 或在配置過程中為 VM 物理分配公共 IP 地址,並讓他們獲得自己的證書等。沒有 NAT 的東西會更好地工作,並且管理成本也會更少。如果每個虛擬機都是多租戶的(即商品“共享託管”,您可以在虛擬機上填充盡可能多的站點),那麼您可能可以使用 SAN 證書/IP 地址的組合,但請記住,您不能隨時向證書添加/刪除域:您必須再次完成證書請求/簽名過程,他們可能會再次向您收費。

我也會非常小心地保護主機(“一台大型伺服器”)並假設您使用的是 Hyper-V,將一個物理網卡(即不作為虛擬網路包含在您的 Hyper-V 配置中)專用於盒子的遠端管理,由真正的(硬體)防火牆保護,並建立某種安全連接(如始終線上的 IPSec 隧道),最好是在單獨/有保證的 Internet 連接*或至少一個公共 IP 上用於防火牆 ACL 和QoS的“客戶端”塊之外的不同塊。我也想看看你的伺服器是否支持IPMI(戴爾所說的 DRAC)並將其與您的專用物理 NIC 一起用作您的管理網路的一部分,該網路無法從公共 Internet 訪問;這將允許您對盒子進行裸機訪問,以便您可以遠端重新啟動它、進行韌體升級等。

*在託管設施中,這種專用連接要求可能不是問題,他們可能會採取自己的措施來確保/保證(通過 SLA)正常執行時間/頻寬/彈性。

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