Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье объясняется, как настроить правила в брандмауэре, чтобы разрешить доступ к реестру контейнеров Azure. Например, для извлечения образа контейнера устройству Azure IoT Edge, которое находится за брандмауэром или прокси-сервером, может потребоваться доступ к реестру контейнеров. Или заблокированному серверу в локальной сети может потребоваться доступ для отправки образа.
Сведения о настройке входящего сетевого доступа к реестру контейнеров только в виртуальной сети Azure см. в статье "Настройка приватного канала Azure" для реестра контейнеров Azure.
Сведения о конечных точках реестра
Чтобы извлечь или отправить образы или другие артефакты в реестр контейнеров Azure, клиент, такой как управляющая программа Docker, должна взаимодействовать по протоколу HTTPS с двумя или несколькими различными конечными точками. Для клиентов, обращаюющихся к реестру за брандмауэром, необходимо настроить правила доступа для каждой конечной точки. Все конечные точки достигаются через порт 443.
Глобальная конечная точка (REST API) — операции управления аутентификацией и реестром обрабатываются через общедоступную конечную точку REST API реестра. Эта конечная точка является именем входа на сервер для реестра. Пример:
myregistry.azurecr.io-
Конечная точка API REST реестра для сертификатов — реестр контейнеров Azure использует подстановочный SSL-сертификат для всех поддоменов. При подключении к реестру контейнеров Azure с помощью SSL клиент должен иметь возможность загрузить сертификат для рукопожатия TLS. В таких случаях
azurecr.ioтакже должен быть доступен.
-
Конечная точка API REST реестра для сертификатов — реестр контейнеров Azure использует подстановочный SSL-сертификат для всех поддоменов. При подключении к реестру контейнеров Azure с помощью SSL клиент должен иметь возможность загрузить сертификат для рукопожатия TLS. В таких случаях
Конечная точка хранилища (данные) — Azure выделяет хранилище больших двоичных объектов в учетных записях служба хранилища Azure от имени каждого реестра для хранения данных образов контейнеров и других артефактов. При работе со слоями образов в реестре контейнеров Azure клиент выполняет запросы с помощью конечной точки учетной записи хранения, предоставляемой реестром.
Если реестр геореплицированный, клиенту может потребоваться взаимодействовать с конечной точкой данных в определенном регионе или в нескольких реплицируемых регионах.
-
Региональная конечная точка (если включена) — если региональные конечные точки включены в реестре SKU уровня "Премиум ", каждая геореплика получает региональную конечную точку формы
<registry-name>.<region>.geo.azurecr.io. Региональные конечные точки позволяют клиентам напрямую подключаться к определённой географической реплике для аутентификации и выполнения операций push/pull/delete, минуя глобальную конечную точку. Если вы используете правила брандмауэра, необходимо разрешить доступ к региональной конечной точке для каждой геореплики, к которым подключаются клиенты.
Полный список типов конечных точек и шаблонов FQDN см. в справочнике по конечным точкам.
Разрешение доступа к REST и конечным точкам данных
-
Конечная точка REST — разрешение доступа к полному имени входа на сервер для реестра,
<registry-name>.azurecr.io, или к соответствующему диапазону IP-адресов. -
Конечная точка хранилища (данные) — позволяет доступ ко всем учетным записям хранилища Azure Blob с использованием подстановочного знака
*.blob.core.windows.netили соответствующего диапазона IP-адресов.
Note
Реестр контейнеров Azure поддерживает выделенные конечные точки данных, что позволяет жестко ограничить правила брандмауэра клиента для хранилища реестра. При необходимости включите конечные точки данных во всех регионах, где размещается или реплицируется реестр, используя формат <registry-name>.<region>.data.azurecr.io.
Если региональные конечные точки также включены, разрешите доступ к <registry-name>.<region>.geo.azurecr.io для каждой геореплики, к которой подключаются клиенты.
Если включены конечные точки с двойным стеком IPv6 , конечные точки реестра разрешаются как по протоколу IPv4, так и по протоколу IPv6. Правила брандмауэра на основе указанных выше полных доменных имен продолжают работать без изменений. Если вы разрешаете доступ по диапазонам IP-адресов вместо полных доменных имен, учитывайте трафик IPv6 в своих правилах.
Полное доменное имя (FQDN) реестра контейнеров Azure
Реестр контейнеров Azure использует два полных доменных имени: URL-адрес входа и конечную точку данных.
- URL-адрес входа и конечная точка данных доступны из виртуальной сети, используя частные IP-адреса, включив приватный канал.
- Реестр, который не использует конечные точки данных, должен получить доступ к данным из конечной точки формы
*.blob.core.windows.net. Это не обеспечивает необходимую изоляцию при настройке правил брандмауэра. - Реестр с активированной частной ссылкой автоматически получает выделенную конечную точку данных.
- Одна выделенная конечная точка данных создается для каждого региона для реестра.
- URL-адрес входа остается неизменным, включена или отключена выделенная конечная точка данных.
Разрешение доступа по диапазону IP-адресов
Если у вашей организации есть политики для предоставления доступа только к определенным IP-адресам или диапазонам адресов, скачайте последнюю версию диапазонов IP-адресов Azure и тегов служб — общедоступное облако.
Чтобы найти диапазоны IP-адресов конечной точки ACR REST, доступ к которым необходимо разрешить, найдите AzureContainerRegistry в файле JSON.
Important
Диапазоны IP-адресов для служб Azure могут измениться, а обновления публикуются еженедельно. Регулярно загружайте файл JSON и вносите необходимые обновления в правила доступа. Если сценарий предполагает настройку правил группы безопасности сети в виртуальной сети Azure или если вы используете Брандмауэр Azure, используйте тег службыAzureContainerRegistry.
IP-адреса REST для всех регионов
{
"name": "AzureContainerRegistry",
"id": "AzureContainerRegistry",
"properties": {
"changeNumber": 10,
"region": "",
"platform": "Azure",
"systemService": "AzureContainerRegistry",
"addressPrefixes": [
"13.66.140.72/29",
[...]
IP-адреса REST для определенного региона
Выполните поиск конкретного региона, например AzureContainerRegistry.AustraliaEast.
{
"name": "AzureContainerRegistry.AustraliaEast",
"id": "AzureContainerRegistry.AustraliaEast",
"properties": {
"changeNumber": 1,
"region": "australiaeast",
"platform": "Azure",
"systemService": "AzureContainerRegistry",
"addressPrefixes": [
"13.70.72.136/29",
[...]
IP-адреса хранилища для всех регионов
{
"name": "Storage",
"id": "Storage",
"properties": {
"changeNumber": 19,
"region": "",
"platform": "Azure",
"systemService": "AzureStorage",
"addressPrefixes": [
"13.65.107.32/28",
[...]
IP-адреса хранилища для определенного региона
Выполните поиск конкретного региона, например Storage.AustraliaCentral.
{
"name": "Storage.AustraliaCentral",
"id": "Storage.AustraliaCentral",
"properties": {
"changeNumber": 1,
"region": "australiacentral",
"platform": "Azure",
"systemService": "AzureStorage",
"addressPrefixes": [
"52.239.216.0/23"
[...]
Разрешение доступа по тегу службы
В виртуальной сети Azure используйте правила безопасности сети для фильтрации трафика от ресурса, например виртуальной машины, в реестр контейнеров. Чтобы упростить создание сетевых правил Azure, используйте тег службыAzureContainerRegistry. Тег службы представляет группу префиксов IP-адресов для глобального доступа к службе Azure или в определенном регионе Azure. Тег автоматически обновляется при изменении адресов.
Например, создайте правило группы безопасности сети для исходящего трафика с назначением AzureContainerRegistry, чтобы разрешить трафик в реестр контейнеров Azure. Чтобы разрешить доступ к тегу службы только в определенном регионе, укажите регион в следующем формате: AzureContainerRegistry.[region name]
Включение выделенных конечных точек данных
Инструкции по включению выделенных конечных точек данных с помощью портала Azure или Azure CLI см. в разделе Dedicated data endpoints in Реестр контейнеров Azure.
После настройки выделенных конечных точек данных для реестра можно включить правила доступа брандмауэра клиента для конечных точек данных. Включите правила доступа к конечной точке данных для всех необходимых разделов реестра.
Настройка правил брандмауэра клиента для MCR
Чтобы получить доступ к реестру контейнеров Майкрософт (MCR) за брандмауэром, ознакомьтесь с рекомендациями по настройке правил брандмауэра клиента MCR. MCR — это основной реестр для всех опубликованных корпорацией Майкрософт образов Docker, таких как образы Windows Server.
Дальнейшие действия
- Узнайте о рекомендациях Azure по обеспечению безопасности сети.
- Дополнительные сведения о группах безопасности в виртуальной сети Azure.
- Дополнительные сведения о настройке Приватный канал для реестра контейнеров.
- Дополнительные сведения о выделенных конечных точках данных для реестра контейнеров Azure.
- См. справочник по конечным точкам, где приведен полный список типов конечных точек реестра и шаблонов FQDN.