Поделиться через


Защита пользовательской виртуальной сети в приложениях контейнеров Azure с помощью групп безопасности сети

Группы безопасности сети (NSG), необходимые для настройки виртуальных сетей, похожи на параметры, необходимые Kubernetes.

Вы можете заблокировать сеть через группы безопасности сети с более строгими правилами, чем правила NSG по умолчанию, чтобы контролировать весь входящий и исходящий трафик для среды приложений контейнеров на уровне подписки.

В среде профилей рабочей нагрузки поддерживаются определяемые пользователем маршруты (UDR) и защита исходящего трафика с помощью брандмауэра . При использовании среды профилей внешней рабочей нагрузки входящий трафик в приложения контейнеров Azure направляется через общедоступный IP-адрес, который существует в управляемой группе ресурсов, а не через подсеть. Это означает, что блокировка входящего трафика через NSG или брандмауэр в среде внешних профилей рабочих нагрузок не поддерживается. Дополнительные сведения см. в разделе "Сеть" в средах приложений контейнеров Azure.

В среде потребления только пользовательские маршруты (определяемые пользователем) маршруты. В среде потребления только экспресс-маршруты не поддерживаются, а пользовательские определяемые пользователем маршруты (определяемые пользователем маршруты) имеют ограниченную поддержку. Дополнительные сведения о том, какой уровень поддержки UDR доступен только в среде потребления, см. в разделе часто задаваемых вопросов.

Разрешающие правила NSG

В следующих таблицах описано, как настроить коллекцию разрешающих правил NSG. Определенные правила зависят от типа среды.

Входящий трафик

Примечание.

При использовании профилей рабочей нагрузки правила Входящего NSG применяются только для трафика, который проходит через виртуальную сеть. Если для приложений-контейнеров настроено принимать трафик из общедоступного Интернета, входящий трафик проходит через общедоступную конечную точку вместо виртуальной сети.

Протокол Источник Исходные порты Назначение Конечные порты Description
TCP IP-адреса клиента * Подсетьприложения контейнера 1 80, 31080 Разрешить IP-адресам клиента получать доступ к приложениям контейнеров Azure при использовании HTTP. 31080 — это порт, на который прокси-сервер среды приложений контейнеров отвечает на HTTP-трафик. Он находится за внутренней подсистемой балансировки нагрузки.
TCP IP-адреса клиента * Подсетьприложения контейнера 1 443, 31443 Разрешить IP-адресам клиента получать доступ к приложениям контейнеров Azure при использовании HTTPS. 31443 — это порт, на котором прокси-сервер среды приложений контейнеров отвечает на трафик HTTPS. Он находится за внутренней подсистемой балансировки нагрузки.
TCP AzureLoadBalancer * Подсеть приложения контейнера 30000-327672 Разрешить Azure Load Balancer пробовать серверные пулы.

1 Этот адрес передается в качестве параметра при создании среды. Например, 10.0.0.0/21.
2 Полный диапазон требуется при создании приложений контейнеров Azure в качестве порта в диапазоне, который будет динамически выделен. После создания необходимые порты являются двумя неизменяемыми, статическими значениями и можно обновить правила NSG.

Исходящие

Протокол Источник Исходные порты Назначение Конечные порты Description
TCP Подсеть приложения контейнера * MicrosoftContainerRegistry 443 Это тег службы для реестра контейнеров Майкрософт для системных контейнеров.
TCP Подсеть приложения контейнера * AzureFrontDoor.FirstParty 443 Это зависимость тега MicrosoftContainerRegistry службы.
Любое Подсеть приложения контейнера * Подсеть приложения контейнера * Разрешить обмен данными между IP-адресами в подсети приложения контейнера.
TCP Подсеть приложения контейнера * AzureActiveDirectory 443 Если вы используете управляемое удостоверение, это необходимо.
TCP Подсеть приложения контейнера * AzureMonitor 443 Требуется только при использовании Azure Monitor. Разрешает исходящие вызовы к Azure Monitor.
TCP и UDP Подсеть приложения контейнера * 168.63.129.16 53 Позволяет среде использовать Azure DNS для разрешения имени узла.
TCP Подсетьприложения контейнера 1 * Реестр контейнеров Порт реестра контейнеров Это необходимо для взаимодействия с реестром контейнеров. Например, при использовании ACR вам потребуется AzureContainerRegistry и AzureActiveDirectory для назначения, а порт будет портом реестра контейнеров, если не используется частная конечная точка.2
TCP Подсеть приложения контейнера * Storage.<Region> 443 Требуется только при использовании Azure Container Registry для размещения изображений.

1 Этот адрес передается в качестве параметра при создании среды. Например, 10.0.0.0/21.
2 Если вы используете Реестр контейнеров Azure (ACR) с группами безопасности сети, настроенными в виртуальной сети, создайте частную конечную точку в ACR, чтобы разрешить приложениям контейнеров Azure извлекать образы через виртуальную сеть. Не нужно добавлять правило NSG для ACR при настройке с частными конечными точками.

Рекомендации

  • Если вы используете HTTP-серверы, может потребоваться добавить порты 80 и 443.
  • Не отрицайте явное отклонение DNS-адреса 168.63.129.16 Azure в исходящих правилах NSG, или среда приложений-контейнеров не сможет функционировать.