S3 存储桶访问仅限于 VPN
S3 bucket access restricted to VPN
我已经为我的基础设施团队创建了某种私有文档,上传到 S3 Bucket 并希望将其设为私有,只能在我们的 VPN 上访问。
我试图允许这些 vpn ip 范围:173.12.0.0/16 和 173.11.0.0/16 但我一直收到 403 - 禁止(在 vpn 内)。
谁能帮我调试或找出我哪里出错了?
我的存储桶策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "vpnOnly",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::calian.io/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": [
"173.12.0.0/16",
"173.11.0.0/16"
]
}
}
}
]
}
默认情况下,S3 请求通过 Internet,因此请求 'appear' 来自 public IP 地址。
或者,您可以为 S3 添加一个 VPC 端点,这将使请求来自'from' 私有 IP 地址.
您也可以考虑使用 Amazon S3 Access Points 来控制对存储桶的访问。
从您尝试从中访问 S3 存储桶的其中一台机器转到位于 https://checkip.amazonaws.com/
的“AWS Check My IP”端点
从那里确认您看到的 IP 地址在您在策略中定义的范围内。我的猜测是它会有所不同 - 相反,您会看到您的 VPN 或 NAT Gateway/Instance 的 public IP 地址,因为您的流量可能会通过互联网到达 S3。
确定您正在使用的 IP 地址后,您可以更新安全组以包含它,或者研究 VPC 端点等解决方案以保持您的专用网络上的流量。
由于 VPC 端点只能从 VPC 内的 Amazon EC2 实例访问,本地实例必须代理所有远程请求才能
利用 VPC 端点连接。以下部分概述了一种基于 DNS 的代理解决方案,该解决方案将适当的流量从公司网络定向到
Amazon S3 的 VPC 端点,如下图所示。
我已经为我的基础设施团队创建了某种私有文档,上传到 S3 Bucket 并希望将其设为私有,只能在我们的 VPN 上访问。
我试图允许这些 vpn ip 范围:173.12.0.0/16 和 173.11.0.0/16 但我一直收到 403 - 禁止(在 vpn 内)。
谁能帮我调试或找出我哪里出错了?
我的存储桶策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "vpnOnly",
"Effect": "Allow",
"Principal": "*",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::calian.io/*",
"Condition": {
"IpAddress": {
"aws:SourceIp": [
"173.12.0.0/16",
"173.11.0.0/16"
]
}
}
}
]
}
默认情况下,S3 请求通过 Internet,因此请求 'appear' 来自 public IP 地址。
或者,您可以为 S3 添加一个 VPC 端点,这将使请求来自'from' 私有 IP 地址.
您也可以考虑使用 Amazon S3 Access Points 来控制对存储桶的访问。
从您尝试从中访问 S3 存储桶的其中一台机器转到位于 https://checkip.amazonaws.com/
的“AWS Check My IP”端点从那里确认您看到的 IP 地址在您在策略中定义的范围内。我的猜测是它会有所不同 - 相反,您会看到您的 VPN 或 NAT Gateway/Instance 的 public IP 地址,因为您的流量可能会通过互联网到达 S3。
确定您正在使用的 IP 地址后,您可以更新安全组以包含它,或者研究 VPC 端点等解决方案以保持您的专用网络上的流量。
由于 VPC 端点只能从 VPC 内的 Amazon EC2 实例访问,本地实例必须代理所有远程请求才能
利用 VPC 端点连接。以下部分概述了一种基于 DNS 的代理解决方案,该解决方案将适当的流量从公司网络定向到
Amazon S3 的 VPC 端点,如下图所示。