有没有办法获取 IP 地址来引用 Amazon S3 存储位置?我公司目前考虑采用的解决方案涉及设置具有弹性 IP 的 EC2 服务器,并使用 Squid 作为 S3 位置的代理。有没有更好的方法?
答案1
我认为这是为了与热爱静态防火墙规则的天才合作。
不幸的是,可能没有更好的方法。您只需在 S3 前面放置一个具有固定 IP 地址的代理,即可向客户端提供固定 IP。理论上,您可以选择现有的 S3 IP,但如果亚马逊更改其网络,它可能会从您下方更改。
我们与一些客户也遇到过类似的问题,他们坚持认为按 IP 地址将允许的站点列入白名单比使用过滤代理“更安全”(考虑到互联网的变化速度,这甚至是合理的)。因此,我们无法使用 CDN(尽管基于任播的 CDN(如 MaxCDN 或 CacheFly)可能会奏效,我们正在测试)。
我不会使用 squid,除非你是个十足的受虐狂。Nginx 是更好的反向代理选择:更小、更快、更安全、更易于配置。
答案2
通过引入,Global Accelerator
您可以拥有一组全局唯一的 IP 地址,这些 IP 地址可以指向一个Application Load Balancer (ALB)
指向 S3 存储桶的 IP 地址。
然而:
- 在这种情况下您不能使用 CDN。
- 所有流量都流经 ALB - 这可能是成本的一个主题。
- 您有多个 IP 地址,但流量是智能路由的,应该可以快速传输。