我正在使用AWS ECS Fargate,我目前正在使用服务发现来允许我的任务彼此通信。我有一个问题,只有当我将这个安全组放在它们上时,我的任务才能进行通信。
resource "aws_security_group" "ecs_config_service" {
name = "staging-ecs-config-service"
description = "We need this so our services can communicate"
vpc_id = module.vpc.vpc_id
ingress {
from_port = 0
to_port = 0
protocol = "-1"
cidr_blocks = [
"0.0.0.0/0"
]
}
}如果我删除这个安全组,并且只允许负载均衡器中的通信量,容器就无法通信。这感觉有点安全风险,允许来自任何地方的流量,但我不知道如何才能让我的任务沟通。
我的ECS集群位于VPC中的一个私有子网中。
我的设置有什么遗漏了吗?
发布于 2020-12-08 14:07:20
不要白名单IP地址,您应该尝试白名单安全组。例如,如果ECS中运行了两个单独的服务,则可以将安全组A分配给第一个服务,安全组B分配给第二个服务,并在安全组A中创建允许从安全组B进入的规则。
或者,您至少可以将IP范围限制在VPC的CIDR块上,这样VPC之外的任何内容都无法访问您的服务。
https://stackoverflow.com/questions/65198926
复制相似问题