Kontrolowanie ruchu wychodzącego w usłudze Azure Container Apps przy użyciu tras zdefiniowanych przez użytkownika
Uwaga
Ta funkcja jest obsługiwana tylko dla typu środowiska profilów obciążeń.
W tym artykule pokazano, jak używać tras zdefiniowanych przez użytkownika w usłudze Azure Firewall w celu blokowania ruchu wychodzącego z usługi Container Apps do zasobów platformy Azure zaplecza lub innych zasobów sieciowych.
Platforma Azure tworzy domyślną tabelę tras dla sieci wirtualnych podczas tworzenia. Implementując tabelę tras zdefiniowaną przez użytkownika, możesz kontrolować sposób kierowania ruchu w sieci wirtualnej. W tym przewodniku skonfiguruj trasę zdefiniowaną przez użytkownika w sieci wirtualnej Container Apps, aby ograniczyć ruch wychodzący za pomocą usługi Azure Firewall.
Możesz również użyć bramy translatora adresów sieciowych lub innych urządzeń innych firm zamiast usługi Azure Firewall.
Aby uzyskać więcej informacji, zobacz konfigurowanie trasy zdefiniowanej przez użytkownika za pomocą usługi Azure Firewall w sieci w usłudze Azure Container Apps .
Wymagania wstępne
Środowisko profilów obciążeń: środowisko profilów obciążeń zintegrowane z niestandardową siecią wirtualną. Aby uzyskać więcej informacji, zobacz przewodnik dotyczący tworzenia środowiska aplikacji kontenera w środowisku profilów obciążeń.
curl
obsługa: Aplikacja kontenera musi mieć kontener obsługującycurl
polecenia. W tym przewodniku użyjeszcurl
polecenia , aby sprawdzić, czy aplikacja kontenera jest wdrożona poprawnie. Jeśli nie masz wdrożonej aplikacjicurl
kontenera, możesz wdrożyć następujący kontener, który obsługuje usługęcurl
,mcr.microsoft.com/k8se/quickstart:latest
.
Tworzenie podsieci zapory
Aby wdrożyć zaporę w zintegrowanej sieci wirtualnej, wymagana jest podsieć o nazwie AzureFirewallSubnet .
Otwórz sieć wirtualną zintegrowaną z aplikacją w witrynie Azure Portal.
Z menu po lewej stronie wybierz pozycję Podsieci, a następnie wybierz pozycję + Podsieć.
Wprowadź następujące wartości:
Ustawienie Akcja Nazwa/nazwisko Wprowadź wartość AzureFirewallSubnet. Zakres adresów podsieci Użyj wartości domyślnej lub określ zakres podsieci /26 lub większy. Wybierz pozycję Zapisz
Wdrażanie zapory
W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Utwórz zasób.
Wyszukaj pozycję Zapora.
Wybierz pozycję Zapora.
Wybierz pozycję Utwórz.
Na stronie Tworzenie zapory skonfiguruj zaporę przy użyciu następujących ustawień.
Ustawienie Akcja Grupa zasobów: Wprowadź tę samą grupę zasobów co zintegrowana sieć wirtualna. Nazwa/nazwisko Wprowadź wybraną nazwę Region Wybierz ten sam region co zintegrowana sieć wirtualna. Zasady zapory Utwórz go, wybierając pozycję Dodaj nową. Sieć wirtualna Wybierz zintegrowaną sieć wirtualną. Publiczny adres IP Wybierz istniejący adres lub utwórz go, wybierając pozycję Dodaj nowy. Wybierz pozycję Przejrzyj i utwórz. Po zakończeniu walidacji wybierz pozycję Utwórz. Wykonanie kroku weryfikacji może potrwać kilka minut.
Po zakończeniu wdrażania wybierz pozycję Przejdź do zasobu.
Na stronie Przegląd zapory skopiuj prywatny adres IP zapory. Ten adres IP jest używany jako adres następnego przeskoku podczas tworzenia reguły routingu dla sieci wirtualnej.
Kierowanie całego ruchu do zapory
Sieci wirtualne na platformie Azure mają domyślne tabele tras podczas tworzenia sieci. Implementując tabelę tras zdefiniowaną przez użytkownika, możesz kontrolować sposób kierowania ruchu w sieci wirtualnej. W poniższych krokach utworzysz trasę zdefiniowaną przez użytkownika, aby kierować cały ruch do usługi Azure Firewall.
W menu witryny Azure Portal lub na stronie głównej wybierz pozycję Utwórz zasób.
Wyszukaj tabele tras.
Wybierz pozycję Tabele tras.
Wybierz pozycję Utwórz.
Wprowadź następujące wartości:
Ustawienie Akcja Region Wybierz region jako sieć wirtualną. Nazwa/nazwisko Wprowadź nazwę. Propagacja tras bramy Wybierz pozycję Nie Wybierz pozycję Przejrzyj i utwórz. Po zakończeniu walidacji wybierz pozycję Utwórz.
Po zakończeniu wdrażania wybierz pozycję Przejdź do zasobu.
Z menu po lewej stronie wybierz pozycję Trasy, a następnie wybierz pozycję Dodaj , aby utworzyć nową tabelę tras
Skonfiguruj tabelę tras przy użyciu następujących ustawień:
Ustawienie Akcja Prefiks adresu Wprowadź wartość 0.0.0.0/0 Typ następnego skoku Wybieranie urządzenia wirtualnego Adres następnego przeskoku Wprowadź prywatny adres IP zapory zapisany w sekcji Wdrażanie zapory. Wybierz pozycję Dodaj , aby utworzyć trasę.
Z menu po lewej stronie wybierz pozycję Podsieci, a następnie wybierz pozycję Skojarz, aby skojarzyć tabelę tras z podsiecią aplikacji kontenera.
Skonfiguruj podsieć Skojarz z następującymi wartościami:
Ustawienie Akcja Sieć wirtualna Wybierz sieć wirtualną dla aplikacji kontenera. Podsieć Wybierz podsieć dla aplikacji kontenera. Wybierz przycisk OK.
Konfigurowanie zasad zapory
Uwaga
W przypadku korzystania z trasy zdefiniowanej przez użytkownika z usługą Azure Firewall w usłudze Azure Container Apps należy dodać pewne tagi FQDN i usługi do listy dozwolonych zapory. Zapoznaj się z tematem Konfigurowanie trasy zdefiniowanej przez użytkownika za pomocą usługi Azure Firewall , aby określić, które tagi usługi są potrzebne.
Teraz cały ruch wychodzący z aplikacji kontenera jest kierowany do zapory. Obecnie zapora nadal zezwala na cały ruch wychodzący. Aby zarządzać tym, jaki ruch wychodzący jest dozwolony lub blokowany, należy skonfigurować zasady zapory.
W zasobie usługi Azure Firewall na stronie Przegląd wybierz pozycję Zasady zapory
Z menu po lewej stronie zasad zapory wybierz pozycję Reguły aplikacji.
Wybierz pozycję Dodaj kolekcję reguł.
Wprowadź następujące wartości dla kolekcji reguł:
Ustawienie Akcja Nazwa/nazwisko Wprowadź nazwę kolekcji Typ kolekcji reguł Wybieranie aplikacji Priorytet Wprowadź priorytet, taki jak 110 Akcja zbierania reguł Wybierz pozycję Zezwalaj Grupa kolekcji reguł Wybierz pozycję DefaultApplicationRuleCollectionGroup W obszarze Reguły wprowadź następujące wartości
Ustawienie Akcja Nazwa/nazwisko Wprowadź nazwę reguły Typ źródła Wybierz pozycję Adres IP Source Wprowadź * Protokół Wprowadź http:80,https:443 Typ miejsca docelowego Wybierz pozycję FQDN. Lokalizacja docelowa Wprowadź mcr.microsoft.com
ciąg ,*.data.mcr.microsoft.com
. Jeśli używasz usługi ACR, dodaj adres ACR i*.blob.core.windows.net
.Akcja Wybierz pozycję Zezwalaj Uwaga
Jeśli używasz rejestru usługi Docker Hub i chcesz uzyskać do niego dostęp za pośrednictwem zapory, musisz dodać następujące nazwy FQDN do listy docelowej reguł: hub.docker.com, registry-1.docker.io i production.cloudflare.docker.com.
Wybierz Dodaj.
Sprawdź, czy zapora blokuje ruch wychodzący
Aby sprawdzić, czy konfiguracja zapory jest poprawnie skonfigurowana, możesz użyć curl
polecenia z poziomu konsoli debugowania aplikacji.
Przejdź do aplikacji kontenera skonfigurowanej za pomocą usługi Azure Firewall.
Z menu po lewej stronie wybierz pozycję Konsola, a następnie wybierz kontener obsługujący
curl
polecenie .W menu Polecenia Wybierz start wybierz pozycję /bin/sh, a następnie wybierz pozycję Połącz.
W konsoli programu uruchom polecenie
curl -s https://mcr.microsoft.com
. Po dodaniu do listy dozwolonych zasad zapory powinna zostać wyświetlona pomyślna odpowiedźmcr.microsoft.com
.Uruchom polecenie
curl -s https://<FQDN_ADDRESS>
, aby uzyskać adres URL, który nie jest zgodny z żadnymi regułami docelowymi, takimi jakexample.com
. Przykładowe polecenie tocurl -s https://example.com
. Nie powinna zostać wyświetlona odpowiedź wskazująca, że zapora zablokowała żądanie.