Вы публикуете веб-приложение/API? Если это так, вам, вероятно, следует использовать балансировщик нагрузки приложений, а не балансировщик сетевой нагрузки. NLB обычно используются для приложений, отличных от http(s), вы можете использовать их с http(s), но ALB, как правило, лучше подходят.
Рекомендации по дизайну
Я предлагаю вам подумать, действительно ли вам нужен статический IP. Некоторым устаревшим или встроенным системам это может понадобиться, но в большинстве случаев DNS-адрес подходит. Если вам действительно нужен статический IP-адрес, вы можете использовать одна из этих техник (или другие, которые вы найдете в Google), чтобы дать ALB статический IP-адрес, AWS Global Accelerator сделает это, но я не уверен, что это хорошее решение для вас. Вы также должны учитывать высокую доступность.
Что касается статических IP-адресов для внесения в белый список, вы можете рассмотреть возможность аутентификации либо с помощью AWS Cognito, интегрированного с ALB (лучше всего), либо внутри вашего контейнера. Обычно мы используем федерацию с Azure AD, но вы можете определить пользователей/группы в Cognito. Трафик пользователей к ALB попадает в целевой контейнер/сервер только в том случае, если Cognito авторизует трафик.
Основная рекомендация: AWS ALB, интегрированный с AWS Cognito для аутентификации, группа безопасности вокруг ALB, если хотите, но белый список не требуется.
Оригинальный вопрос
ALB имеют группы безопасности. Балансировщики сетевой нагрузки этого не делают. NLB невидим для трафика, поэтому вы размещаете группу безопасности вокруг своего ресурса (контейнера), а не балансировщика нагрузки.
Параметры белого списка IP-адресов ALB:
- Вы можете внести в белый список доступ к ALB с помощью группы безопасности, но вы не можете внести ее в черный список с помощью группы безопасности. Существует максимальное количество правил, но к каждому ALB, вероятно, может быть подключено несколько SG, но будьте осторожны, так как это может повлиять на производительность. Это моя дополнительная рекомендация, если вы не хотите использовать Cognito.
- Вы можете внести в белый или черный список с помощью списков управления доступом к сети (NACL)
- Вы можете сделать что-то внутри контейнера с локальным брандмауэром, но я не предлагаю
Параметры белого списка IP-адресов NLB:
- Группа безопасности вокруг контейнера ECS
- NACL вокруг подсети(ей)