Amazon web services 专用托管实例的docker hub和vpc端点的路由表:AWS
我有一个docker映像,它只是一个Java应用程序。java应用程序从DynamoDB和S3存储桶读取数据并输出一些东西(这是一个测试应用程序)。我已将docker图像托管到公共docker hub repo上 在AWS中,我创建了私有子网,该子网通过AWS ECS托管EC2。现在要有高安全性;我将VPC端点用于容器的DynamoDB和S3 bucket操作 我使用NAT网关允许EC2从docker hub中提取docker图像 问题: 当我移除VPC端点时,应用程序能够通过NAT读取DynamoDB和S3。这意味着流量是通过公共网络传输的 想法:Amazon web services 专用托管实例的docker hub和vpc端点的路由表:AWS,amazon-web-services,amazon-s3,amazon-ec2,amazon-dynamodb,amazon-ecs,Amazon Web Services,Amazon S3,Amazon Ec2,Amazon Dynamodb,Amazon Ecs,我有一个docker映像,它只是一个Java应用程序。java应用程序从DynamoDB和S3存储桶读取数据并输出一些东西(这是一个测试应用程序)。我已将docker图像托管到公共docker hub repo上 在AWS中,我创建了私有子网,该子网通过AWS ECS托管EC2。现在要有高安全性;我将VPC端点用于容器的DynamoDB和S3 bucket操作 我使用NAT网关允许EC2从docker hub中提取docker图像 问题: 当我移除VPC端点时,应用程序能够通过NAT读取Dyna
感谢您的帮助如果您希望仅将NAT(通过DNS主机名)上的出站流量限制为DockerHub,您将需要一个第三方解决方案,该解决方案可以在出站流量穿越internet之前允许或拒绝出站流量 您将在具有NAT网关访问权限的单独子网中安装此设备。然后,在ECS的现有子网中,您将更新路由表,使
0.0.0.0/0
路由与此设备对话(通过指定其ENI)。如果您检查,可能已经有一个解决方案来完成域过滤器
或者您可以自动创建一个工具,该工具能够为DockerHub清除白名单中的IP地址,然后让它将这些地址添加为允许使用NACL的所有流量规则。此NACL将仅应用于NAT网关所在的子网
关于您的第二个问题,从VPC的角度来看,通过将S3和DynamoDB端点的前缀列表添加到路由表中,它将通过专用路由转发命中这些API端点的任何请求
此时,DynamoDB无法阻止公共路由交互,但S3可以。根据其bucket策略,您可以拒绝任何尝试在列出的VPC端点之外进行交互的访问。但是,请注意不要阻止自己从控制台访问,只阻止您不希望允许的特定动词。谢谢。市场解决方案我不确定它至少对基于生产的解决方案有多好。VPCE的Bucket策略是一个很好的解决方案。但总的来说,对于基于产品的应用程序,我看不到更简单的解决方案,除非我选择使用AWS容器注册表,然后就不需要NAT了