Ssl
第 7 層負載均衡器上的 TLS 直通
試圖理解一些基本原理。
如果我想要一個負載平衡器來獲得記憶體和更智能的負載平衡的好處,我認為我可能應該考慮 L7,儘管性能會受到一些影響,但我不會堅持使用標準的 TCP/IP 通信。
現在,假設我在 LB 級別有 TLS 終止,但是,我仍然希望從 LB 通信到我正在與之通信的微服務或下游伺服器的 TLS 通信。
流程是這樣的:
- 客戶提出要求
https://example.com
- TLS 握手首先發送
serverHello
到負載均衡器,然後代理serverHello
到後端應用程序。- 在不寫所有步驟的情況下,我假設整個 TLS 握手發生在 LB 作為中介的情況下,但是考慮到 LB 本身正在與下游伺服器進行這種單獨的 TLS 握手過程和加密+解密。
這是一個正確的構想嗎?這就是它在現實世界中的運作方式嗎?
我個人將此概念化為您想要的東西,因為從 LB 到服務的通信可能會通過網路跨越不同伺服器的邊界,因此您將擁有第二個 TLS 連接以避免在建立第二個連接後進行數據包嗅探。
如果您正在執行第 7 層(無論 TLS 終止如何),則傳入連接將在負載均衡器處終止。LB 打開一個與後端伺服器的全新連接,其生命週期完全獨立於任何客戶端連接。如果 LB 自己不處理它們(例如通過發送記憶體響應),LB 然後將通過該連接將請求傳遞到您的後端。
PS你的方向是相反的:下游是朝向使用者代理,上游是朝向你的後端伺服器。