Redshift复制和卸载安全性

问题描述 投票:3回答:3

我的Redshift群集位于一个完全锁定的私有子网中。我想在Redshift中运行COPYUNLOAD命令,它们将与S3存储桶交互。我知道我会想要使用VPC端点连接S3存储桶,但我在文档中没有看到任何内容显示如何打开正确的端口到正确的IP范围以允许COPYUNLOAD发生,这是我唯一的方法现在让它工作就是保持入站和出站网络ACL和安全组的开放性。我不习惯在生产中运行它,并且必须有更好的方法来保护Redshift用于这些操作。

任何帮助深表感谢!

amazon-web-services amazon-s3 amazon-redshift amazon-vpc
3个回答
1
投票

安全组足以保护Amazon Redshift群集。

由于系统通信的方式,NACL在资源上的配置非常困难。例如,Amazon EC2实例可以在端口5439上向Redshift发送请求。该数据包包含一个返回地址,该地址在EC2实例上具有随机选择的端口,应在该端口发送响应。这是计算机在向系统发送多个请求时处理响应的方式。

缺点是您不知道发回响应所需的端口。这就是您在配置NACL时遇到问题的原因。

但是,安全组是有状态的,并自动允许出站响应返回到原始请求中指定的端口。只需将它们视为智能NACL即可。

底线:使用安全组,而不是NACL。


1
投票

假设Redshift将S3作为Web服务访问(就像其他所有操作一样),那么打开443出站就足够了。安全组不会阻止返回流量,因此不需要打开入站端口(当然,除了5439,指定的源)。

但是你为什么要关注阻止来自Redshift的出站流量?通常,如果担心不受控制的程序将在服务器上运行,则只会阻止出站流量。您可能会过度考虑网络配置。


1
投票

另一个可能的原因是增强型VPC路由https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-routing.html

如果启用此选项,并且您的群集没有公共IP,并且您的VPC被锁定到外部流量,那么您将需要为S3创建VPC端点以保持VPC内部的所有流量。

参考:https://docs.aws.amazon.com/redshift/latest/mgmt/enhanced-vpc-working-with-endpoints.html

© www.soinside.com 2019 - 2024. All rights reserved.