Sdílet prostřednictvím


Ochrana azure Container Apps pomocí firewallu webových aplikací ve službě Application Gateway

Při hostování aplikací nebo mikroslužeb v Azure Container Apps je nemusíte vždy chtít publikovat přímo na internetu. Místo toho je můžete chtít zveřejnit prostřednictvím reverzního proxy serveru.

Reverzní proxy server je služba, která se nachází před jednou nebo více službami, zachycování a směrování příchozího provozu do příslušného cíle.

Reverzní proxy servery umožňují umístit služby před aplikace, které podporují průřezové funkce, mezi které patří:

  • Směrování
  • Ukládání do mezipaměti
  • Omezování rychlosti
  • Vyrovnávání zatížení
  • Vrstvy zabezpečení
  • Filtrování žádostí

Tento článek ukazuje, jak chránit kontejnerové aplikace pomocí firewallu webových aplikací (WAF) ve službě Aplikace Azure lication Gateway s interním prostředím Container Apps.

Další informace o konceptech sítí v Container Apps najdete v tématu Síťové prostředí v Azure Container Apps.

Požadavky

  • Interní prostředí s vlastní virtuální sítí: Mít aplikaci typu kontejner, která je v interním prostředí a integrovaná s vlastní virtuální sítí. Další informace o tom, jak vytvořit vlastní integrovanou aplikaci virtuální sítě, najdete v tématu poskytnutí virtuální sítě internímu prostředí Azure Container Apps.

  • Certifikáty zabezpečení: Pokud musíte k aplikační bráně použít šifrování TLS/SSL, vyžaduje se platný veřejný certifikát, který se používá k vytvoření vazby ke službě Application Gateway.

Načtení domény aplikace kontejneru

Pomocí následujícího postupu načtěte hodnoty výchozí domény a statické IP adresy pro nastavení Privátní DNS zóny.

  1. V okně Přehled skupiny prostředků na portálu vyberte aplikaci kontejneru.

  2. V okně Přehled prostředku aplikace kontejneru vyberte odkaz pro container Apps Environment.

  3. V okně Přehled prostředku prostředí kontejnerové aplikace vyberte v pravém horním rohu stránky zobrazení JSON a zobrazte reprezentaci JSON prostředí kontejnerových aplikací.

  4. Zkopírujte hodnoty vlastností defaultDomain a staticIp a vložte je do textového editoru. Pomocí těchto hodnot pro výchozí doménu v další části vytvoříte privátní zónu DNS.

Vytvoření a konfigurace zóny Azure Privátní DNS

  1. V nabídce webu Azure Portal nebo na domovské stránce vyberte Vytvořit prostředek.

  2. Vyhledejte Privátní DNS Zónu a ve výsledcích hledání vyberte Privátní DNS Zóna.

  3. Vyberte tlačítko Vytvořit.

  4. Zadejte následující hodnoty:

    Nastavení Akce
    Předplatné Vyberte své předplatné Azure.
    Skupina zdrojů Vyberte skupinu prostředků vaší aplikace kontejneru.
    Název Zadejte vlastnost defaultDomain prostředí Container Apps z předchozí části.
    Umístění skupiny prostředků Ponechejte výchozí hodnotu. Hodnota není potřeba, protože Privátní DNS zóny jsou globální.
  5. Vyberte Zkontrolovat a vytvořit. Po dokončení ověření vyberte Vytvořit.

  6. Po vytvoření privátní zóny DNS vyberte Přejít k prostředku.

  7. V okně Přehled vyberte +Sada záznamů a přidejte novou sadu záznamů.

  8. V okně Přidat sadu záznamů zadejte následující hodnoty:

    Nastavení Akce
    Název Zadejte *.
    Typ Vyberte záznam adresy A.
    TTL Ponechte výchozí hodnoty.
    Jednotka TTL Ponechte výchozí hodnoty.
    IP adresa Zadejte vlastnost staticIp prostředí Container Apps z předchozí části.
  9. Vyberte OK a vytvořte sadu záznamů.

  10. Pokud chcete přidat druhou sadu záznamů, vyberte znovu +Sada záznamů.

  11. V okně Přidat sadu záznamů zadejte následující hodnoty:

    Nastavení Akce
    Název Zadejte @.
    Typ Vyberte záznam adresy A.
    TTL Ponechte výchozí hodnoty.
    Jednotka TTL Ponechte výchozí hodnoty.
    IP adresa Zadejte vlastnost staticIp prostředí Container Apps z předchozí části.
  12. Vyberte OK a vytvořte sadu záznamů.

  13. V nabídce na levé straně stránky vyberte okno propojení virtuální sítě.

  14. Vyberte +Přidat a vytvořte nový odkaz s následujícími hodnotami:

    Nastavení Akce
    Název propojení Zadejte my-custom-vnet-pdns-link.
    Znám ID prostředku virtuální sítě Nechte ho nezaškrtnutou.
    Virtuální síť Vyberte virtuální síť, se kterou je vaše aplikace kontejneru integrovaná.
    Povolit automatickou registraci Nechte ho nezaškrtnutou.
  15. Výběrem možnosti OK vytvořte propojení virtuální sítě.

Vytvoření a konfigurace služby Azure Application Gateway

Karta Základní informace

  1. Do části Podrobnosti projektu zadejte následující hodnoty.

    Nastavení Akce
    Předplatné Vyberte své předplatné Azure.
    Skupina zdrojů Vyberte skupinu prostředků pro vaši aplikaci kontejneru.
    Název aplikační brány Zadejte my-container-apps-agw.
    Oblast Vyberte umístění, ve kterém byla vaše aplikace kontejneru zřízena.
    Úroveň Vyberte WAF V2. Pokud nepotřebujete WAF, můžete použít standard V2 .
    Povolení automatického škálování Ponechte jako výchozí. Pro produkční prostředí se doporučuje automatické škálování. Viz Brána automatického škálování Aplikace Azure lication Gateway.
    Availability zone Vyberte Žádná. V produkčních prostředích se pro vyšší dostupnost doporučuje Zóny dostupnosti.
    HTTP2 Ponechte výchozí hodnotu.
    Zásady WAF Vyberte Vytvořit nový a zadejte moje zásady waf pro zásady WAF. Vyberte OK. Pokud jste pro úroveň zvolili Standard V2 , tento krok přeskočte.
    Virtuální síť Vyberte virtuální síť, se kterou je vaše aplikace kontejneru integrovaná.
    Podsíť Vyberte Spravovat konfiguraci podsítě. Pokud už máte podsíť, kterou chcete použít, použijte ji a přeskočte do části Front-endy.
  2. V okně Podsítě virtuální sítě my-custom-vnet vyberte +Subnet a zadejte následující hodnoty:

    Nastavení Akce
    Název Zadejte podsíť appgateway.
    Rozsah adres podsítě Ponechte výchozí hodnoty.
  3. Pro zbytek nastavení ponechte výchozí hodnoty.

  4. Výběrem možnosti Uložit vytvořte novou podsíť.

  5. Zavřete okno Podsítě a vraťte se do okna Vytvořit aplikační bránu.

  6. Vyberte následující hodnoty:

    Nastavení Akce
    Podsíť Vyberte podsíť appgateway, kterou jste vytvořili.
  7. Vyberte Další: Front-endy a pokračujte.

Karta Front-endy

  1. Na kartě Front-endy zadejte následující hodnoty:

    Nastavení Akce
    Typ IP adresy front-endu Vyberte Veřejný.
    Veřejná IP adresa Vyberte Přidat nový. Jako název front-endu zadejte my-front-end a vyberte OK.

    Poznámka:

    Pro skladovou položku Application Gateway v2 musí existovat veřejná front-endová IP adresa. V SKU v2 se v současné době nepodporuje konfigurace veřejné i privátní front-endové IP adresy, ale konfigurace privátních front-endových IP adres bez veřejné IP adresy se v současné době nepodporuje. Další informace najdete tady.

  2. Vyberte Další: Back-endy.

Karta Back-endy

Back-endový fond se používá ke směrování požadavků na příslušné back-endové servery. Back-endové fondy se dají skládat z jakékoli kombinace následujících zdrojů:

  • Síťové karty
  • veřejné IP adresy,
  • Interní IP adresy
  • Virtual Machine Scale Sets
  • Plně kvalifikované názvy domén (FQDN)
  • Back-endy s více tenanty, jako je služba Aplikace Azure Service a Container Apps

V tomto příkladu vytvoříte back-endový fond, který cílí na vaši aplikaci kontejneru.

  1. Vyberte Přidat back-endový fond.

  2. Otevřete novou kartu a přejděte do aplikace kontejneru.

  3. V okně Přehled aplikace kontejneru najděte adresu URL aplikace a zkopírujte ji.

  4. Vraťte se na kartu Back-endy a do okna Přidat back-endový fond zadejte následující hodnoty:

    Nastavení Akce
    Název Zadejte my-agw-back-end-pool.
    Přidání back-endových fondů bez cílů Vyberte možnost Ne.
    Typ cíle Vyberte IP adresu nebo plně kvalifikovaný název domény.
    Cíl Zadejte adresu URL aplikace kontejneru, kterou jste zkopírovali, a odeberte předponu https://. Toto umístění je plně kvalifikovaný název domény vaší aplikace kontejneru.
  5. Vyberte Přidat.

  6. Na kartě Back-endy vyberte Další: Konfigurace.

Karta konfigurace

Na kartě Konfigurace připojíte front-endový a back-endový fond, který jste vytvořili pomocí pravidla směrování.

  1. Vyberte Přidat pravidlo směrování. Zadejte následující hodnoty:

    Nastavení Akce
    Název Zadejte my-agw-routing-rule.
    Priorita Zadejte 1.
  2. Na kartě Naslouchací proces zadejte následující hodnoty:

    Nastavení Akce
    Název naslouchacího procesu Zadejte můj naslouchací proces agw.
    IP adresa front-endu Vyberte Veřejný.
    Protokol Vyberte HTTPS. Pokud nemáte certifikát, který chcete použít, můžete vybrat HTTP.
    Port Zadejte 443. Pokud jste jako protokol zvolili PROTOKOL HTTP , zadejte 80 a přeskočte do části výchozí nebo vlastní doména.
    Volba certifikátu Vyberte Nahrát certifikát. Pokud je certifikát uložený v trezoru klíčů, můžete vybrat možnost Zvolit certifikát ze služby Key Vault.
    Název certifikátu Zadejte název certifikátu.
    Soubor certifikátu PFX Vyberte platný veřejný certifikát.
    Heslo Zadejte heslo certifikátu.

    Pokud chcete použít výchozí doménu, zadejte následující hodnoty:

    Nastavení Akce
    Typ naslouchacího procesu Vyberte Basic.
    Adresa URL chybové stránky Ponechat jako ne

    Pokud chcete použít vlastní doménu, zadejte následující hodnoty:

    Nastavení Akce
    Typ naslouchacího procesu Vybrat více webů
    Typ hostitele Vybrat jednu položku
    Názvy hostitelů Zadejte vlastní doménu, kterou chcete použít.
    Adresa URL chybové stránky Ponechat jako ne
  3. Vyberte kartu Cíle back-endu a zadejte následující hodnoty:

  4. Přepněte na kartu Cíle back-endu a zadejte následující hodnoty:

    Nastavení Akce
    Typ cíle Vyberte my-agw-back-end-pool , který jste vytvořili dříve.
    Nastavení back-endu Vyberte Přidat nový.
  5. V okně přidat nastavení back-endu zadejte následující hodnoty:

    Nastavení Akce
    Název nastavení back-endu Zadejte nastavení my-agw-back-end.
    Protokol back-endu Vyberte HTTPS.
    Back-endový port Zadejte 443.
    Použití dobře známého certifikátu certifikační autority Vyberte Ano.
    Přepsání novým názvem hostitele Vyberte Ano.
    Přepsání názvu hostitele Vyberte Vybrat název hostitele z back-endového cíle.
    Vytváření vlastních sond Vyberte možnost Ne.
  6. Vyberte Přidat a přidejte nastavení back-endu.

  7. V okně Přidat pravidlo směrování vyberte Přidat znovu.

  8. Vyberte Další: Značky.

  9. Vyberte Další: Zkontrolovat a vytvořit a pak vyberte Vytvořit.

Zabezpečené připojení k prostředím kontejnerových aplikací jen pro interní prostředí můžete vytvořit pomocí privátního propojení, protože službě Application Gateway umožňuje komunikovat s vaší aplikací kontejneru v back-endu prostřednictvím virtuální sítě.

  1. Po vytvoření služby Application Gateway vyberte Přejít k prostředku.

  2. V nabídce na levé straně vyberte Private Link a pak vyberte Přidat.

  3. Zadejte následující hodnoty:

    Nastavení Akce
    Název Zadejte my-agw-private-link.
    Podsíť privátního propojení Vyberte podsíť, se kterou chcete vytvořit privátní propojení.
    Konfigurace IP adresy front-endu Vyberte front-endovou IP adresu vaší služby Application Gateway.
  4. V části Nastavení privátní IP adresy vyberte Přidat.

  5. Vyberte Přidat v dolní části okna.

Ověření aplikace typu kontejner

  1. Na stránce Přehled vyhledejte veřejnou IP adresu služby Application Gateway nebo ji můžete vyhledat. Pokud chcete hledat, vyberte Všechny prostředky a do vyhledávacího pole zadejte my-container-apps-agw-pip . Pak ve výsledcích hledání vyberte IP adresu.

  2. Přejděte na veřejnou IP adresu služby Application Gateway.

  3. Vaše žádost se automaticky směruje do aplikace kontejneru, která ověří úspěšné vytvoření aplikační brány.

Vyčištění prostředků

Pokud už prostředky, které jste vytvořili, nepotřebujete, odstraňte skupinu prostředků. Když odstraníte skupinu prostředků, odeberete také všechny související prostředky.

Odstranění skupiny prostředků:

  1. V nabídce webu Azure Portal vyberte Skupiny prostředků nebo vyhledejte a vyberte Skupiny prostředků.

  2. Na stránce Skupiny prostředků vyhledejte a vyberte my-container-apps.

  3. Na stránce Skupina prostředků vyberte Odstranit skupinu prostředků.

  4. Zadejte moje kontejnerové aplikace v části ZADEJTE NÁZEV SKUPINY PROSTŘEDKŮ a pak vyberte Odstranit.

Další kroky