Application Gateway'de arka uç durumu sorunlarını giderme
Genel bakış
Varsayılan olarak Azure Application Gateway arka uç sunucularının durumunu denetlemek ve isteklere hizmet vermeye hazır olup olmadıklarını öğrenmek için bu sunucuları yoklar. Kullanıcılar ayrıca konak adından, araştırılacak yoldan ve Sağlıklı olarak kabul edilecek durum kodlarından bahsetmek için özel yoklamalar oluşturabilir. Her durumda, arka uç sunucusu başarıyla yanıt vermezse Application Gateway sunucuyu İyi durumda değil olarak işaretler ve istekleri sunucuya iletmeyi durdurur. Sunucu başarıyla yanıt vermeye başladıktan sonra, Application Gateway istekleri iletmeyi sürdürür.
Arka uç durumunu denetleme
Arka uç havuzunuzun durumunu denetlemek için, Azure portalda bulunan Arka Uç Durumu sayfasını kullanabilirsiniz. Ya da, Azure PowerShell, CLI veya REST API seçeneklerini kullanabilirsiniz.
Bu yöntemlerden herhangi biri tarafından alınan durum aşağıdaki durumlardan biri olabilir:
- Sağlam
- Uygun Değil
- Bilinmiyor
Application Gateway, durumu iyi durumdaysa arka uç havuzundan bir sunucuya bir istek iletir. Arka uç havuzundaki tüm sunucular iyi durumda değilse veya bilinmiyorsa, istemciler arka uç uygulamasına erişirken sorunlarla karşılaşabilir. Arka Uç Durumu tarafından bildirilen farklı iletileri, bunların nedenlerini ve çözümlerini anlamak için daha fazla bilgi edinin.
Not
Kullanıcınızın arka uç sistem durumu durumlarını görme izni yoksa çıkış No results.
görüntülenir.
Arka uç sistem durumu: İyi durumda değil
Arka uç sistem durumu İyi durumda değilse portal görünümü aşağıdaki ekran görüntüsüne benzer:
Azure PowerShell, CLI veya Azure REST API sorgusu kullanıyorsanız aşağıdaki örneğe benzer bir yanıt alırsınız:
PS C:\Users\testuser\> Get-AzApplicationGatewayBackendHealth -Name "appgw1" -ResourceGroupName "rgOne"
BackendAddressPools :
{Microsoft.Azure.Commands.Network.Models.PSApplicationGatewayBackendHealthPool}
BackendAddressPoolsText : [
{
"BackendAddressPool": {
"Id": "/subscriptions/aaaa0000-bb11-2222-33cc-444444dddddd/resourceGroups/rgOne/providers/Microsoft.Network/applicationGateways/appgw1/b
ackendAddressPools/appGatewayBackendPool"
},
"BackendHttpSettingsCollection": [
{
"BackendHttpSettings": {
"TrustedRootCertificates": [],
"Id": "/subscriptions/aaaa0000-bb11-2222-33cc-444444dddddd/resourceGroups/rgOne/providers/Microsoft.Network/applicationGateways/appg
w1/backendHttpSettingsCollection/appGatewayBackendHttpSettings"
},
"Servers": [
{
"Address": "10.0.0.5",
"Health": "Healthy"
},
{
"Address": "10.0.0.6",
"Health": "Unhealthy"
}
]
}
]
}
]
Arka uç havuzundaki tüm sunucular için “arka uç sunucusu iyi durumda değil” durumu aldıktan sonra, istekler sunuculara iletilmez ve Application Gateway istekte bulunan istemciye "502 Hatalı Ağ Geçidi" hatası döndürür. Bu sorunu gidermek için Arka Uç Sistem Durumu sekmesindeki Ayrıntılar sütununa bakın.
Ayrıntılar sütununda görüntülenen ileti sorun hakkında daha ayrıntılı içgörüler sağlar ve bu ayrıntılara dayanarak sorunu gidermeye başlayabilirsiniz.
Not
Varsayılan yoklama isteği protocol>://127.0.0.1:<port> biçiminde <gönderilir. Örneğin, http://127.0.0.1:80
bağlantı noktası 80'de bir HTTP yoklaması için. Yalnızca 200 ile 399 arasındaki HTTP durum kodları iyi durumda kabul edilir. Protokol ve hedef bağlantı noktası HTTP ayarlarından devralınır. Application Gateway'in farklı bir protokol, ana bilgisayar adı veya yolda araştırmasını ve farklı bir durum kodunu Sağlıklı olarak tanımasını istiyorsanız, özel bir yoklama yapılandırın ve bunu HTTP ayarlarıyla ilişkilendirin.
Hata iletileri
Arka uç sunucusu zaman aşımı
İleti: Arka ucun uygulama ağ geçidinin sistem durumu yoklamasına yanıt verirken harcadığı süre, yoklama ayarındaki zaman aşımı eşiğinden fazladır.
Neden: Application Gateway arka uç sunucusuna HTTP(S) yoklama isteği gönderdikten sonra, yapılandırılmış bir süre boyunca arka uç sunucusundan yanıt bekler. Arka uç sunucusu bu süre içinde yanıt vermezse (zaman aşımı değeri), yapılandırılan zaman aşımı süresi içinde yeniden yanıt verene kadar iyi durumda değil olarak işaretlenir.
Çözüm: Arka uç sunucusunun veya uygulamanın yapılandırılan zaman aşımı süresi içinde neden yanıt vermediğini ve ayrıca uygulama bağımlılıklarını denetleyin. Örneğin, veritabanında yanıt gecikmesi tetikleyebilecek sorunlar olup olmadığını denetleyin. Uygulamanın davranışının farkındaysanız ve uygulama yalnızca zaman aşımı değerinden sonra yanıt vermeliyse özel yoklama ayarlarından zaman aşımı değerini artırın. Zaman aşımı değerini değiştirmek için özel bir yoklamanız olmalıdır. Özel yoklama yapılandırma hakkında bilgi için belgeler sayfasına bakın.
Zaman aşımı değerini artırmak için şu adımları izleyin:
- Arka uç sunucusuna doğrudan erişin ve sunucunun bu sayfada yanıt vermesi için geçen süreyi denetleyin. Geliştirici araçlarını kullanan bir tarayıcı dahil olmak üzere arka uç sunucusuna erişmek için herhangi bir aracı kullanabilirsiniz.
- Uygulamanın yanıt vermesi için geçen süreyi belirledikten sonra Sistem Durumu Yoklamaları sekmesini ve ardından HTTP ayarlarınız ile ilişkili araştırmayı seçin.
- Uygulama yanıt süresinden daha uzun zaman aşımı değerlerini saniye olarak girin.
- Özel yoklama ayarlarını kaydedin ve arka uç durumunun şimdi Sağlıklı olarak gösterilip gösterilmediğini denetleyin.
DNS çözümleme hatası
İleti: Application Gateway bu arka uç için bir yoklama oluşturamadı. Bu durum genellikle arka ucun FQDN'sinin doğru girilmemesiyle oluşur.
Neden: Arka uç havuzu IP Adresi, FQDN (tam etki alanı adı) veya App Service türündeyse, Application Gateway DNS (özel veya Azure varsayılan) aracılığıyla girilen FQDN'nin IP adresine çözümleniyor. Ardından Application Gateway HTTP ayarlarında belirtilen TCP bağlantı noktasında sunucuya bağlanmayı dener. Ama bu iletinin görüntülenmesi Application Gateway'in girilen FQDN'sinin IP adresini başarıyla çözümleyemediğine işaret eder.
Çözüm:
- Arka uç havuzuna girilen FQDN'nin doğru olduğunu ve bir genel etki alanı olduğunu onaylayıp bunu yerel makinenizden çözümlemeyi deneyin.
- IP adresini çözümleyebiliyorsanız, sanal ağdaki DNS yapılandırmasında bir sorun olabilir.
- Sanal ağın özel bir DNS sunucusuyla yapılandırılıp yapılandırılmadığını denetleyin. Bu durumda, DNS sunucusunun belirtilen FQDN'nin IP adresine neden çözümlenemediğini denetleyin.
- Azure varsayılan DNS kullanıyorsanız, etki alanı adı kayıt şirketinizle doğru A kaydı veya CNAME kaydı eşleme işleminin tamamlandığını doğrulayın.
- Etki alanı özel veya dahiliyse, etki alanını aynı sanal ağdaki bir VM'den çözümlemeyi deneyin. Çözümleyebiliyorsanız Application Gateway’yi yeniden başlatın ve tekrar denetleyin. Application Gateway’yi yeniden başlatmak için, bu bağlantılı kaynaklarda açıklanan PowerShell komutlarını kullanarak durdurmanız ve başlatmanız gerekir.
TCP bağlantısı hatası
İleti: Application Gateway arka uca bağlanamadı. Arka ucun yoklama için kullanılan bağlantı noktasında yanıt verdiğini denetleyin. Ayrıca herhangi bir NSG/UDR/Güvenlik Duvarının bu arka ucun IP'sine ve bağlantı noktasına erişimi engelleyip engellemediğini denetleyin.
Neden: DNS çözümleme aşamasından sonra Application Gateway, HTTP ayarlarında yapılandırılan TCP bağlantı noktasında arka uç sunucusuna bağlanmayı dener. Application Gateway, belirtilen bağlantı noktasında bir TCP oturumu oluşturamazsa, sistem durumu yoklaması bu iletiyle İyi durumda değil olarak işaretlenir.
Çözüm: Bu hatayı alırsanız şu adımları izleyin:
Bir tarayıcı veya PowerShell kullanarak HTTP ayarlarında belirtilen bağlantı noktasında arka uç sunucusuna bağlanıp bağlanamayacağınızı denetleyin. Örneğin, şu komutu çalıştırın:
Test-NetConnection -ComputerName www.bing.com -Port 443
.Belirtilen bağlantı noktası istenen bağlantı noktası değilse, Application Gateway'in arka uç sunucusuna bağlanması için doğru bağlantı noktası numarasını girin.
Bağlantı noktasında yerel makinenizden de bağlanamıyorsanız:
a. Arka uç sunucusunun ağ bağdaştırıcısının ve alt ağının ağ güvenlik grubu (NSG) ayarlarını ve yapılandırılan bağlantı noktasına gelen bağlantılara izin verilip verilmediğini denetleyin. Aksi takdirde, bağlantılara izin vermek için yeni bir kural oluşturun. NSG kuralları oluşturmayı öğrenmek için belgeler sayfasına bakın.
b. Application Gateway alt ağına ait NSG ayarlarının giden genel ve özel trafiğe izin verip vermediğini denetleyin, böylece bağlantı yapılabilir. NSG kuralları oluşturma hakkında daha fazla bilgi edinmek için 3a adımında sağlanan belge sayfasını gözden geçirin.
$vnet = Get-AzVirtualNetwork -Name "vnetName" -ResourceGroupName "rgName" Get-AzVirtualNetworkSubnetConfig -Name appGwSubnet -VirtualNetwork $vnet
c. Application Gateway'in kullanıcı tanımlı yolları (UDR) ayarlarını ve yönlendirme anomalileri için arka uç sunucusunun alt akını denetleyin. UDR'nin trafiği arka uç alt ağından uzaklaştırmadığından emin olun. Örneğin, Ağ sanal gereçlerine giden yolları veya Azure ExpressRoute ve/veya VPN aracılığıyla Application Gateway alt ağına tanıtılan varsayılan yolları denetleyin.
d. Ağ bağdaştırıcısının geçerli yollarını ve kurallarını denetlemek için aşağıdaki PowerShell komutlarını kullanabilirsiniz:
Get-AzEffectiveNetworkSecurityGroup -NetworkInterfaceName "nic1" -ResourceGroupName "testrg" Get-AzEffectiveRouteTable -NetworkInterfaceName "nic1" -ResourceGroupName "testrg"
NSG veya UDR ile ilgili herhangi bir sorun bulamazsanız, istemcilerin yapılandırılan bağlantı noktalarında TCP oturumu oluşturmasını engelleyen uygulamayla ilgili sorunlar için arka uç sunucunuzu denetleyin. Denetlenecek birkaç şey:
a. Bir komut istemi açın (Win+R -> cmd), netstat girin ve Enter'ı seçin.
b. Sunucunun yapılandırılan bağlantı noktasında dinleyip dinlemediğini denetleyin. Örneğin:
Proto Local Address Foreign Address State PID TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4
c. Yapılandırılan bağlantı noktasında dinlemiyorsa web sunucusu ayarlarınızı denetleyin. Örneğin: IIS'de site bağlamaları, NGINX'te sunucu bloğu ve Apache'de sanal konak.
d. Bağlantı noktasına gelen trafiğe izin verildiğinden emin olmak için işletim sistemi güvenlik duvarı ayarlarınızı denetleyin.
HTTP durum kodu uyuşmazlığı
İleti: Arka ucun HTTP yanıtının durum kodu yoklama ayarıyla eşleşmedi. Beklenen:{HTTPStatusCode0} Alındı:{HTTPStatusCode1}.
Neden: TCP bağlantısı kurulduktan ve TLS el sıkışması yapıldıktan sonra (TLS etkinleştirildiyse), Application Gateway araştırmayı arka uç sunucusuna HTTP GET isteği olarak gönderir. Daha önce açıklandığı gibi, varsayılan yoklama olarak <protocol>://127.0.0.1:<port>/
ayarlanır ve 200 ile 399 aralığındaki yanıt durum kodlarını Sağlıklı olarak değerlendirir. Sunucu başka bir durum kodu döndürürse, bu iletiyle sağlıksız olarak işaretlenir.
Çözüm: Arka uç sunucusunun yanıt koduna bağlı olarak aşağıdaki adımları uygulayabilirsiniz. Yaygın durum kodlarından birkaçı burada listelenmiştir:
Hata | Eylemler |
---|---|
Yoklama durum kodu uyuşmazlığı: 401 alındı | Arka uç sunucusunun kimlik doğrulaması gerektip gerektirmediğini denetleyin. Application Gateway yoklamaları kimlik doğrulaması için kimlik bilgilerini geçiremez. Yoklama durum kodu eşleşmesinde "HTTP 401"e izin verin veya sunucunun kimlik doğrulaması gerektirmediği bir yolla yoklayın. |
Yoklama durum kodu uyuşmazlığı: Alınan 403 | Erişim yasak. Arka uç sunucusunda yola erişime izin verilip verilmediğini denetleyin. |
Yoklama durum kodu uyuşmazlığı: 404 alındı | Sayfa bulunamadı. Ana bilgisayar adı yolunun arka uç sunucusundan erişilebilir olup olmadığını denetleyin. Konak adını veya yol parametresini erişilebilir bir değerle değiştirin. |
Yoklama durum kodu uyuşmazlığı: 405 alındı | Application Gateway için yoklama istekleri HTTP GET yöntemini kullanır. Sunucunuzun bu yönteme izin verip vermeyeceğini denetleyin. |
Yoklama durum kodu uyuşmazlığı: 500 alındı | İç sunucu hatası. Arka uç sunucusunun sistem durumunu ve hizmetlerin çalışıp çalışmadığını denetleyin. |
Yoklama durum kodu uyuşmazlığı: 503 alındı | Hizmet kullanılamıyor. Arka uç sunucusunun sistem durumunu ve hizmetlerin çalışıp çalışmadığını denetleyin. |
Alternatif olarak, yanıtın meşru olduğunu düşünüyorsanız ve Application Gateway'in diğer durum kodlarını Sağlıklı olarak kabul etmelerini istiyorsanız, özel bir yoklama oluşturabilirsiniz. Bu yaklaşım, arka uç web sitesinin kimlik doğrulamasına ihtiyaç duyduğu durumlarda kullanışlıdır. Yoklama istekleri herhangi bir kullanıcı kimlik bilgisi taşımadığından başarısız olur ve arka uç sunucusu tarafından bir HTTP 401 durum kodu döndürülür.
Özel bir yoklama oluşturmak için aşağıdaki adımları izleyin.
HTTP yanıt gövdesi uyuşmazlığı
İleti: Arka ucun HTTP yanıtının gövdesi yoklama ayarıyla eşleşmedi. Alınan yanıt gövdesi {string} içermiyor.
Neden: Özel bir yoklama oluşturduğunuzda, yanıt gövdesinden bir dizeyi eşleştirerek arka uç sunucusunu Sağlıklı olarak işaretleyebilmek. Örneğin, Application Gateway'i "yetkisiz" ifadesi ile eşleşecek bir dize olarak kabul edilecek şekilde yapılandırabilirsiniz. Yoklama isteğinin arka uç sunucu yanıtı yetkisiz dizeyi içeriyorsa, bunu Sağlıklı olarak işaretler. Aksi takdirde, verilen iletiyle sağlıksız olarak işaretlenir.
Çözüm: Bu sorunu çözmek için şu adımları izleyin:
- Arka uç sunucusuna yerel olarak veya yoklama yolundaki bir istemci makinesinden erişin ve yanıt gövdesini denetleyin.
- Application Gateway özel yoklama yapılandırmasındaki yanıt gövdesinin, yapılandırdığınızla eşleştiğini doğrulayın.
- Eşleşmiyorsa yoklama yapılandırmasını kabul edilecek doğru dize değerine sahip olacak şekilde değiştirin.
Application Gateway yoklaması eşleştirme hakkında daha fazla bilgi edinin.
Not
TLS ile ilgili tüm hata iletileri için, sni davranışı ve v1 ile v2 SKU arasındaki farklar hakkında daha fazla bilgi edinmek için TLS genel bakış sayfasına bakın.
Ortak Ad (CN) eşleşmiyor
İleti: (V2 için) Arka uç sunucusu tarafından sunulan yaprak sertifikanın Ortak Adı, uygulama ağ geçidinin Yoklama veya Arka Uç Ayarı ana bilgisayar adıyla eşleşmiyor.
(V1 için) Arka uç sertifikasının Ortak Adı (CN) eşleşmiyor.
Neden: (V2 için) Bu, arka uç ayarında HTTPS protokolü seçtiğinizde oluşur ve Özel Yoklama'nın veya Arka Uç Ayarı'nın ana bilgisayar adı (bu sırada) arka uç sunucusunun sertifikasının Ortak Adı (CN) ile eşleşmez.
(V1 için) Arka uç havuzu hedefinin FQDN'si, arka uç sunucusunun sertifikasının Ortak Adı (CN) ile eşleşmiyor.
Çözüm: Bu değer TLS el sıkışması sırasında Sunucu Adı Göstergesi'ni (SNI) ayarlamak için kullanıldığından, ana bilgisayar adı bilgileri arka uç HTTPS bağlantısı için kritik öneme sahiptir. Bu sorunu ağ geçidinizin yapılandırmasına bağlı olarak aşağıdaki yollarla düzeltebilirsiniz.
V2 için,
- Varsayılan Yoklama kullanıyorsanız – Uygulama ağ geçidinizin ilişkili Arka uç ayarında bir konak adı belirtebilirsiniz. Arka uç ayarında "Belirli ana bilgisayar adıyla geçersiz kıl" veya "Arka uç hedefinden konak adı seç" seçeneğini belirleyebilirsiniz.
- Özel Yoklama kullanıyorsanız – Özel Yoklama için arka uç sunucu sertifikasının Ortak Adını belirtmek için "konak" alanını kullanabilirsiniz. Alternatif olarak, Arka Uç Ayarı zaten aynı ana bilgisayar adıyla yapılandırılmışsa yoklama ayarlarından "Arka uç ayarından konak adı seç" seçeneğini belirleyebilirsiniz.
V1 için arka uç havuzu hedefinin FQDN'sinin Ortak Ad (CN) ile aynı olduğunu doğrulayın.
İpuçları: Arka uç sunucu sertifikasının Ortak Adını (CN) belirlemek için bu yöntemlerden herhangi birini kullanabilirsiniz. Ayrıca, RFC 6125'e göre bir SAN varsa SNI doğrulamasının yalnızca bu alanda yapıldığını unutmayın. Sertifikada SAN yoksa ortak ad alanı eşleşir.
Tarayıcıyı veya herhangi bir istemciyi kullanarak: Arka uç sunucusuna doğrudan erişin (Application Gateway üzerinden değil) ve sertifika ayrıntılarını görüntülemek için adres çubuğundaki sertifika asma kilidine tıklayın. Bunu "Verilen" bölümünde bulabilirsiniz.
Arka uç sunucusunda (Windows) oturum açarak:
- Uygulamanızın barındırıldığı makinede oturum açın.
- Win+R'yi seçin veya Başlat düğmesine sağ tıklayın ve Çalıştır'ı seçin.
- certlm.msc girin ve Enter tuşuna basın. Sertifika Yöneticisi'ni Başlat menüsü de arayabilirsiniz.
- Sertifikayı bulun (genellikle Sertifikalar - Yerel Bilgisayar\Kişisel\Sertifikalar) ve sertifikayı açın.
- Ayrıntılar sekmesinde sertifika Konusu'na bakın.
Arka uç sunucusuna (Linux) oturum açarak: Doğru sertifika dosya adını belirterek bu OpenSSL komutunu çalıştırın
openssl x509 -in certificate.crt -subject -noout
Arka uç sertifikasının süresi doldu
İleti: Arka uç sertifikası geçersiz. Geçerli tarih, sertifikadaki "Geçerlilik tarihi" ve "Geçerlilik tarihi" tarih aralığında değil.
Neden: Süresi dolmuş bir sertifikanın güvenli olmadığı kabul edilir ve bu nedenle uygulama ağ geçidi, süresi dolmuş sertifikaya sahip arka uç sunucusunu iyi durumda değil olarak işaretler.
Çözüm: Çözüm, arka uç sunucusunda sertifika zincirinin hangi bölümünün süresinin dolduğuna bağlıdır.
V2 SKU için,
Süresi Dolmuş Yaprak (Etki Alanı veya Sunucu olarak da bilinir) sertifikası – Sunucu sertifikasını sertifika sağlayıcısıyla yenileyin ve yeni sertifikayı arka uç sunucusuna yükleyin. uygulamasından oluşan sertifika zincirinin tamamını yüklediğinizden
Leaf (topmost) > Intermediate(s) > Root
emin olun. Sertifika Yetkilisi (CA) türüne bağlı olarak, ağ geçidinizde aşağıdaki eylemleri gerçekleştirebilirsiniz.- Genel olarak bilinen CA: Sertifika veren iyi bilinen bir CA ise, uygulama ağ geçidinde herhangi bir işlem yapmanız gerekmez.
- Özel CA: Yaprak sertifika bir özel CA tarafından verildiyse, imzalama Kök CA sertifikasının değişip değişmediğini denetlemeniz gerekir. Böyle durumlarda, yeni Kök CA sertifikasını ( yüklemeniz gerekir. CER) ile ağ geçidinizin ilişkili Arka Uç ayarına gidin.
Süresi Dolan Ara veya Kök sertifika – Genellikle bu sertifikaların geçerlilik süreleri (on veya iki yıl) uzatılır. Kök/Ara sertifikanın süresi dolduğunda, yenilenen sertifika dosyaları için sertifika sağlayıcınıza danışın. Arka uç sunucusundan oluşan
Leaf (topmost) > Intermediate(s) > Root
bu güncelleştirilmiş ve eksiksiz sertifika zincirini yüklediğinizden emin olun.- Kök sertifika değişmeden kalırsa veya veren iyi bilinen bir CA ise, uygulama ağ geçidinde herhangi bir işlem yapmanız GEREKMEDİR.
- Özel CA kullanırken, Kök CA sertifikasının kendisi veya yenilenen Ara sertifikanın kökü değiştiyse, yeni Kök sertifikayı uygulama ağ geçidinin Arka Uç Ayarına yüklemeniz gerekir.
V1 SKU için,
- Süresi dolan Yaprak (Etki Alanı veya Sunucu olarak da bilinir) sertifikasını CA'nızla yenileyin ve aynı yaprak sertifikayı (. CER) öğesini uygulama ağ geçidinizin ilişkili Arka uç ayarına ayarlayın.
Ara sertifika bulunamadı
İleti: Arka uç sunucusu tarafından sunulan sertifika zincirinde Ara sertifika eksik . Sertifika zincirinin tamamlandığından ve arka uç sunucusunda doğru şekilde sıralandığından emin olun.
Neden: Ara sertifikalar arka uç sunucusundaki sertifika zincirine yüklenmez.
Çözüm: Yaprak sertifikasını imzalamak için ara sertifika kullanılır ve bu nedenle zinciri tamamlamak için gereklidir. Gerekli Ara sertifikalar için Sertifika Yetkilinize (CA) danışın ve bunları arka uç sunucunuza yükleyin. Bu zincir Yaprak Sertifika, ardından Ara sertifikalar ve son olarak Kök CA sertifikası ile başlamalıdır. Arka uç sunucusuna Kök CA sertifikası da dahil olmak üzere tam zinciri yüklemenizi öneririz. Başvuru için, Yaprak zincirde en üstte olmalıdır altındaki sertifika zinciri örneğine bakın.
Not
Sertifika Yetkilisi DEĞİl otomatik olarak imzalanan sertifika da aynı hatayla sonuçlanır. Bunun nedeni, uygulama ağ geçidinin otomatik olarak imzalanan sertifikayı "Yaprak" sertifikası olarak değerlendirmesi ve imzalanan Ara sertifikayı aramasıdır. Otomatik olarak imzalanan bir sertifikayı doğru şekilde oluşturmak için bu makaleyi izleyebilirsiniz.
Bu görüntüler otomatik olarak imzalanan sertifikalar arasındaki farkı gösterir.
Yaprak veya sunucu sertifikası bulunamadı
İleti: Arka uç sunucusu tarafından sunulan sertifika zincirinde Yaprak sertifika eksik . Arka uç sunucusunda zincirin tamamlandığından ve doğru sıralandığından emin olun.
Neden: Yaprak (Etki Alanı veya Sunucu olarak da bilinir) sertifikası arka uç sunucusundaki sertifika zincirinde yok.
Çözüm: Yaprak sertifikayı Sertifika Yetkilinizden (CA) alabilirsiniz. Bu yaprak sertifikayı ve tüm imzalama sertifikalarını (Ara ve Kök CA sertifikaları) arka uç sunucusuna yükleyin. Bu zincir Yaprak Sertifikasıyla başlamalı, arkasından ara sertifika gelmeli ve son olarak da Kök CA sertifikası bulunmalıdır. Arka uç sunucusuna Kök CA sertifikası da dahil olmak üzere tam zinciri yüklemenizi öneririz. Başvuru için, Yaprak zincirde en üstte olmalıdır altındaki sertifika zinciri örneğine bakın.
Sunucu sertifikası genel olarak bilinen bir CA tarafından verilmedi
İleti: Arka uç Sunucu sertifikası iyi bilinen bir Sertifika Yetkilisi (CA) tarafından imzalanmaz. Bilinmeyen CA sertifikalarını kullanmak için Kök sertifikası, uygulama ağ geçidinin Arka Uç Ayarına yüklenmelidir.
Neden: Arka uç ayarında "iyi bilinen CA sertifikası" seçtiniz, ancak arka uç sunucusu tarafından sunulan Kök sertifika genel olarak bilinmiyor.
Çözüm: Yaprak sertifika özel sertifika yetkilisi (CA) tarafından verildiğinde, imzalanan Kök CA'nın sertifikası uygulama ağ geçidinin ilişkili Arka Uç Ayarına yüklenmelidir. Bu, uygulama ağ geçidinizin bu arka uç sunucusuyla güvenilir bir bağlantı kurmasını sağlar. Bu sorunu düzeltmek için, ilişkili arka uç ayarına gidin, “iyi bilinen CA değil” seçeneğini belirleyin ve Kök CA sertifikasını (CER) karşıya yükleyin. Kök sertifikayı belirlemek ve indirmek için Güvenilen kök sertifika uyumsuzluğu altında açıklanan adımları izleyebilirsiniz.
Ara sertifika, genel olarak bilinen bir CA tarafından imzalanmaz.
İleti: Ara sertifika iyi bilinen bir Sertifika Yetkilisi (CA) tarafından imzalanmaz. Sertifika zincirinin tamamlandığından ve arka uç sunucusunda doğru şekilde sıralandığından emin olun.
Neden: Arka uç ayarında "iyi bilinen CA sertifikası" seçtiniz, ancak arka uç sunucusu tarafından sunulan Ara sertifika genel olarak bilinen herhangi bir CA tarafından imzalanmamış.
Çözüm: Özel bir Sertifika Yetkilisi (CA) tarafından bir sertifika verildiğinde, imzalanan Kök CA'nın sertifikası uygulama ağ geçidinin ilişkili Arka Uç Ayarına yüklenmelidir. Böylece, uygulama ağ geçidiniz bu arka uç sunucusuyla güvenilir bir bağlantı kurabilir. Bunu düzeltmek için özel CA'nıza başvurarak uygun Kök CA sertifikasını ( alın. CER) ve karşıya yükleyin. "İyi bilinen bir CA değil" seçeneğini belirleyerek uygulama ağ geçidinizin Arka Uç Ayarına CER dosyası. Ayrıca, kolay doğrulama için, arka uç sunucusuna Kök CA sertifikası da dahil olmak üzere tam zinciri yüklemenizi öneririz.
Güvenilen kök sertifika uyuşmazlığı (arka uç sunucusunda Kök sertifika yok)
İleti: Ara sertifika, uygulama ağ geçidine yüklenen kök sertifikalar tarafından imzalanmamış. Sertifika zincirinin tamamlandığından ve arka uç sunucusunda doğru şekilde sıralandığından emin olun.
Neden: İlişkili Arka Uç Ayarına yüklenen Kök CA sertifikalarının hiçbiri arka uç sunucusunda yüklü Ara sertifikayı imzalamadı. Arka uç sunucusunda yalnızca Yaprak ve Ara sertifikaları yüklü.
Çözüm: Yaprak sertifika, Kök CA sertifikası tarafından imzalanan bir Ara sertifika tarafından imzalanır. Özel Sertifika Yetkilisinden (CA) alınan bir sertifikayı kullanırken, ilgili Kök CA sertifikasını uygulama ağ geçidine yüklemeniz gerekir. Özel sertifika yetkilinize başvurarak uygun Kök CA sertifikasını (.CER) alın ve bu CER dosyasını uygulama ağ geçidinizin Arka uç ayarına yükleyin.
Güvenilen kök sertifika uyuşmazlığı (Kök sertifika arka uç sunucusunda kullanılabilir)
İleti: Arka uç tarafından kullanılan sunucu sertifikasının kök sertifikası, uygulama ağ geçidine eklenen güvenilen kök sertifikayla eşleşmiyor. Arka ucu izin verilenler listesine eklemek için doğru kök sertifikayı eklediğinizden emin olun.
Neden: Bu hata, uygulama ağ geçidinizin arka uç ayarına yüklenen Kök sertifikalardan hiçbiri arka uç sunucusunda bulunan Kök sertifikayla eşleşmediğinde oluşur.
Çözüm: Bu, Özel Sertifika Yetkilisi (CA) tarafından verilen bir arka uç sunucu sertifikası için geçerlidir veya otomatik olarak imzalanan bir sertifikadır. Doğru Kök CA sertifikasını belirleyin ve ilişkili arka uç ayarına yükleyin.
İpuçları: Kök sertifikayı tanımlamak ve indirmek için bu yöntemlerden herhangi birini kullanabilirsiniz.
Tarayıcı kullanarak: Arka uç sunucusuna doğrudan erişin (Application Gateway üzerinden değil) ve sertifika ayrıntılarını görüntülemek için adres çubuğundaki sertifika asma kilidine tıklayın.
- Zincirdeki kök sertifikayı seçin ve Dışarı Aktar'a tıklayın. Varsayılan olarak, bu bir 'dir. CRT dosyası.
- bunu açın. CRT dosyası.
- Ayrıntılar sekmesine gidin ve "Dosyaya Kopyala"ya tıklayın,
- Sertifika Dışarı Aktarma Sihirbazı sayfasında İleri'ye tıklayın.
- "Base-64 kodlanmış X.509 ( öğesini seçin. CER) ve İleri'ye tıklayın,
- Yeni bir dosya adı verin ve İleri'ye tıklayın.
- Almak için Son'a tıklayın. CER dosyası.
- Bu Kök sertifikayı (. CER) özel CA'nızı uygulama ağ geçidinin arka uç ayarına gönderir.
Arka uç sunucusunda oturum açarak (Windows)
- Uygulamanızın barındırıldığı makinede oturum açın.
- Win+R'yi seçin veya Başlangıç düğmesine sağ tıklayın ve ardından Çalıştır'ı seçin.
- certlm.msc girin ve Enter tuşuna basın. Sertifika Yöneticisi'ni Başlat menüsü de arayabilirsiniz.
- Sertifikayı bulun ( genellikle Sertifikalar - Yerel Bilgisayar\Kişisel\Sertifikalar) ve açın.
- Kök sertifikayı ve ardından Sertifikayı Görüntüle'yi seçin.
- Sertifika özellikleri'nde Ayrıntılar sekmesini seçin ve "Dosyaya Kopyala" seçeneğine tıklayın.
- Sertifika Dışarı Aktarma Sihirbazı sayfasında İleri'ye tıklayın.
- "Base-64 kodlanmış X.509 ( öğesini seçin. CER) ve İleri'ye tıklayın,
- Yeni bir dosya adı verin ve İleri'ye tıklayın.
- Almak için Son'a tıklayın. CER dosyası.
- Bu Kök sertifikayı (. CER) özel CA'nızı uygulama ağ geçidinin arka uç ayarına gönderir.
Yaprak zincirde en üstte olmalıdır.
İleti: Yaprak sertifikası, arka uç sunucusu tarafından sunulan zincirde en üstteki sertifika değildir. Sertifika zincirinin arka uç sunucusunda doğru şekilde sıralandığından emin olun.
Neden: Yaprak (Etki Alanı veya Sunucu olarak da bilinir) sertifikası arka uç sunucusunda doğru sırada yüklü değil.
Çözüm: Arka uç sunucusundaki sertifika yüklemesi, yaprak sertifikayı ve tüm imzalama sertifikalarını (Ara ve Kök CA sertifikaları) içeren sıralı bir sertifika listesi içermelidir. Bu zincir yaprak sertifikasıyla başlamalı, arkasından Ara sertifikalar gelmeli ve son olarak da Kök CA sertifikası bulunmalıdır. Kök CA sertifikası da dahil olmak üzere tüm zinciri arka uç sunucusuna yüklemenizi öneririz.
Verilen, OpenSSL'de derinlikler (0, 1, 2 vb.) olarak belirtilen Ara ve Kök CA sertifikaları ile birlikte bir Sunucu sertifikası yükleme örneğidir. Aşağıdaki OpenSSL komutlarını kullanarak arka uç sunucunuzun sertifikası için de aynı şeyi doğrulayabilirsiniz.s_client -connect <FQDN>:443 -showcerts
VEYA s_client -connect <IPaddress>:443 -servername <TLS SNI hostname> -showcerts
Sertifika doğrulaması başarısız oldu
İleti: Arka uç sertifikasının geçerliliği doğrulanamadı. Nedenini öğrenmek için {errorCode} hata koduyla ilişkili ileti için OpenSSL tanılamalarını denetleyin
Neden: Bu hata, Application Gateway sertifikanın geçerliliğini doğrulayamazsa oluşur.
Çözüm: Bu sorunu çözmek için sunucunuzdaki sertifikanın düzgün oluşturulduğunu doğrulayın. Örneğin sertifikanızı ve özelliklerini OpenSSL kullanarak doğrulayabilir, ardından sertifikayı Application Gateway'in HTTP ayarlarına yeniden yüklemeyi deneyebilirsiniz.
Arka uç sistem durumu: Bilinmiyor
Arka uç havuzunun DNS girişlerine yönelik güncelleştirmeler
İleti: Arka uç sistem durumu alınamadı. Bu durum, v1 SKU'su ve v2 SKU'su durumunda 65200-65535 bağlantı noktalarındaki 65503-65534 bağlantı noktalarındaki trafiği engelleyen bir NSG/UDR/Güvenlik Duvarı olduğunda veya arka uç havuzunda yapılandırılan FQDN bir IP adresine çözümlenemediğinde oluşur. Daha fazla bilgi edinmek için - https://aka.ms/UnknownBackendHealthadresini ziyaret edin.
Neden: FQDN (Tam Etki Alanı Adı) tabanlı arka uç hedefleri için Application Gateway, sonraki DNS araması için yanıt alamazsa bilinen son iyi IP adresini önbelleğe alır ve kullanır. Bu durumdaki bir ağ geçidinde PUT işlemi DNS önbelleğini tamamen temizler. Sonuç olarak, ağ geçidinin ulaşabileceği herhangi bir hedef adres olmayacaktır.
Çözüm: Verilen FDQN'nin DNS araması için yanıt sağladığından emin olmak için DNS sunucularını denetleyin ve düzeltin. Ayrıca, DNS sunucularının uygulama ağ geçidinizin Sanal Ağ üzerinden erişilebilir olup olmadığını denetlemeniz gerekir.
Diğer nedenler
Arka uç durumu Bilinmiyor olarak gösteriliyorsa portal görünümü aşağıdaki ekran görüntüsüne benzer:
Bu davranışın oluşmasının nedeni aşağıdakilerden biri ya da birkaçı olabilir:
- Application Gateway alt ağındaki NSG, 65503-65534 (v1 SKU) veya 65200-65535 (v2 SKU) bağlantı noktalarına "İnternet" üzerinden gelen erişimi engelliyor.
- Application Gateway alt ağındaki UDR varsayılan yola (0.0.0.0/0) ayarlanır ve sonraki atlama "İnternet" olarak belirtilmez.
- Varsayılan yol BGP üzerinden bir ExpressRoute/VPN bağlantısıyla bir sanal ağın kullanımına sunulur.
- Özel DNS sunucusu ortak etki alanı adlarını çözümleyemeyen bir sanal ağda yapılandırıldı.
- Application Gateway İyi Durumda Değil.
Çözüm:
NSG'nizin İnternet'ten 65503-65534 (v1 SKU) veya 65200-65535 (v2 SKU) bağlantı noktalarına erişimi engelleyip engellemediğini denetleyin:
a. Application Gateway'e Genel Bakış sekmesinde Sanal Ağ/Alt Ağ bağlantısını seçin. b. Sanal ağınızın Alt Ağlar sekmesinde Application Gateway'in dağıtıldığı alt ağı seçin. c. NSG'nin yapılandırılıp yapılandırılmadığını denetleyin. d. NSG yapılandırıldıysa, Arama sekmesinde veya Tüm kaynaklar altında bu NSG kaynağını arayın. e. Gelen Kuralları bölümünde, v1 SKU veya 65200-65535 v2 SKU için hedef bağlantı noktası aralığı 65503-65534'e izin vermek için Kaynak kümesi GatewayManager hizmet etiketi olarak ayarlanmış bir gelen kuralı ekleyin. f. Kaydet'i seçin ve arka ucu Sağlıklı olarak görüntüleyebildiğinizi doğrulayın. Alternatif olarak, bunu PowerShell/CLI aracılığıyla da yapabilirsiniz.
UDR'nizin varsayılan yolu (0.0.0.0/0) olup olmadığını ve sonraki atlamanın İnternet olarak ayarlanmadığını denetleyin:
a. Alt ağınızı belirlemek için 1a ve 1b adımlarını izleyin. b. UDR'nin yapılandırılıp yapılandırılmamış olduğunu denetleyin. Varsa, kaynağı arama çubuğunda veya Tüm kaynaklar'ın altında arayın. c. Sonraki atlamanın İnternet olarak ayarlanmadığı varsayılan yollar (0.0.0.0/0) olup olmadığını denetleyin. Ayar Sanal Gereç veya Sanal Ağ Ağ Geçidi ise, sanal gerecinizin veya şirket içi cihazınızın paketi değiştirmeden düzgün bir şekilde İnternet hedefine yönlendirediğinden emin olmanız gerekir. Yoklamalar bir sanal gereç üzerinden yönlendirilir ve değiştirilirse, arka uç kaynağı 200 durum kodu görüntüler ve Application Gateway sistem durumu Bilinmiyor olarak görüntülenebilir. Bu bir hataya işaret etmez. Trafiğin application gateway üzerinden sorunsuz bir şekilde yönlendirilmesi gerekir. d. Aksi takdirde, sonraki atlamayı İnternet olarak değiştirin, Kaydet'i seçin ve arka uç durumunu doğrulayın.
ExpressRoute/VPN bağlantısı tarafından BGP üzerinden sanal ağa tanıtılan varsayılan yol (Sınır Ağ Geçidi Protokolü):
a. BGP üzerinden sanal ağa ExpressRoute/VPN bağlantınız varsa ve varsayılan bir yol tanıtıyorsanız, paketi değiştirmeden İnternet hedefine geri yönlendirildiğinden emin olmanız gerekir. Application Gateway portalındaki Bağlantı Sorunlarını Giderme seçeneğini kullanarak doğrulayabilirsiniz. b. Hedefi 1.1.1.1 gibi İnternet'e yönlendirilebilir herhangi bir IP adresi olarak el ile seçin. Hedef bağlantı noktasını herhangi bir şey olarak ayarlayın ve bağlantıyı doğrulayın. c. Sonraki atlama sanal ağ geçidiyse ExpressRoute veya VPN üzerinden tanıtılan varsayılan bir yol olabilir.
Sanal ağda yapılandırılmış özel bir DNS sunucusu varsa, sunucuların genel etki alanlarını çözümleyebildiğini doğrulayın. Application Gateway'in OCSP (Çevrimiçi Sertifika Durum Protokolü) sunucuları gibi dış etki alanlarına ulaşması veya sertifikanın iptal durumunu denetlemesi gereken senaryolarda genel etki alanı adı çözümlemesi gerekebilir.
Application Gateway'in iyi durumda olduğunu ve çalıştığını doğrulamak için portalda Kaynak Durumu seçeneğine gidin ve durumun Sağlıklı olduğunu doğrulayın. İyi durumda değil veya Düzeyi düşürülmüş bir durum görürseniz desteğe başvurun.
İnternet ve özel trafik güvenli bir Sanal hub'da barındırılan bir Azure Güvenlik Duvarı üzerinden geçiyorsa (Azure Sanal WAN Hub kullanılarak):
a. Uygulama ağ geçidinin trafiği doğrudan İnternet'e gönderediğinden emin olmak için aşağıdaki kullanıcı tanımlı yolu yapılandırın:
Adres ön eki: 0.0.0.0/0
Sonraki atlama: Internetb. Uygulama ağ geçidinin Sanal WAN hub'ında bir Azure Güvenlik Duvarı aracılığıyla arka uç havuzuna trafik gönderediğinden emin olmak için aşağıdaki kullanıcı tanımlı yolu yapılandırın:
Adres Ön Eki: Arka uç havuzu alt ağı
Sonraki atlama: özel IP adresini Azure Güvenlik Duvarı
Not
Uygulama ağ geçidi CRL uç noktalarına erişemezse arka uç sistem durumunu "bilinmiyor" olarak işaretleyebilir. Bu sorunları önlemek için, uygulama ağ geçidi alt ağınızın ve crl3.digicert.com
öğesine erişebildiğini crl.microsoft.com
denetleyin. Bu, Ağ Güvenlik Gruplarınızı CRL uç noktalarına trafik gönderecek şekilde yapılandırarak yapılabilir.
Sonraki adımlar
Application Gateway tanılama ve günlüğe kaydetme hakkında daha fazla bilgi edinin.