#amazon-web-services #amazon-ecs #aws-fargate #aws-security-group #aws-cloudmap
#amazon-веб-сервисы #amazon-ecs #aws-fargate #aws-security-group #aws-cloudmap
Вопрос:
Я использую 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.
Есть ли что-то, чего мне не хватает в моей настройке?
Ответ №1:
Вместо белых списков IP-адресов вам следует попробовать белые списки групп безопасности. Например, если в ECS запущены две отдельные службы, можно назначить первой службе группу безопасности A, а второй службе — группу безопасности B и создать в группе безопасности A правило, разрешающее доступ из группы безопасности B.
В качестве альтернативы, вы могли бы, по крайней мере, ограничить диапазон IP-адресов блоком CIDR вашего VPC, чтобы ничто за пределами VPC не могло получить доступ к вашим службам.