Amazon-Web-Services

將 AWS 負載均衡器設置為 VPC 內部和設置等效的入站規則有什麼區別?

  • September 11, 2019

我正在設置一個 API 端點,我只想從我的 VPC 中的其他應用程序訪問它。

該應用程序位於 Elastic Beanstalk 上,看來我可以將負載均衡器設置為內部或公共。AWS 給出了這樣的解釋:

Make your load balancer internal if your application serves requests only from connected VPCs. Public load balancers serve requests from the Internet.

我計劃公開負載均衡器/應用程序,並設置入站規則以限制來自 VPC 內其他應用程序的流量。

選擇此選項與公開負載均衡器和將安全組設置為僅允許來自我的 VPC 的入站請求相比有什麼區別?效果不一樣嗎?

它不是等價的。

當您將負載均衡器設置為內部時,負載均衡器網路介面將僅根據您放置的可用區和子網接收私有 IP 地址。只有使用可路由到負載均衡器 IP 的內部 IP 地址的系統才能訪問負載均衡器。這意味著客戶端需要在同一個 VPC 中或通過 VPN、Direct Connect 等連接。

當您將負載均衡器設置為公共時,負載均衡器將根據您放置的可用區和子網接收外部介面上的公共 IP 地址和內部介面上的私有 IP 地址。因此,對負載的傳入請求平衡器將通過公共網際網路,使用公共 IP 地址 - 即使它來自與負載平衡器位於同一可用區的客戶端。這也意味著負載均衡器和客戶端系統都需要訪問公共網際網路。如果它們位於 AWS 中,則意味著它們必須放置在配置為公共且具有 Internet 網關的子網中。最後,如果您想根據安全組過濾訪問,則必鬚根據客戶端系統的公共 IP 地址對其進行過濾。

在事物的內部(即負載平衡器和伺服器之間)沒有任何變化。伺服器/服務只能看到來自負載均衡器內部 IP 地址的連接。

因此,更直接地說,最大的區別在於客戶端和內部負載均衡器之間的連接將是私有的並保留在您的 VPC 中,或者客戶端和公共負載均衡器之間的連接將是公共的並遍歷公共網際網路,即使這意味著它位於 AWS 數據中心內的某個位置。這將直接影響您的安全組,如果他們使用私有 IP 地址或公共 IP 地址。

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