Konfigurace pravidel pro přístup k registru kontejnerů Azure za bránou firewall

Tento článek vysvětluje, jak nakonfigurovat pravidla pro bránu firewall tak, aby umožňovala přístup k registru kontejneru Azure. Například zařízení Azure IoT Edge za bránou firewall nebo proxy serverem může potřebovat přístup k registru kontejneru, aby bylo možné vyžádat image kontejneru. Nebo uzamčený server v místní síti může potřebovat přístup k nasdílení image.

Pokud místo toho chcete nakonfigurovat příchozí síťový přístup k registru kontejneru pouze ve virtuální síti Azure, přečtěte si téma Konfigurace služby Azure Private Link pro registr kontejnerů Azure.

Informace o koncových bodech registru

Aby bylo potřeba vyžádat nebo odeslat image nebo jiné artefakty do registru kontejneru Azure, klient, jako je démon Dockeru, musí interagovat přes HTTPS se dvěma různými koncovými body. Pro klienty, kteří přistupují k registru za bránou firewall, musíte nakonfigurovat pravidla přístupu pro oba koncové body. Oba koncové body jsou dosaženy přes port 443.

  • Koncový bod rozhraní REST API registru – Operace ověřování a správy registru se zpracovávají prostřednictvím veřejného koncového bodu rozhraní REST API registru. Tento koncový bod je název přihlašovacího serveru registru. Příklad: myregistry.azurecr.io

    • Koncový bod rozhraní REST API registru pro certifikáty – Azure Container Registry používá pro všechny subdomény certifikát SSL se zástupným znakem. Při připojování k registru kontejneru Azure pomocí PROTOKOLU SSL musí být klient schopný stáhnout certifikát pro metodu handshake protokolu TLS. V takových případech azurecr.io musí být také přístupná.
  • Koncový bod úložiště (dat) – Azure přidělí úložiště objektů blob v účtech Azure Storage jménem každého registru ke správě dat pro image kontejnerů a další artefakty. Když klient přistupuje k vrstvám imagí v registru kontejneru Azure, odešle požadavky pomocí koncového bodu účtu úložiště poskytovaného registrem.

Pokud je váš registr geograficky replikovaný, klient může potřebovat interakci s koncovým bodem dat v konkrétní oblasti nebo v několika replikovaných oblastech.

Povolení přístupu ke koncovým bodům REST a dat

  • Koncový bod REST – Povolení přístupu k plně kvalifikovanému názvu <registry-name>.azurecr.iopřihlašovacího serveru registru nebo přidruženému rozsahu IP adres
  • Koncový bod úložiště (dat) – Povolí přístup ke všem účtům úložiště objektů blob v Azure pomocí zástupné řady *.blob.core.windows.netnebo přidruženého rozsahu IP adres.

Poznámka:

Azure Container Registry zavádí vyhrazené koncové body dat, které umožňují úzce vymezit pravidla brány firewall klienta pro úložiště registru. Volitelně můžete povolit koncové body dat ve všech oblastech, ve kterých se registr nachází nebo replikuje, pomocí formuláře <registry-name>.<region>.data.azurecr.io.

Informace o plně kvalifikovaném názvu domény registru

Registr má dva plně kvalifikované názvy domén, přihlašovací adresu URL a koncový bod dat.

  • Přihlašovací adresa URL i koncový bod dat jsou přístupné z virtuální sítě pomocí privátní IP adresy povolením privátního propojení.
  • Registr, který nepoužívá koncové body dat, by musel přistupovat k datům z koncového bodu formuláře *.blob.core.windows.net a neposkytuje izolaci potřebnou při konfiguraci pravidel brány firewall.
  • Registr s povoleným privátním propojením získá vyhrazený datový koncový bod automaticky.
  • Pro registr se vytvoří vyhrazený datový koncový bod pro každou oblast.
  • Přihlašovací adresa URL zůstává stejná bez ohledu na to, jestli je povolený nebo zakázaný koncový bod dat.

Povolit přístup podle rozsahu IP adres

Pokud má vaše organizace zásady, které umožňují přístup jenom k určitým IP adresám nebo rozsahům adres, stáhněte si rozsahy IP adres a značky služeb Azure – veřejný cloud.

Pokud chcete najít rozsahy IP adres koncového bodu ACR, pro které potřebujete povolit přístup, vyhledejte v souboru JSON azureContainerRegistry .

Důležité

Rozsahy IP adres pro služby Azure se můžou měnit a aktualizace se publikují každý týden. Pravidelně si stáhněte soubor JSON a proveďte potřebné aktualizace v pravidlech přístupu. Pokud váš scénář zahrnuje konfiguraci pravidel skupiny zabezpečení sítě ve virtuální síti Azure nebo používáte Azure Firewall, použijte místo toho značku služby AzureContainerRegistry.

IP adresy REST pro všechny oblasti

{
  "name": "AzureContainerRegistry",
  "id": "AzureContainerRegistry",
  "properties": {
    "changeNumber": 10,
    "region": "",
    "platform": "Azure",
    "systemService": "AzureContainerRegistry",
    "addressPrefixes": [
      "13.66.140.72/29",
    [...]

IP adresy REST pro konkrétní oblast

Vyhledejte konkrétní oblast, například AzureContainerRegistry.AustraliaEast.

{
  "name": "AzureContainerRegistry.AustraliaEast",
  "id": "AzureContainerRegistry.AustraliaEast",
  "properties": {
    "changeNumber": 1,
    "region": "australiaeast",
    "platform": "Azure",
    "systemService": "AzureContainerRegistry",
    "addressPrefixes": [
      "13.70.72.136/29",
    [...]

IP adresy úložiště pro všechny oblasti

{
  "name": "Storage",
  "id": "Storage",
  "properties": {
    "changeNumber": 19,
    "region": "",
    "platform": "Azure",
    "systemService": "AzureStorage",
    "addressPrefixes": [
      "13.65.107.32/28",
    [...]

IP adresy úložiště pro konkrétní oblasti

Vyhledejte konkrétní oblast, například Storage.AustraliaCentral.

{
  "name": "Storage.AustraliaCentral",
  "id": "Storage.AustraliaCentral",
  "properties": {
    "changeNumber": 1,
    "region": "australiacentral",
    "platform": "Azure",
    "systemService": "AzureStorage",
    "addressPrefixes": [
      "52.239.216.0/23"
    [...]

Povolit přístup podle značky služby

Ve virtuální síti Azure použijte pravidla zabezpečení sítě k filtrování provozu z prostředku, jako je virtuální počítač do registru kontejneru. Ke zjednodušení vytváření pravidel sítě Azure použijte značku služby AzureContainerRegistry. Značka služby představuje skupinu předpon IP adres pro přístup ke službě Azure globálně nebo pro každou oblast Azure. Značka se při změně adres automaticky aktualizuje.

Vytvořte například pravidlo odchozí skupiny zabezpečení sítě s cílem AzureContainerRegistry , které povolí provoz do registru kontejneru Azure. Pokud chcete povolit přístup ke značce služby pouze v konkrétní oblasti, zadejte oblast v následujícím formátu: AzureContainerRegistry.[název oblasti].

Povolení vyhrazených datových koncových bodů

Upozorňující

Pokud jste dříve nakonfigurovali přístup brány firewall klienta ke stávajícím *.blob.core.windows.net koncovým bodům, přepnutí na vyhrazené koncové body dat ovlivní připojení klienta, což způsobí selhání vyžádané replikace. Pokud chcete zajistit, aby klienti měli konzistentní přístup, přidejte do pravidel brány firewall klienta nová pravidla koncového bodu dat. Po dokončení povolte vyhrazené datové koncové body pro vaše registry pomocí Azure CLI nebo jiných nástrojů.

Vyhrazené datové koncové body jsou volitelnou funkcí úrovně služby Registru kontejneru Premium . Informace o úrovních a omezeních služby registru najdete v tématu Úrovně služby Azure Container Registry.

Vyhrazené datové koncové body můžete povolit pomocí webu Azure Portal nebo Azure CLI. Koncové body dat se řídí regionálním vzorem <registry-name>.<region>.data.azurecr.io. Povolení koncových bodů dat v geograficky replikovaném registru umožňuje koncovým bodům ve všech oblastech repliky.

Portál

Povolení koncových bodů dat pomocí portálu:

  1. Přejděte do registru kontejneru.
  2. Vyberte Veřejný přístup k síti>.
  3. Zaškrtněte políčko Povolit vyhrazený datový koncový bod.
  4. Zvolte Uložit.

Koncový bod dat nebo koncové body se zobrazí na portálu.

Vyhrazené datové koncové body na portálu

Azure CLI

Pokud chcete povolit koncové body dat pomocí Azure CLI, použijte Azure CLI verze 2.4.0 nebo vyšší. Pokud potřebujete instalaci nebo upgrade, přečtěte si téma Instalace Azure CLI.

Následující příkaz az acr update umožňuje vyhrazeným datovým koncovým bodům v registru myregistry.

az acr update --name myregistry --data-endpoint-enabled

Pokud chcete zobrazit koncové body dat, použijte příkaz az acr show-endpoints :

az acr show-endpoints --name myregistry

Výstup pro demonstrační účely ukazuje dva regionální koncové body.

{
    "loginServer": "myregistry.azurecr.io",
    "dataEndpoints": [
        {
            "region": "eastus",
            "endpoint": "myregistry.eastus.data.azurecr.io",
        },
        {
            "region": "westus",
            "endpoint": "myregistry.westus.data.azurecr.io",
        }
    ]
}

Po nastavení vyhrazených datových koncových bodů pro registr můžete povolit pravidla přístupu brány firewall klienta pro koncové body dat. Povolte pravidla přístupu ke koncovému bodu dat pro všechny požadované oblasti registru.

Konfigurace pravidel brány firewall klienta pro MCR

Pokud potřebujete získat přístup ke službě Microsoft Container Registry (MCR) za bránou firewall, přečtěte si pokyny ke konfiguraci pravidel brány firewall klienta MCR. MCR je primární registr pro všechny image Dockeru publikované Microsoftem, jako jsou image Windows Serveru.

Další kroky