2015 年用於多租戶負載平衡的 SNI

2015 年用於多租戶負載平衡的 SNI

我們是一個多租戶服務,並在負載平衡器上終止我們的 SSL(HAProxy + Apache 用於 SSL 終止),由於專用 IP 要求,這導致了成長的煩惱。但時代已經變了,我們正在考慮轉向 SNI,所以我希望在 2015 年能得到關於採用它作為我們的標準的有根據的意見。

我將概述我們的假設:

  • 由於 POODLE 攻擊,SSL 已失效(TLS 長存),
  • TLS 內建了 SNI
  • IE6 / Windows XP (< sp3) 因多種原因而消亡,其中最重要的是 XP 即將停產
  • 目前我們已經終止了對 IE7 和 IE8 的支持

我假設 SNI 現在基本上得到全球支持是否正確?

... 和 ...

除此之外,我是否還應該考慮會影響支援的場景?

....最後...

現在 HAProxy 1.5 直接支援 SSL 終止,您的經驗中是否有任何與 SNI 直接相關的警告會影響我們推出此服務的能力?

答案1

我假設 SNI 現在基本上得到全球支持是否正確?

如果您考慮瀏覽器 - 是的。

如果您必須處理其他類型的應用程式 - 並非如此:

  • Python 3 已支持,但 Python 2.7 已支援。僅支援剛發布的版本 2.7.9
  • Android 的支援有限。 HTTPUrlConnection 已經支援很久了,但 SDK 包含舊版的 Apache HTTPClient,用於更進階的功能,而且該版本不支援 SNI。不知道最新的SDK有沒有改變這種情況。
  • Java 僅在 JDK 1.7 中獲得支持
  • 仍然有一些搜尋引擎爬蟲不支援 SNI。根據https://www.mnot.net/blog/2014/05/09/if_you_can_read_this_youre_sniing這包含在 05/2014 Bing、Yahoo、Baidu 等。

答案2

我假設 SNI 現在基本上得到全球支持是否正確?

本質上,是的 - 儘管您可能會遇到一些邊緣情況用戶,他們會抱怨如果需要 SNI,就會出現問題。如果您有能力告訴那些人「請使用本世紀以來的瀏覽器」來提供您的服務,那麼您就準備好了。

除此之外,我是否還應該考慮會影響支援的場景?

瀏覽器/客戶端作業系統支援是最重要的,儘管我可以想像使用 SSL 終止代理的企業網路存在其他一些有趣的問題,這些代理程式不支援傳遞 TLS 握手的 SNI 部分,這也會破壞 SNI。

現在 HAProxy 1.5 直接支援 SSL 終止,您的經驗中是否有任何與 SNI 直接相關的警告會影響我們推出此服務的能力?

我無法直接談論 HAProxy 的警告 - 我們使用的是它的 SSL 終止,但不是在它之上使用 SNI。

相關內容