App Service Ortamı v2 için ağ ile ilgili dikkat edilmesi gerekenler
Not
Bu makale Yalıtılmış App Service Ortamı planlarında kullanılan App Service hakkındadır
Genel Bakış
Azure App Service Ortamı, Azure sanal Azure App Service bir alt ağa dağıtımıdır. Bir ortam (ASE) için iki App Service türü vardır:
- Dış ASE: ASE tarafından barındırılan uygulamaları internet üzerinden erişilebilen bir IP adresi üzerinde ortaya çıkarır. Daha fazla bilgi için bkz. Dış ASE oluşturma.
- ILB ASE: ASE tarafından barındırılan uygulamaları sanal ağ içindeki bir IP adresi üzerinde ortaya çıkarır. İç uç nokta bir iç yük dengeleyicidir (ILB), bu nedenle ILB ASE olarak adlandırılan bir iç yük dengeleyicidir. Daha fazla bilgi için bkz. ILB ASE oluşturma ve kullanma.
Tüm ASE'ler, Dış ve ILB, gelen yönetim trafiği için ve ASE'den İnternet'e çağrı yaparken gelen adres olarak kullanılan genel bir VIP'ye sahip olur. İnternet'e gitmekte olan bir ASE'den gelen çağrılar, ASE için atanan VIP üzerinden sanal ağı bırakır. Bu VIP'nin genel IP'si, ASE'den İnternet'e gelen tüm çağrılar için kaynak IP'dir. ASE'nizin uygulamaları sanal ağ veya VPN üzerinden kaynaklara çağrıda bulunursa kaynak IP, ASE'niz tarafından kullanılan alt ağda yer alan IP'lerden biri olur. ASE sanal ağ içinde olduğundan, ek yapılandırma olmadan sanal ağ içindeki kaynaklara da erişebilirsiniz. Sanal ağ şirket içi ağınıza bağlı ise, ASE'nizin uygulamaları da ek yapılandırma olmadan orada kaynaklara erişime sahip olur.

Dış ASE'niz varsa genel VIP, ASE uygulamalarınızı aşağıdakiler için çözümleyenin uç noktasıdır:
- HTTP/S
- FTP/S
- Web dağıtımı
- Uzaktan hata ayıklama

ILB ASE'niz varsa, ILB adresinin adresi HTTP/S, FTP/S, web dağıtımı ve uzaktan hata ayıklama uç noktasıdır.
ASE alt ağ boyutu
ASE dağıtıldıktan sonra ASE'yi barındırmak için kullanılan alt ağın boyutu değiştirilemez. ASE, her altyapı rolü için bir adresin yanı sıra her bir Yalıtılmış depolama alanı App Service kullanır. Ayrıca, oluşturulan her alt ağ için Azure Ağ tarafından kullanılan beş adres vardır. Herhangi bir planı App Service ASE, bir uygulama oluşturmadan önce 12 adres kullanır. Bir ILB ASE ise, siz bu ASE'de uygulama oluşturmadan önce 13 adres kullanır. ASE'nizin ölçeğini ölçeklendirin, altyapı rolleri plan örneklerinizi 15 ve 20'nin App Service eklenir.
Not
Alt ağda ASE'den başka hiçbir şey kullanılamaz. Gelecekte büyümeye olanak sağlayan bir adres alanı seçtiğinizden emin olun. Bu ayarı daha sonra değiştiremezsiniz. /24Boyutu 256 adresle önerilir.
Ölçeği artırır veya azaltırken uygun boyutta yeni roller eklenir ve ardından iş yükleriniz geçerli boyuttan hedef boyuta geçirilir. Özgün VM'ler ancak iş yükleri geçirildikten sonra kaldırılır. 100 ASP örneğine sahip bir ASE'ye sahip olsaydınız, VM sayısının iki katına ihtiyacınız olduğu bir dönem olurdu. Bu nedenle, gerektirdiğiniz değişiklikleri karşılamak için '/24' kullanılması önerilir.
ASE bağımlılıkları
ASE gelen bağımlılıkları
ASE'nin çalışması için ASE aşağıdaki bağlantı noktalarının açık olması gerekir:
| Kullanın | Kaynak | Amaç |
|---|---|---|
| Yönetim | App Service yönetim adresleri | ASE alt ağı: 454, 455 |
| ASE iç iletişimi | ASE alt ağı: Tüm bağlantı noktaları | ASE alt ağı: Tüm bağlantı noktaları |
| Azure yük dengeleyici gelen trafiğine izin ver | Azure yük dengeleyici | ASE alt ağı: 16001 |
7654 ve 1221 bağlantı noktası taramalarında açık olarak göster göstere 2 bağlantı noktası daha vardır. Bir IP adresiyle yanıt ve başka bir şey yok. İstenilen şekilde engellenmiş olabilir.
Gelen yönetim trafiği, sistem izlemenin yanı sıra ASE'nin komut ve denetimi sağlar. Bu trafiğin kaynak adresleri ASE Yönetimi adresleri belgesinde listelenir. Ağ güvenlik yapılandırmasının 454 ve 455 bağlantı noktalarında ASE yönetim adreslerinden erişime izin vermesi gerekir. Bu adreslerden erişimi engellenirse ASE'niz iyi durumda değil duruma gelecek ve ardından askıya alınır. 454 ve 455 bağlantı noktalarına gelen TCP trafiğinin aynı VIP'den geri dönmesi gerekir, yoksa asimetrik yönlendirme sorunuyla karşıdan çıkarabilirsiniz.
ASE alt ağı içinde, iç bileşen iletişimi için kullanılan birçok bağlantı noktası vardır ve bunlar değişebilir. Bu, ASE alt ağının tüm bağlantı noktalarının ASE alt a ağından erişilebilir olmasını gerektirir.
Azure yük dengeleyici ile ASE alt ağı arasındaki iletişim için açık olması gereken minimum bağlantı noktaları 454, 455 ve 16001'tir. Yük dengeleyici ile ASE arasındaki trafiği canlı tutmak için 16001 bağlantı noktası kullanılır. ILB ASE kullanıyorsanız trafiği yalnızca 454, 455, 16001 bağlantı noktalarına kilitlersiniz. Dış ASE kullanıyorsanız normal uygulama erişim bağlantı noktalarını dikkate alasınız.
Endişeniz gereken diğer bağlantı noktaları uygulama bağlantı noktalarıdır:
| Kullanın | Bağlantı noktaları |
|---|---|
| HTTP/HTTPS | 80, 443 |
| FTP/FTPS | 21, 990, 10001-10020 |
| Visual Studio uzaktan hata ayıklama | 4020, 4022, 4024 |
| Web Dağıtımı hizmeti | 8172 |
Uygulama bağlantı noktalarını engellemeniz, ASE'nizin çalışmasına rağmen uygulamanın çalışmayabilirsiniz. Dış ASE ile uygulama tarafından atanan IP adresleri kullanıyorsanız, UYGULAMALARınıza atanan IP'lerden ASE portalının IP Adresleri sayfasında gösterilen bağlantı noktalarında ASE alt ağın trafiğine izin > gerekir.
ASE giden bağımlılıkları
Giden erişim için ASE birden çok dış sisteme bağlıdır. Bu sistem bağımlılıklarının çoğu DNS adlarla tanımlanır ve sabit bir IP adresi kümesiyle eş değildir. Bu nedenle, ASE çeşitli bağlantı noktalarında ASE alt a ağından tüm dış IP'lere giden erişim gerektirir.
ASE, aşağıdaki bağlantı noktalarında İnternet'e erişilebilir adreslerle iletişim kurar:
| Kullanımlar | Bağlantı noktaları |
|---|---|
| DNS | 53 |
| NTP | 123 |
| CRL, Windows güncelleştirmeleri, Linux bağımlılıkları, Azure hizmetleri | 80/443 |
| Azure SQL | 1433 |
| İzleme | 12000 |
Giden bağımlılıklar, giden trafiğin kilitlenmesi App Service Ortamı listelenir. ASE bağımlılıklarına erişimi kaybederse çalışmayı durdurur. Bu yeterince uzun olduğunda ASE askıya alınır.
Müşteri DNS'i
Sanal ağ müşteri tarafından tanımlanan bir DNS sunucusuyla yapılandırılmışsa, kiracı iş yükleri bunu kullanır. ASE Azure DNS'yi yönetim amacıyla kullanır. Sanal ağ müşteri tarafından seçilen bir DNS sunucusuyla yapılandırılmışsa, DNS sunucusuna ASE'yi içeren alt ağdan ulaşılabilir olması gerekir.
Not
Depolama veya kapsayıcı görüntülerinin ASEv2'ye çekmesi, sanal ağ veya uygulama ayarı aracılığıyla tanımlanan müşteri DNS'lerini WEBSITE_DNS_SERVER kullanamayacak.
Web uygulamanıza dns çözümlemesini test etmek için konsol komutu nameresolver komutunu kullanabilirsiniz. Scm sitenize uygulama için hata ayıklama penceresine gidin veya portalda uygulamaya gidin ve konsol'u seçin. Kabuk isteminden, komut adınıresolver ile birlikte, bakmak istediğiniz DNS adıyla birlikte veresiniz. Geri elde edilen sonuç, aynı arama sırasında uygulamanıza elde edilen sonuçla aynıdır. nslookup kullanırsanız, bunun yerine bir arama Azure DNS.
ASE'nizin içinde olduğu sanal ağın DNS ayarını değiştirirseniz ASE'nizi yeniden başlatmanız gerekir. ASE'nizin yeniden başlatılmasını önlemek için ASE'nizi oluşturmadan önce sanal ağ için DNS ayarlarınızı yapılandırmanız önemle önerilir.
Portal bağımlılıkları
ASE işlevsel bağımlılıklara ek olarak, portal deneyimiyle ilgili birkaç ek öğe vardır. uygulamanın bazı özellikleri Azure portal SCM sitesine doğrudan erişime bağlıdır. Azure App Service her uygulama için iki URL vardır. İlk URL uygulamanıza erişmektir. İkinci URL, Kudu konsolu olarak da adlandırılan SCM sitesine erişmektir. SCM sitesini kullanan özellikler şunlardır:
- Web işleri
- İşlevler
- Günlük akışı
- Kudu
- Uzantıları
- İşlem Gezgini
- Konsol
ILB ASE'yi kullanıyorsanız, SCM sitesine sanal ağ dışından erişilemez. Bazı özellikler, bir uygulamanın SCM sitesine erişim gerektiren uygulama portalında çalışmaz. Portalı kullanmak yerine doğrudan SCM sitesine bağlanabilirsiniz.
ILB ASE'niz etki alanı adı contoso.appserviceenvironment.net ve uygulama adınız testapp ise, uygulamaya testapp.contoso.appserviceenvironment.net. Ile birlikte giden SCM sitesine testapp.scm.contoso.appserviceenvironment.net.
ASE IP adresleri
ASE'nin dikkat etmek için birkaç IP adresi vardır. Bunlar:
- Genel gelen IP adresi: Dış ASE'de uygulama trafiği ve hem Dış ASE hem de ILB ASE'de yönetim trafiği için kullanılır.
- Giden genel IP: ASE'den giden bağlantılar için sanal ağdan giden bağlantılar için "gelen" IP olarak kullanılır ve bu IP bir VPN'e yönlendirnz.
- ILB IP adresi: ILB IP adresi yalnızca bir ILB ASE'de mevcuttur.
- Uygulama tarafından atanan IP tabanlı TLS/SSL adresleri: Yalnızca Dış ASE ile ve IP tabanlı TLS/SSL bağlaması yapılandırıldığında mümkündür.
Bu IP adreslerinin hepsi ASE kullanıcı arabiriminden Azure portal ip adreslerinde görünür. ILB ASE'si varsa ILB'nin IP'si listelenir.
Not
ASE'niz çalışıyor olduğu sürece bu IP adresleri değişmez. ASE'niz askıya alınır ve geri yüklenirse ASE'niz tarafından kullanılan adresler değişir. AsE'nin askıya alınmış duruma dönüş nedeninin, gelen yönetim erişimini engelleme veya ASE bağımlılığına erişimi engelleme olmasıdır.

Uygulama tarafından atanan IP adresleri
Dış ASE ile tek tek uygulamalara IP adresleri atabilirsiniz. ILB ASE ile bunu yapmak mümkün değil. Uygulamanın kendi IP adresine sahip olacak şekilde nasıl yapılandırılacakları hakkında daha fazla bilgi için bkz. Azure App Service'de TLS/SSL bağlaması ile özel bir DNS adını güvenli hale Azure App Service.
Bir uygulamanın kendi IP tabanlı SSL adresi olduğunda ASE, bu IP adresine eşlemek için iki bağlantı noktası yedekler. Bir bağlantı noktası HTTP trafiğine, diğer bağlantı noktası HTTPS'ye göredir. Bu bağlantı noktaları, IP adresleri bölümündeki ASE kullanıcı arabiriminde listelenir. Trafiğin VIP'den bu bağlantı noktalarına ulaşamaları gerekir, yoksa uygulamalara erişilemez. Bu gereksinim, Ağ Güvenlik Gruplarını (NSG) yapılandırıldığında unutmama açısından önemlidir.
Ağ Güvenlik Grupları
Ağ Güvenlik Grupları, sanal ağ içinde ağ erişimini denetleme olanağı sağlar. Portalı kullandığınızda, her şeyi reddetmek için en düşük öncelikli, örtük bir reddetme kuralı vardır. Sizin oluşturduklarınız izin kurallarınızdır.
ASE'de ASE'nin kendisini barındırmak için kullanılan VM'lere erişiminiz yoktur. Bunlar Microsoft tarafından yönetilen bir abonelikte yer alır. ASE'de uygulamalara erişimi kısıtlamak istiyorsanız, ASE alt ağında NSG'leri ayarlayın. Bunu yaparken ASE bağımlılıklarına özellikle dikkat edin. Herhangi bir bağımlılığı engellerseniz ASE çalışmayı durdurur.
NSG'ler, Azure portal PowerShell aracılığıyla ya da yalıtabilirsiniz. Buradaki bilgiler, Azure portal. Portalda Ağ İletişimi altında üst düzey bir kaynak olarak NSG'ler oluşturabilir ve yönetebilirsiniz.
Bir ASE'nin çalışması için NSG'de gerekli girişler trafiğe izin vermektir:
Gelen
- 454.455 bağlantı noktalarında AppServiceManagement IP hizmet etiketinden TCP
- 16001 bağlantı noktası üzerindeki yük dengeleyiciden TCP
- ASE alt a ağından tüm bağlantı noktalarında ASE alt ağına
Giden
- Bağlantı noktası 53'te tüm IPS'lere UDP
- Bağlantı noktası 123'te tüm IPS'lere UDP
- 80, 443 bağlantı noktalarında tüm IPS'lere TCP
Sql1433 bağlantı noktalarında IP hizmeti etiketine TCP- Bağlantı noktası 12000'de tüm IPS'lere TCP
- tüm bağlantı noktalarında ASE alt ağın
Bu bağlantı noktaları, uygulamalarınızı başarılı bir şekilde kullanmak için gereken bağlantı noktalarını içermez. Örneğin, uygulamanın bağlantı noktası 3306'da bir MySQL sunucusu çağırması gerekir. 123 bağlantı noktası üzerinde Ağ Zamanı Protokolü (NTP), işletim sistemi tarafından kullanılan zaman eşitleme protokolüdür. NTP uç noktaları App Services'e özgü değildir, işletim sistemine göre değişiklik gösterebilir ve iyi tanımlanmış bir adres listesinde değildir. Zaman eşitleme sorunlarını önlemek için 123 bağlantı noktası üzerinde tüm adreslere giden UDP trafiğine izin verebilirsiniz. 12000 bağlantı noktasına giden TCP trafiği, sistem desteği ve analizi içindir. Uç noktalar dinamiktir ve iyi tanımlanmış bir adres kümesinde değildir.
Normal uygulama erişim bağlantı noktaları:
| Kullanın | Bağlantı noktaları |
|---|---|
| HTTP/HTTPS | 80, 443 |
| FTP/FTPS | 21, 990, 10001-10020 |
| Visual Studio uzaktan hata ayıklama | 4020, 4022, 4024 |
| Web Dağıtımı hizmeti | 8172 |
Gelen ve giden gereksinimler dikkate alınarak, NSG'ler bu örnekte gösterilen NSG'lere benzer şekilde göster gösterebilirsiniz.

Varsayılan kural, sanal ağ içinde IP'lerin ASE alt ağıyla iletişime olanak sağlar. Başka bir varsayılan kural, genel VIP olarak da bilinen yük dengeleyicinin ASE ile iletişim kurmasına olanak sağlar. Varsayılan kuralları görmek için Ekle simgesinin yanındaki Varsayılan kurallar'ı seçin. Varsayılan kurallardan önce diğer her şeyi reddet kuralını kullanırsanız VIP ile ASE arasındaki trafiği önlersiniz. Sanal ağın içinden gelen trafiği önlemek için, gelen trafiğe izin vermek için kendi kuralınızı ekleyin. Herhangi bir hedefi ve bağlantı noktası aralığı ile AzureLoadBalancer'a eşit bir kaynak * kullanın. NSG kuralı ASE alt ağına uygulandığı için hedefte belirli olmak zorunda değilsiniz.
Uygulamanıza bir IP adresi atadıysanız bağlantı noktalarını açık tutsanıza. Bağlantı noktalarını görmek için IP App Service Ortamı > seçin.
Son öğe dışında aşağıdaki giden kurallarında gösterilen tüm öğeler gereklidir. Bu makalenin başlarında not alan ASE bağımlılıklarına ağ erişimini etkinleştirirler. Herhangi birini engellersanız ASE'niz çalışmayı durdurur. Listede son öğe, ASE'nizin sanal ağınız içinde diğer kaynaklarla iletişim kurmasına olanak sağlar.

NSG'lerinizi tanımdikten sonra ASE'nizin üzerinde olduğu alt ağlara atabilirsiniz. ASE sanal ağın veya alt ağın hatırlanmasa, ASE portal sayfasından görebilirsiniz. NSG'yi alt ağınıza atamak için alt ağ kullanıcı arabirimine gidin ve NSG'yi seçin.
Yollar
Zorlamalı tünel, giden trafiğin doğrudan İnternet'e değil ExpressRoute ağ geçidi veya sanal gereç gibi başka bir yere gitmek için sanal ağ geçidinde yollar ayarlamanızdır. ASE'nizi bu şekilde yapılandırmanız gerekiyorsa, App Service Ortamınızı Zorlamalı Tünel ile Yapılandırma konusundaki belgeyi okuyun. Bu belgede, ExpressRoute ve zorlamalı tünel ile çalışmak için kullanılabilen seçenekler anlatacağız.
Portalda bir ASE oluşturulduğunda, alt ağda ASE ile oluşturulan bir dizi yol tablosu da oluştururuz. Bu yollar yalnızca giden trafiği doğrudan İnternet'e göndermek için derler.
Aynı yolları el ile oluşturmak için şu adımları izleyin:
Azure portala gidin. Ağ Yönlendirme > Tabloları'ı seçin.
Sanal ağınız ile aynı bölgede yeni bir yol tablosu oluşturun.
Yol tablosu kullanıcı arabiriminizin içinde Yollar Ekle'yi > seçin.
Sonraki atlama türünü İnternet olarak, Adres ön eki'i ise 0.0.0.0/0 olarak ayarlayın. Kaydet’i seçin.
Ardından aşağıdakine benzer bir şey görüyorsunuz:

Yeni yol tablosu oluşturdukta ASE'nizi içeren alt ağ adresine gidin. Portaldaki listeden yol tabloyu seçin. Değişikliği kaydeddikten sonra, alt ağınız ile not alan NSG'leri ve yolları görüyor olun.

Hizmet Uç Noktaları
Hizmet Uç Noktaları, çok kiracılı hizmetlere erişimi bir dizi Azure sanal ağı ve alt ağı ile kısıtlamanızı sağlar. Sanal Ağ Hizmet Uç Noktaları belgelerinde Hizmet Uç Noktaları hakkında daha fazla bilgi edinebilirsiniz.
Bir kaynakta Hizmet Uç Noktalarını etkinleştirdiğinizde, diğer tüm yönlendiricilerden daha yüksek öncelikle oluşturulmuş rotalar vardır. Herhangi bir Azure hizmetinde zorlamalı bir tünel üzerinden ASE ile Hizmet Uç Noktası kullanıyorsanız, bu hizmetlere giden trafiğe zorlamalı tünel uygulanmaz.
Azure SQL örneği içeren bir alt ağda Hizmet Uç Noktaları etkinleştirilirse, o alt ağa veya alt ağdan bağlanan tüm Azure SQL örnekleri için Hizmet Uç Noktaları etkinleştirilmiş olmalıdır. Aynı alt ağdan birden fazla Azure SQL örneğine erişmek istiyorsanız, tek bir Azure SQL örneğinde Hizmet Uç Noktalarını etkinleştirebilir, başka bir örnekte etkinleştiremezsiniz. Başka hiçbir Azure hizmeti, Hizmet Uç Noktaları SQL Azure hizmeti gibi davranmaz. Azure Depolama ile Hizmet Uç Noktalarını etkinleştirdiğinizde, alt ağınızdan o kaynağa erişimi kilitlersiniz, ancak Hizmet Uç Noktaları etkinleştirilmiş olmasa da diğer Azure Depolama hesaplarından erişmeye devam edebilirsiniz.
