簡體   English   中英

使用 AWS SDK 通過 Direct Connect、VPC 和 VPC 終端節點從本地世界訪問 AWS S3

[英]Accessing the AWS S3 from on-premise world through Direct Connect, VPC and VPC Endpoint using AWS SDK

我們的設置:

  • 我們有一個本地服務器,我們想從它向 S3 發送數據(使用 AWS Java SDK)
  • 我們的本地數據中心使用 Direct Connect 連接到 AWS
  • 在 AWS 方面,有一個 VPC,它確實有一個到 S3 的 VPC 端點

在此處輸入圖像描述

我們的假設是一切都正確路由(本地可以看到 AWS 中的 VPC)。 假設 VPC CIDR 范圍為 10.10.10.0/24。

當我們在 SDK 中調用“PutObject”(但可以是任何 S3 方法)並給出我們存儲桶的名稱時,來自 SDK 的結果請求針對的是公共 S3 ZA12A3079E14CED46E69BA52B.8Axxx 地址。 但是,這不會被路由為:Direct Connect -> VPC -> VPC Endpoint -> S3,相反,我們的路由器會將流量路由到 Internet 代理(作為默認 0.0.0.0/0 路由) - 因為 VPC CIDR 范圍為 10.10.10.0/24。

我的問題是(顯然):是否有正確的方法通過 AWS Direct Connect 而不是通過互聯網路由流量

我希望有類似的東西:

  • SDK 命令中有一個選項可包括應首先向其發送請求的其他 IP
  • 有一些我們可以啟動的 S3 本地服務
  • 在一些涉及的服務中有一個簡單的按鈕可以按下。

免責聲明:我不是真正的網絡或 AWS 基礎設施大師,所以請原諒我的一些含糊之處。

如果不使用代理,您將無法通過 Direct Connect 私有 VIF 訪問 VPC 終端節點。

您可以改為分配公共 VIF。 當您在 VGW 中啟用路由傳播時,AWS 會將所有公共路由通告給客戶的路由器,因此流向該區域中 AWS 服務的所有流量都通過 Direct Connect。

公共虛擬接口可以使用公共 IP 地址訪問所有 AWS 公共服務。 公共虛擬接口允許您連接到全球所有 AWS 公共 IP 空間。 任何 Direct Connect 位置的 Direct Connect 客戶都可以創建公共虛擬接口來接收亞馬遜的全球 IP 路由

使用公共 VIF 也有其缺點。 客戶喜歡利用高速 AWS Direct Connect 將文件復制到 S3。 由於 S3 是一項公共服務,因此當前的標准解決方案是使用公共 VIF 將整個 S3 公共地址范圍宣傳到本地,如前所述。 但是,這意味着所有本地用戶都可以上傳到任何 S3 存儲桶,包括他們自己個人賬戶上的個人 S3 存儲桶。 當前的解決方案描述如下。

即使您使用 S3 私有終端節點服務,終端節點仍由代表該區域中 AWS S3 的公共 CIDR 塊表示。 查看此內容,了解通過直接連接訪問 S3 存儲桶的另一種方法,而無需向世界開放並放棄訪問權限。

https://docs.aviatrix.com/HowTos/sfc_faq.html

AWS 現在支持 s3 的 privatelink,它允許使用端點特定的 DNS 名稱通過 Direct Connect/VPN 直接發送流量。 https://aws.amazon.com/blogs/aws/aws-privatelink-for-amazon-s3-now-available/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM