小编ati*_*h.s的帖子

AWS ECS 网络 ACL 要求

我目前在 AWS 中有一个设置,如下所示:

在此处输入图片说明

来自aws fargate 任务网络的图像源。

我使用 AWS ECR 来存储我的 docker 镜像,并且在我的任务定义中,作为容器镜像,我使用了提供的存储库 URI。一切都在同一个地区,他们工作得很好。

但是,我想通过仅将特定端口列入白名单来加强 AWS 上的安全性。从安全组的角度来看,我已经根据需要更新了它们,一切仍然按预期工作。但是,对于网络 ACL,我在 Fargate 任务中遇到了一些问题。在公共子网的 ACL 部分,对于入站规则,我想只允许从 Internet (0.0.0.0/0) 访问 HTTPS 和 HTTP。这样做是造成这个问题,我的fargate任务:ResourceInitializationError: unable to pull secrets or registry auth: pull command failed: : signal: killed。需要注意的是,两个子网(私有和公共)的出站规则都允许流量到达任何地方 (0.0.0.0/0)。

我知道 Fargate 任务需要连接到 Internet 才能在 ECR 中提取 docker 映像,而 NAT 可以帮助做到这一点。docker pulldocker push使用 HTTPS 并且私有子网允许来自所有来源的所有流量,并且出站流量相同。

公共子网的 NACL 在此处输入图片说明

请建议如何修改网络 ACL 以仅将特定端口列入白名单。

PS:最后的方法是使用 AWS PrivateLink 访问 ECR 存储库,但我还不想这样做。

security amazon-web-services amazon-ecs amazon-ecr

5
推荐指数
1
解决办法
2480
查看次数