亚马逊AWS官方博客
使用 AWS PrivateLink 实现中国区访问海外区 Amazon S3
![]() |
随着全球化业务拓展需求的持续增长,越来越多的中国企业需要在国内数据中心与海外区自有 Amazon S3 存储桶之间构建私有数据通道,以满足合规性与审计要求。AWS PrivateLink for Amazon S3 提供了安全高效的解决方案 — 支持通过 Direct Connect 专线或 Site-to-site VPN等私有连接,实现私网 IP地址对S3资源的私有化访问。我们此前在《Building a Solution for China Cross-Border VPC Connection》博客中,已详细阐述了通过中国三大基础运营商跨境线路将亚马逊中国区域与海外区域的互联方法,这也是本方案的必要前提。
本文介绍亚马逊中国区域 VPC与本地 IDC如何借助中国三大基础电信运营商跨境专线,结合 PrivateLink for S3技术实现客户站点与AWS海外区域自有S3存储桶的安全直连。文中将分步骤介绍关键配置流程:首先启用 S3 PrivateLink 的私有 DNS 功能,继而在亚马逊中国区域 Route 53 及本地 DNS 解析器上配置转发规则,将 S3 域名查询定向至客户海外区域的入站解析端点( inbound resolver endpoint),从而直接解析到 S3 PrivateLink 分配的私有 IP地址,有效规避DNS解释异常问题。
架构说明
开始之前,请确认已在亚马逊中国区域 VPC 与海外区域 VPC 之间完成 China Cross-Border VPC Connection,和打通本地 IDC 与中国区域的 Direct Connect 专线或 Site-to-site VPN,使三地网络互联互通。
![]() |
海外区域创建 S3 Gateway endpoint
- 进入 VPC 界面,在 PrivateLink and Lattice 菜单栏下点击 Endpoints 后,点击 Create endpoint ;
- 输入 Name tag,选择 AWS services后,搜索 S3 关键字,选择类型为 Gateway 的 amazonaws.<Region>.s3 ;
![]() |
- 选择 VPC 和 Route tables(以私有子网路由表为例),Policy 默认为 Full access,点击 Create endpoint ;
- 创建成功后,在勾选过的私有子网路由表里会添加一条 S3 prefix 的路由条目;
![]() |
- 验证海外区域的客户端使用 gateway endpoint 访问 S3 ;
海外区域创建 S3 Interface endpoint
- 进入 VPC 界面,在 PrivateLink and Lattice 菜单栏下点击 Endpoints 后,点击 Create endpoint ;
- 输入 Name tag,选择 AWS services后,搜索 S3 关键字,选择类型为 Interface 的 amazonaws.<Region>.s3 ;
![]() |
- 选择 VPC 和 Subnet(建议选择多可用区);
- 在 Additional settings 中勾选 Enable DNS name 和 Enable private DNS only for inbound endpoint ;
![]() |
在 S3 interface endpoint 上勾选“Enable DNS name”即启用私有 DNS 后,AWS 会在后台自动创建一条与该 VPC 关联的私有托管区,并在其中为该 interface endpoint 添加资源记录,把下列S3 DNS 名称全部解析到对应的私有 IP 地址:
- Regional Bucket (s3.<Region>.amazonaws.com)
- Control (s3-control.<Region>.amazonaws.com)
- Access Point (s3-accesspoint.<Region>.amazonaws.com)
启用私有 DNS 后,客户端可直接使用上述 S3 域名访问,无需更改成interface endpoint 域名,实现完全透明。
一旦勾选“Enable DNS name”,系统会默认同时勾选“Enable private DNS only for inbound endpoint”。在这一配置下, interface endpoint 仅承载来自本地网络的流量,同一 VPC 内的流量则自动走成本更低的gateway endpoint。
- 选择 Security groups(须放通 HTTP 和 HTTPS 端口)和 Policy 后,点击 Create endpoint ;
海外区域创建 Inbound resolver endpoint
为避免DNS解释异常问题,您应在海外区域创建一个 inbound endpoint,并将来自国内、指向海外 S3 域名的查询全部转发至此 endpoint。
- 进入 Route 53 界面,在 Resolver 菜单下,点击 Inbound endpoints,然后点击 Create inbound endpoint ;
- 输入 Endpoint name,Endpoint Category 选择 Default,选择 VPC 和Security group(须放通 TCP 和 UDP 53 端口),Endpoint Type 选择 IPv4,Protocols 选择 Do53,IP addresses 选择多可用区的私有子网,并选择自动分配 IP,点击 Create inbound endpoint;
Inbound endpoint 会为您分配两个私网 IP 地址,本地 DNS resolver 只需将查询转发至这两个地址即可。
![]() |
中国区域创建 Outbound resolver endpoint 和转发规则
- 进入 Route 53 界面,在 Resolver 菜单下,点击 Outbound endpoints,然后点击 Create Outbound endpoint ;
- 输入 Endpoint name,选择 VPC 和Security group(须放通 TCP 和 UDP 53 端口),Endpoint Type 选择 IPv4,Protocols 选择 Do53,IP addresses 选择多可用区的私有子网,并选择自动分配 IP,点击 Create outbound endpoint ;
- 在 Resolver 菜单下,点击Rules,然后点击 Create rule ;
- 输入 Name,Rule type 选择 Forward,Domain name 填写 com,选择 VPC和 Outbound endpoint(第二步创建时生成的),IP Address Type 是 IPv4。
- 在 Target IP address 中填写海外区域 inbound endpoint 的两个 IP 地址,0.12.77 和 10.0.2.151,点击 Submit ;
- 验证中国区域的客户端使用 PrivateLink interface endpoint 访问 S3 ;
中国IDC 设置 DNS 转发规则
接下来在本地 DNS 解析器上添加一条条件转发规则,具体步骤随所用软件而异。以 BIND 为例,在 named.conf 中写入下列内容,其中 10.0.12.77 与 10.0.2.151 为海外区 inbound endpoints 的私网 IP 地址:
总结
本文系统阐述了一套基于PrivateLink 的中国区域及本地 IDC 安全访问海外自有S3 存储桶的解决方案:通过为海外 S3 接口端点(interface endpoint)启用私有 DNS功能,并在本地 DNS 设置转发规则,结合跨境专线实现域名解析与流量直达。该方案具备高度兼容性,可基于私有网络架构可直接承载 S3的访问流量,无需对客户端代码或配置进行调整,实现了跨境数据访问的无缝集成与高效落地。
参考文档
[1] 使用 AWS PrivateLink 安全混合访问 Amazon S3
[2] 推出适用于 Amazon S3 的 AWS PrivateLink 私有 DNS 支持