-2

Контейнеры-докеры за ELB получают динамические порты, которые автоматически регистрируются с помощью ELB, чтобы они могли перенаправлять на них трафик.Динамические порты и AWS Адаптация Балансировщик нагрузки и ECS

Для того, чтобы ваши веб-серверы были доступны для ELB, вам необходимо открыть все эти порты 1024 - 65535, исходящие из вашей группы безопасности.

Есть ли способ не открывать группу безопасности для диапазона портов, а только в тех банках, которые использует ELB?

ответ

3

Группы безопасности никогда не изменяются AWS, так как это может вызвать конфликты и проблемы безопасности. Единственным исключением могут быть такие сервисы, как Elastic Beanstalk. Вам, вероятно, придется делать то, что говорит форум, и разрешать диапазоны портов.

Per http://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_PortMapping.html

The default ephemeral port range is 49153 to 65535, and this range is used for Docker versions prior to 1.6.0. For Docker version 1.6.0 and later, the Docker daemon tries to read the ephemeral port range from /proc/sys/net/ipv4/ip_local_port_range; if this kernel parameter is unavailable, the default ephemeral port range is used. You should not attempt to specify a host port in the ephemeral port range, because these are reserved for automatic assignment. In general, ports below 32768 are outside of the ephemeral port range.

Если вы на самом деле заботитесь о том, что порты, у вас есть несколько вариантов, насколько я могу судить:

  1. Не использовать ALB и передние порты специально, чтобы вы могут указывать их в группе безопасности ELB.
  2. Поместите ALB в той же самой группе безопасности в приложениях и использовать правила внутренней группы безопасности, такие как TCP 0-65535 для sg-foo где sg-foo является группа безопасности как ALB и приложения находятся в
  3. Поместите ALB в группе безопасности sg-foo и положить правило на sg-app (где sg-app является группа безопасности ваших приложений в) и разрешить трафик TCP 0-65535 из sg-foo внутри sg-app