Aspekty sítí pro App Service Environment v2
Poznámka
Tento článek se popisuje App Service Environment v2, který se používá s plány izolovaných App Service.
Přehled
Azure App Service Environment je nasazení Azure App Service do podsítě ve vaší virtuální síti Azure. Existují dva typy nasazení pro App Service prostředí (ASE):
- Externí ASE: Zpřístupňuje aplikace hostované službou ASE na IP adrese přístupné z internetu. Další informace najdete v tématu Vytvoření externí služby ASE.
- Služba ASE s iLB: Zpřístupňuje aplikace hostované službou ASE na IP adrese ve vaší virtuální síti. Interní koncový bod je interní nástroj pro vyrovnávání zatížení (ILB), a proto se nazývá ASE s interním vyrovnáváním zatížení. Další informace najdete v tématu Vytvoření a použití služby ASE s iLB.
Všechny služby ASE, externí a interní nástroje pro interní nástroje pro správu mají veřejnou VIP, která se používá pro příchozí provoz správy a jako adresa z adresy při volání ze služby ASE do internetu. Volání ze služby ASE, která jdou na internet, opouštěli virtuální síť prostřednictvím virtuální IP adresy přiřazené pro ase. Veřejná IP adresa této VIP je zdrojová IP adresa pro všechna volání ze služby ASE, která jdou na internet. Pokud aplikace ve vaší službě ASE volá prostředky ve vaší virtuální síti nebo přes síť VPN, zdrojová IP adresa je jednou z IP adres v podsíti používané vaší službou ASE. Vzhledem k tomu, že se ase nachází ve virtuální síti, může také přistupovat k prostředkům v rámci virtuální sítě bez jakékoli další konfigurace. Pokud je virtuální síť připojená k vaší místní síti, aplikace ve vaší službě ASE mají také přístup k prostředkům bez další konfigurace.

Pokud máte externí ase, veřejná virtuální IP adresa je také koncovým bodem, na který se vaše aplikace ASE překládá:
- HTTP/S
- FTP/S
- Nasazení webu
- Vzdálené ladění

Pokud máte službu ASE s iLB, adresa adresy ILB je koncový bod pro HTTP/S, FTP/S, nasazení webu a vzdálené ladění.
Velikost podsítě ASE
Velikost podsítě použité k hostování služby ASE není možné po nasazení služby ASE změnit. Služba ASE používá adresu pro každou roli infrastruktury i pro každou instanci izolovaného App Service plánu. Kromě toho existuje pět adres, které používá Sítě Azure pro každou vytvořenou podsíť. Služby ASE bez App Service plány budou před vytvořením aplikace používat 12 adres. Pokud se jedná o služby ASE s iLB, bude před vytvořením aplikace v této ase používat 13 adres. Při horizontálním navýšení velikosti služby ASE se role infrastruktury přidávají každých 15 a 20 instancí App Service plánu.
Poznámka
V podsíti nemůže být nic jiného než ase. Nezapomeňte zvolit adresní prostor, který umožňuje budoucí růst. Toto nastavení nemůžete později změnit. Doporučujeme velikost s /24 256 adresami.
Při škálování nahoru nebo dolů se přidávají nové role odpovídající velikosti a úlohy se pak migrují z aktuální velikosti na cílovou velikost. Původní virtuální počítače se odebraly až po migraci úloh. Pokud byste měli ase se 100 instancemi ASP, bylo by období, kdy potřebujete zdvojnásobovat počet virtuálních počítače. Z tohoto důvodu doporučujeme použít "/24", aby se přizpůsobí všem změnám, které byste mohli potřebovat.
Závislosti ASE
Příchozí závislosti ASE
Pro provoz ase vyžaduje ase otevřené následující porty:
| Použití | Z | Záměr |
|---|---|---|
| Správa | App Service adres pro správu | Podsíť ASE: 454, 455 |
| Interní komunikace ASE | Podsíť ASE: Všechny porty | Podsíť ASE: Všechny porty |
| Povolit příchozí provoz nástroje pro vyrovnávání zatížení Azure | Nástroj pro vyrovnávání zatížení Azure | Podsíť ASE: 16001 |
Existují dva další porty, které se při prohledávání portů 7654 a 1221 zobrazují jako otevřené. Odpoví IP adresou a nic dalšího. V případě potřeby je možné je zablokovat.
Příchozí provoz správy poskytuje kromě monitorování systému také příkazy a řízení služby ASE. Zdrojové adresy pro tento provoz jsou uvedené v dokumentu Adresy pro správu ASE. Konfigurace zabezpečení sítě musí umožnovat přístup z adres pro správu ASE na portech 454 a 455. Pokud z těchto adres zablokujete přístup, vaše ase nebude v pořádku a pak se pozastaví. Provoz TCP, který přichází na portech 454 a 455, se musí vrátit ze stejné vip adresy, jinak dojde k problému s asymetrickým směrováním.
V rámci podsítě služby ASE se pro interní komunikaci komponent používá mnoho portů, které se mohou změnit. To vyžaduje, aby všechny porty v podsíti služby ASE byly přístupné z podsítě služby ASE.
Pro komunikaci mezi službou Azure Load Balancer a podsítí SLUŽBY ASE je potřeba otevřít minimální porty 454, 455 a 16001. Port 16001 slouží k řízení provozu mezi nástroji pro vyrovnávání zatížení a ase. Pokud používáte služby ASE s iLB, můžete provoz uzamknout jenom na portech 454, 455 a 16001. Pokud používáte externí ase, musíte vzít v úvahu normální porty pro přístup k aplikacím.
Další porty, se kterou si musíte udělat starosti, jsou porty aplikací:
| Použití | Porty |
|---|---|
| HTTP/HTTPS | 80, 443 |
| FTP/FTPS | 21, 990, 10001-10020 |
| Visual Studio vzdáleného ladění | 4020, 4022, 4024 |
| Nasazení webu service | 8172 |
Pokud zablokujte porty aplikace, může vaše ase stále fungovat, ale vaše aplikace nemusí fungovat. Pokud používáte IP adresy přiřazené aplikací s externí službou ASE, budete muset povolit provoz z IP adres přiřazených vašim aplikacím do podsítě služby ASE na portech zobrazených na portálu ASE na > IP adresy.
Odchozí závislosti ASE
U odchozího přístupu závisí ase na několika externích systémech. Mnoho z těchto systémových závislostí je definováno pomocí názvů DNS a nemapuje se na pevnou sadu IP adres. Proto ase vyžaduje odchozí přístup z podsítě služby ASE ke všem externím IP adresům na různých portech.
Služba ASE komunikuje s adresami dostupnými z internetu na následujících portech:
| Použití | Porty |
|---|---|
| DNS | 53 |
| NTP | 123 |
| CRL, Windows aktualizací, linuxové závislosti, služby Azure | 80/443 |
| Azure SQL | 1433 |
| Monitorování | 12000 |
Závislosti odchozích přenosů jsou uvedené v dokumentu, který popisuje uzamčení App Service Environment odchozího provozu. Pokud ase ztratí přístup ke svým závislostem, přestane fungovat. Pokud k tomu dojde dostatečně dlouho, ase se pozastaví.
DNS zákazníka
Pokud je virtuální síť nakonfigurovaná se serverem DNS definovaným zákazníkem, úlohy tenanta ji používají. ASE pro účely správy využívá Azure DNS. Pokud je virtuální síť nakonfigurovaná se serverem DNS vybraným zákazníkem, musí být server DNS dostupný z podsítě, která obsahuje službu ASE.
Poznámka
Storage připojení nebo imagí kontejnerů, které si vyžádá ASEv2, nebudou moct používat DNS zákazníka definované ve virtuální síti ani prostřednictvím WEBSITE_DNS_SERVER nastavení aplikace.
K otestování překladu DNS z webové aplikace můžete použít překladač příkazů konzoly. Přejděte do okna ladění na webu scm pro vaši aplikaci nebo přejděte do aplikace na portálu a vyberte konzolu. Z příkazového řádku prostředí můžete vyřešit překlad názvů příkazů spolu s názvem DNS, který chcete hledat. Výsledek, který získáte zpět, je stejný jako výsledek, který by aplikace při stejném vyhledávání dosá mohla získat. Pokud použijete nástroj nslookup, použijete k Azure DNS vyhledávání.
Pokud změníte nastavení DNS virtuální sítě, ve které se nachází vaše služba ASE, budete muset službu ASE restartovat. Abyste se vyhnuli restartování služby ASE, důrazně doporučujeme před vytvořením služby ASE nakonfigurovat nastavení DNS pro virtuální síť.
Závislosti portálu
Kromě funkčních závislostí ase existuje několik dalších položek souvisejících s prostředím portálu. Některé možnosti v systému Azure Portal na přímém přístupu k webu SCM. Pro každou aplikaci v Azure App Service existují dvě adresy URL. První adresou URL je přístup k vaší aplikaci. Druhou adresou URL je přístup k webu SCM, který se také nazývá konzola Kudu. Mezi funkce, které používají web SCM, patří:
- Web Jobs
- Functions
- Streamování protokolů
- Kudu
- Rozšíření
- Process Explorer
- Konzola
Při použití služby ASE s iLB není web SCM přístupný mimo virtuální síť. Některé možnosti nebudou z portálu aplikací fungovat, protože vyžadují přístup k webu SCM aplikace. Místo použití portálu se můžete připojit přímo k webu SCM.
Pokud je vaše služby ASE s iLB názvem domény contoso.appserviceenvironment.net a název vaší aplikace je testapp, aplikace se dostanete na testapp.contoso.appserviceenvironment.net. Web SCM, který se s ním nachází, se nachází na testapp.scm.contoso.appserviceenvironment.net.
IP adresy služby ASE
Ase má několik IP adres, o které byste měli vědět. Jsou to tyto:
- Veřejná příchozí IP adresa: Používá se pro provoz aplikací v externí ase a provoz správy v externí ase i ve ase s interním nástroje pro správu.
- Odchozí veřejná IP adresa: Používá se jako IP adresa "z" pro odchozí připojení ze služby ASE, která opouštěla virtuální síť, která není směrovaná směrem k síti VPN.
- IP adresa ILB: IP adresa ILB existuje pouze ve ase s iLB.
- Adresy TLS/SSL přiřazené aplikacím: Možné pouze u externí služby ASE a při konfiguraci vazby TLS/SSL na základě IP adresy.
Všechny tyto IP adresy jsou viditelné v Azure Portal v uživatelském rozhraní služby ASE. Pokud máte služby ASE s ILB, je uvedená IP adresa pro tento ILB.
Poznámka
Tyto IP adresy se nezmění, dokud služba ASE zůstane v provozu. Pokud se vaše ase pozastaví a obnoví, adresy používané vaší ase se změní. Běžnou příčinou pozastavení služby ASE je zablokování příchozího přístupu ke správě nebo blokování přístupu k závislosti služby ASE.

IP adresy přiřazené aplikacím
Pomocí externí služby ASE můžete přiřadit IP adresy jednotlivým aplikacím. Nemůžete to provést pomocí aselb. Další informace o tom, jak nakonfigurovat aplikaci tak, aby měl vlastní IP adresu, najdete v tématu Zabezpečení vlastního názvu DNS pomocí vazby TLS/SSLv Azure App Service .
Pokud má aplikace vlastní IP adresu SSL, ase si vyhrazuje dva porty pro mapování na ip adresu. Jeden port je pro provoz HTTP a druhý pro PROTOKOL HTTPS. Tyto porty jsou uvedené v uživatelském rozhraní služby ASE v části IP adresy. Provoz musí být schopný se z vip adresy dostat na tyto porty, jinak budou aplikace nedostupné. Tento požadavek je důležité si zapamatovat při konfiguraci skupin zabezpečení sítě (NSG).
Network Security Groups (Skupiny zabezpečení sítě)
Skupiny zabezpečení sítě umožňují řídit síťový přístup v rámci virtuální sítě. Pokud používáte portál, platí implicitní pravidlo zamítnutí všeho s nejnižší prioritou. Můžete vytvářet vlastní pravidla povolení.
V ASE nemáte přístup k virtuálním počítači, které se používají k hostování samotné služby ASE. Tyto virtuální počítače se nacházejí v předplatném spravovaném Microsoftem. Pokud chcete omezit přístup k aplikacím ve službě ASE, nastavte v podsíti ASE skupiny zabezpečení sítě. Věnujte přitom důkladnou pozornost závislostem ASE. Pokud nějaké závislosti zablokujete, ASE přestane fungovat.
Skupiny NSG je možné konfigurovat prostřednictvím Azure Portal nebo PowerShellu. Zde uvedené informace ukazují Azure Portal. Skupiny zabezpečení sítě můžete vytvářet a spravovat na portálu jako prostředek nejvyšší úrovně v části Sítě.
Požadované položky v NSG, aby ase fungovala, jsou povolení provozu:
Příchozí
- TCP ze značky služby IP AppServiceManagement na portech 454 455
- TCP z nástroje pro vyrovnávání zatížení na portu 16001
- z podsítě služby ASE do podsítě služby ASE na všech portech
Odchozí
- UDP pro všechny IP adresy na portu 53
- UDP pro všechny IP adresy na portu 123
- Tcp na všechny IP adresy na portech 80, 443
- Tcp ke značce služby IP
Sqlna portech 1433 - TCP na všechny IP adresy na portu 12000
- k podsíti služby ASE na všech portech
Tyto porty nezahrnují porty, které vaše aplikace vyžadují pro úspěšné použití. Aplikace může například potřebovat volat server MySQL na portu 3306. Protokol NTP (Network Time Protocol) na portu 123 je protokol synchronizace času používaný operačním systémem. Koncové body NTP nejsou specifické pro App Services, mohou se lišit podle operačního systému a nejsou v dobře definovaném seznamu adres. Pokud chcete zabránit problémům se synchronizací času, musíte povolit provoz UDP na všechny adresy na portu 123. Odchozí přenosy TCP na port 12000 jsou pro systémovou podporu a analýzu. Koncové body jsou dynamické a nejsou v dobře definované sadě adres.
Normální porty pro přístup k aplikacím jsou:
| Použití | Porty |
|---|---|
| HTTP/HTTPS | 80, 443 |
| FTP/FTPS | 21, 990, 10001-10020 |
| Visual Studio vzdáleného ladění | 4020, 4022, 4024 |
| Nasazení webu service | 8172 |
Když se zohlední požadavky na příchozí a odchozí provoz, měly by tyto NSG vypadat podobně jako v tomto příkladu.

Výchozí pravidlo umožňuje IP adresám ve virtuální síti komunikace s podsítí služby ASE. Jiné výchozí pravidlo umožňuje nástroji pro vyrovnávání zatížení, označované také jako veřejná VIP, komunikovat se službou ASE. Pokud chcete zobrazit výchozí pravidla, vyberte Výchozí pravidla vedle ikony Přidat. Pokud před výchozí pravidla zamítáte všechno ostatní pravidlo, zabráníte provozu mezi VIP a ASE. Pokud chcete zabránit příchozímu provozu z virtuální sítě, přidejte vlastní pravidlo, které povolí příchozí provoz. Použijte zdroj, který se rovná AzureLoadBalancer, s cílem Jakýkoli a rozsahem portů * . Vzhledem k tomu, že se pravidlo NSG použije na podsíť SLUŽBY ASE, nemusíte být v cíli konkrétní.
Pokud jste aplikaci přiřadili IP adresu, ujistěte se, že jsou porty otevřené. Pokud chcete zobrazit porty, vyberte App Service Environment > IP adresy.
Všechny položky uvedené v následujících odchozích pravidlech jsou potřeba s výjimkou poslední položky. Umožňují síťový přístup k závislostem služby ASE, které jste si předtím v tomto článku řekli. Pokud některý z nich zablokujte, vaše ase přestane fungovat. Poslední položka v seznamu umožňuje službě ASE komunikovat s dalšími prostředky ve vaší virtuální síti.

Po dokončení definice skupiny zabezpečení sítě je přiřaďte k podsíti, ve které je vaše služby ASE. Pokud si virtuální síť nebo podsíť služby ASE nepamatujete, můžete ji zobrazit na stránce portálu SLUŽBY ASE. Pokud chcete přiřadit NSG k podsíti, přejděte do uživatelského rozhraní podsítě a vyberte NSG.
Trasy
Vynucené tunelování nastane, když ve virtuální síti nastavíte trasy, aby odchozí provoz nesídl přímo do internetu, ale jinam, jako je brána ExpressRoute nebo virtuální zařízení. Pokud potřebujete službu ASE takovým způsobem nakonfigurovat, přečtěte si dokument věnovaný konfiguraci vynuceného tunelování pro službu App Service Environment. V tomto dokumentu najdete dostupné možnosti pro práci s ExpressRoute a vynuceným tunelovým propojením.
Když na portálu vytvoříte ase, vytvoříme také sadu směrovacích tabulek v podsíti vytvořené pomocí služby ASE. Tyto trasy jednoduše říkají, že mají odesílat odchozí provoz přímo na internet.
Pokud chcete vytvořit stejné trasy ručně, postupujte následovně:
Přejděte na Azure Portal. Vyberte Síťové > směrovací tabulky.
Vytvořte novou směrovací tabulku ve stejné oblasti jako virtuální síť.
V uživatelském rozhraní směrovací tabulky vyberte Trasy > Přidat.
Typ dalšího segmentu směrování nastavte na Internet a předponu Adresy na 0.0.0.0/0. Vyberte Uložit.
Pak se zobrazí něco podobného:

Po vytvoření nové směrovací tabulky přejděte do podsítě, která obsahuje vaši ase. V seznamu na portálu vyberte směrovací tabulku. Po uložení změny by se měly zobrazit sítě ASG a trasy, které jsou ve vaší podsíti.

Koncové body služby
Koncové body služby umožňují omezit přístup k víceklientským službám na sadu virtuálních sítí a podsítí Azure. Další informace o koncových bodech služby najdete v dokumentaci pro koncové body služby pro virtuální síť.
Když pro prostředek povolíte koncové body služby, vytvoří se trasy s vyšší prioritou než všechny ostatní trasy. Pokud používáte koncové body jakýchkoli služeb Azure, v případě, že je ve službě ASE nakonfigurované vynucené tunelování, se u provozu směrujícího do těchto služeb tunelování nebude vynucovat.
Pokud jsou koncové body služby povolené v podsíti s instancí SQL Azure, musí mít koncové body služby povolené i všechny instance SQL Azure, ke kterým se z této podsítě připojuje. Pokud chcete ze stejné podsítě přistupovat k několika instancím SQL Azure, není možné povolit koncové body služby v jedné instanci SQL Azure a v jiné ne. Žádná jiná služba Azure se chová jako Azure SQL s ohledem na koncové body služby. Když povolíte koncové body služby se službou Azure Storage, uzamknete přístup k danému prostředku z vaší podsítě, ale stále budete mít přístup k ostatním účtům služby Azure Storage, a to i v případě, že nemají povolené koncové body služby.
