Azure Key Vault özel bağlantı yapılandırma sorunlarını tanılama

Giriş

Bu makale, kullanıcıların Key Vault ve Özel Bağlantılar özelliğiyle ilgili sorunları tanılamalarına ve düzeltmelerine yardımcı olur. Bu kılavuz, özel bağlantıların ilk kez çalışmasını sağlama veya bazı değişiklikler nedeniyle özel bağlantıların çalışmayı durdurması durumunu düzeltme gibi yapılandırma yönlerine yardımcı olur.

Bu özelliği yeni kullanmaya başlayanlar için, Azure Özel Bağlantı ile Anahtar Kasası Entegrasyonu belgesine bakın.

Bu makalenin kapsamına alınan sorunlar

  • DNS sorgularınız, özel bağlantılar özelliğini kullanmayı beklediğiniz özel bir IP adresi yerine anahtar kasası için genel bir IP adresi döndürmeye devam eder.
  • Özel bağlantı kullanan belirli bir istemci tarafından yapılan tüm istekler zaman aşımlarıyla veya ağ hatalarıyla başarısız oluyor ve sorun aralıklı değil.
  • Anahtar kasasının özel bir IP adresi vardır, ancak istekler iç hata koduyla 403 yanıt almaya devam ederForbiddenByFirewall.
  • Özel bağlantılar kullanıyorsunuz, ancak anahtar kasanız yine de genel İnternet'ten gelen istekleri kabul ediyor.
  • Anahtar kasanızda iki Özel Uç Nokta vardır. Birini kullanan istekler iyi çalışıyor, ancak diğerini kullanan istekler başarısız oluyor.
  • Özel bağlantıları kullanan başka bir aboneliğiniz, anahtar kasanız veya sanal ağınız var. Yeni bir benzer dağıtım yapmak istiyorsunuz, ancak orada çalışmak için özel bağlantılar alamazsınız.

Bu makalenin kapsamına alınmaYAN sorunlar

  • Aralıklı bir bağlantı sorunu var. Belirli bir istemcide, bazı isteklerin çalıştığını ve bazılarının çalışmadığını görürsünüz. Aralıklı sorunlar nadiren özel bağlantılar yapılandırmasındaki bir sorundan kaynaklanır; bunlar ağ veya istemci aşırı yüklemesinin bir işaretidir.
  • KAG (Kendi Anahtarını Getir), CMK (Müşteri Tarafından Yönetilen Anahtarlar) veya anahtar kasasına depolanmış gizli bilgilere erişimi destekleyen bir Azure ürünü kullanıyorsunuz. Güvenlik duvarını anahtar kasası ayarlarında etkinleştirdiğinizde, bu ürün anahtar kasanıza erişemez. Ürüne özgü belgelere bakın. Güvenlik duvarının etkinleştirildiği anahtar kasaları için desteği açıkça belirttiğinden emin olun. Gerekirse ilgili ürün için desteğe başvurun.

Bu makaleyi okuma

Özel bağlantılarda yeniyseniz veya karmaşık bir dağıtımı değerlendiriyorsanız makalenin tamamını okumanız önerilir. Aksi takdirde, karşılaştığınız sorun için daha anlamlı olan bölümü seçebilirsiniz.

Haydi başlayalım!

1. İstemci bağlantısının sahibi olduğunuzu onaylayın

İstemcinizin sanal ağda çalıştığını onaylayın

Bu kılavuz, uygulama kodundan kaynaklanan anahtar kasası bağlantılarını düzeltmenize yardımcı olmak için tasarlanmıştır. Örnek olarak Azure Sanal Makineler, Azure Service Fabric kümeleri, Azure App Service, Azure Kubernetes Service (AKS) ve benzerlerinde yürütülen uygulamalar ve betikler verilebilir. Bu kılavuz, tarayıcının anahtar kasanıza doğrudan eriştiği Azure portalı web tabanlı kullanıcı arabiriminde gerçekleştirilen erişimler için de geçerlidir.

Özel bağlantıların tanımına göre, uygulama, betik veya portal, Özel Uç Nokta kaynağının dağıtıldığı Sanal Ağ'a bağlı olan makine, küme veya ortamda çalışıyor olmalıdır.

Uygulama, betik veya portal İnternet'e bağlı rastgele bir ağda çalışıyorsa, bu kılavuz UYGULANAMAZ ve büyük olasılıkla özel bağlantılar kullanılamaz. Bu sınırlama, kullanıcı tarayıcısı yerine isteğe bağlı olarak sağlanan uzak bir Azure makinesinde çalıştıklarından Azure Cloud Shell yürütülen komutlar için de geçerlidir.

Yönetilen çözüm kullanıyorsanız belirli belgelere bakın

Yönetilen Azure hizmetleri farklı yapılandırma gerektirir

Bu kılavuz, Sanal Ağınızın dışından Key Vault'a erişen Microsoft tarafından yönetilen hizmetler için GEÇERLİ DEĞİLDİR. Bu tür senaryolar şunlardır:

  • Azure Depolama durumdayken şifreleme ile yapılandırılmış
  • Azure SQL'de müşteri tarafından yönetilen anahtarların kullanımı
  • Azure Event Hubs, verilerinizi anahtarlarınızla şifreliyor.
  • Azure Data Factory'nin Key Vault'ta depolanan kimlik bilgilerine erişimi
  • Azure Pipelines, Key Vault'tan sırları alıyor

Bu senaryolar için, belirli Azure hizmetinin güvenlik duvarları etkinken Key Vault'lara erişimi destekleyip desteklemediğini doğrulamanız gerekir. Birçok hizmet, güvenlik duvarı kısıtlamalarına rağmen Key Vault güvenli bir şekilde erişmek için Trusted Services özelliğini kullanır. Ancak, çeşitli mimari nedenlerle tüm Azure hizmetleri güvenilen hizmetler listesinde görünmez.

Key Vault erişen belirli bir Azure hizmetiyle ilgili sorun yaşıyorsanız, hizmetin belgelerine bakın veya belirli yönergeler için destek ekibine başvurun.

Birkaç Azure ürünü vnet enjeksiyonu kavramını destekler. Basit bir ifadeyle, ürün, müşteri Sanal Ağı'na bir ağ cihazı ekleyerek, Sanal Ağı'na konumlandırılmış gibi istek göndermesine olanak tanır. Azure Databricks önemli bir örnektir. Bu gibi ürünler özel bağlantıları kullanarak anahtar kasasına istekte bulunabilir ve bu sorun giderme kılavuzu yardımcı olabilir.

2. Bağlantının onaylandığını ve başarılı olduğunu onaylayın

Aşağıdaki adımlar özel uç nokta bağlantısının onaylandığını ve başarılı olduğunu doğrular:

  1. Azure portalını açın ve anahtar kasası kaynağınızı açın.
  2. Sol menüde Ağ Ayarları'nı seçin.
  3. Tüm özel uç nokta bağlantılarını ve bunların ilgili durumlarını görmek için Özel uç nokta bağlantıları sekmesini seçin. Bağlantı yoksa veya Sanal Ağ bağlantınız eksikse yeni bir Özel Uç Nokta oluşturmanız gerekir. Bu konu daha sonra ele alınacaktır.
  4. Yine Özel uç nokta bağlantılarında, teşhis ettiğiniz bağlantıyı bulun ve "Bağlantı durumu"nun Onaylandı ve "Sağlama durumu"nun Başarılı olduğundan emin olun.
    • Bağlantı "Beklemede" durumdaysa, yalnızca onaylayabilirsiniz.
    • "Reddedildi", "Başarısız", "Hata", "Bağlantısı kesildi" veya başka bir durum varsa, hiç etkili olmaz, yeni bir Özel Uç Nokta kaynağı oluşturmanız gerekir.

Temiz tutmak için etkisiz bağlantıları silmek iyi bir fikirdir.

3. Anahtar kasası güvenlik duvarının düzgün yapılandırıldığını onaylayın

Önemli

Güvenlik duvarı ayarlarının değiştirilmesi, hala özel bağlantılar kullanmayan geçerli istemcilerden erişimi kaldırabilir. Güvenlik duvarı yapılandırmasındaki her değişikliğin etkilerinin farkında olduğunuzdan emin olun.

Önemli bir kavram, özel bağlantılar özelliğinin yalnızca veri sızmalarını önlemek için kapalı olan bir Sanal Ağ içindeki anahtar kasanıza erişim sağladığıdır. Mevcut erişimi kaldırmaz. Genel İnternet'ten gelen erişimleri etkili bir şekilde engellemek için anahtar kasası güvenlik duvarını açıkça etkinleştirmeniz gerekir:

  1. Azure portalını açın ve anahtar kasası kaynağınızı açın.
  2. Sol menüde Ağ Ayarları'nı seçin.
  3. En üstte Güvenlik Duvarları ve sanal ağlar sekmesinin seçili olduğundan emin olun.
  4. Tüm ağlardan genel erişime izin ver seçeneğinin seçili olduğunu fark ederseniz, dış istemcilerin anahtar kasasına neden hala erişebildiğini açıklar. Key Vault yalnızca Özel Bağlantı üzerinden erişilebilir olmasını istiyorsanız Disable Public Access öğesini seçin.

Aşağıdaki deyimler güvenlik duvarı ayarları için de geçerlidir:

  • Özel bağlantılar özelliği, anahtar kasası güvenlik duvarı ayarlarında herhangi bir "sanal ağ" belirtilmesi gerektirmez. Anahtar kasası güvenlik duvarı ayarlarında sanal ağ belirtilmemiş olsa bile anahtar kasasının özel IP adresini kullanan tüm isteklerin (sonraki bölüme bakın) çalışması gerekir.
  • Özel bağlantılar özelliği, anahtar kasası güvenlik duvarı ayarlarında herhangi bir IP adresi belirtmeyi gerektirmez. Yine güvenlik duvarı ayarlarında hiçbir IP adresi belirtilmemiş olsa bile anahtar kasasının özel IP adresini kullanan tüm isteklerin çalışması gerekir.

Özel bağlantılar kullanıyorsanız, anahtar kasası güvenlik duvarında sanal ağ veya IP adresi belirtmek için tek motivasyonlar şunlardır:

  • Bazı istemcilerin özel bağlantıları, bazılarının hizmet uç noktalarını, bazılarının genel IP adresini kullandığı karma bir sisteminiz var.
  • Özel bağlantılara geçiş yapmaktasınız. Bu durumda, tüm istemcilerin özel bağlantılar kullandığını onayladıktan sonra, anahtar kasası güvenlik duvarı ayarlarından sanal ağları ve IP adreslerini kaldırmanız gerekir.

4. Anahtar kasasının özel bir IP adresine sahip olduğundan emin olun

Özel ve genel IP adresleri arasındaki fark

Özel IP adresi her zaman aşağıdaki biçimlerden birine sahiptir:

  • 10.x.x.x: Örnekler: 10.1.2.3, 10.56.34.12.
  • 172.16.x.x - 172.32.x.x: Örnekler: 172.20.1.1, 172.31.67.89.
  • 192.168.x.x: Örnekler: 192.168.0.1, 192.168.100.7

Bazı IP adresleri ve aralıklar ayrılmıştır:

  • 224.x.x.x: Çok Noktaya Yayın
  • 255.255.255.255: Yayın
  • 127.x.x.x: Geri Döngü
  • 169.254.x.x: Yerel bağlantı
  • 168.63.129.16: Dahili DNS

Diğer tüm IP adresleri geneldir.

Portala göz atarken veya IP adresini gösteren bir komut çalıştırırken, ip adresinin özel mi, genel mi yoksa ayrılmış mı olduğunu belirleyebildiğinize emin olun. Özel bağlantıların düzgün çalışması için, anahtar kasası ana bilgisayar adının (hostname), Sanal Ağ adres alanına ait bir özel IP adresine çözümlenmesi gerekir.

Anahtar kasasının sanal ağdaki özel IP adresini bulun.

Ana bilgisayar adı çözümlemesini tanılamanız gerekir ve bu amaçla özel bağlantıların etkinleştirildiği anahtar kasanızın tam özel IP adresini bilmeniz gerekir. Bu adresi bulmak için şu adımları izleyin:

  1. Azure portalını açın ve anahtar kasası kaynağınızı açın.
  2. Sol menüde Ağ Ayarları'nı seçin.
  3. Özel uç nokta bağlantıları sekmesini seçin. Sonuçta elde edilen görünüm, tüm özel uç nokta bağlantılarını ve bunların ilgili durumlarını gösterir.
  4. Tanılamakta olduğunuz bağlantıyı bulun ve "Bağlantı durumu" öğesinin Onaylandı ve Sağlama durumunun Başarılı olduğunu onaylayın. Durum farklıysa, belgenin önceki bölümlerine geri dönün.
  5. Uygun öğeyi bulduğunuzda , Özel uç nokta sütunundaki bağlantıyı seçin. Eylem, Özel Uç Nokta kaynağını açar.
  6. Genel Bakış sayfasında Özel DNS ayarları adlı bir bölüm gösterilebilir. Anahtar kasası konak adıyla eşleşen tek bir girdi olduğunu onaylayın. Bu giriş anahtar kasası özel IP adresini gösterir.
  7. Ayrıca Ağ arabiriminde bağlantıyı seçebilir ve özel IP adresinin önceki adımda görüntülenenle aynı olduğunu onaylayabilirsiniz. Ağ arabirimi, anahtar kasasını temsil eden bir sanal cihazdır.

IP adresi, VM'ler ve diğer cihazların aynı Sanal Ağ içinde anahtar kasasına bağlanmak için kullandığı adrestir. IP adresini not alın veya daha fazla araştırma yaparken tarayıcı sekmesini açık tutun ve dokunmayın.

Uyarı

Anahtar kasanızın birden çok özel uç noktası varsa, birden çok özel IP adresi vardır. Bu yalnızca, her biri kendi Özel Uç Noktası üzerinden (Özel Uç Nokta tek bir Sanal Ağ aittir) aynı anahtar kasasına erişen birden çok Sanal Ağınız varsa kullanışlıdır. Sorunu doğru Sanal Ağ için tanıladığınızdan emin olun ve yukarıdaki yordamda doğru özel uç nokta bağlantısını seçin. Ayrıca aynı Sanal Ağ içinde aynı Key Vault için birden çok Özel Uç Nokta oluşturmayın. Bu gerekli değildir ve karışıklığa neden olur.

5. DNS çözümlemesini doğrulama

DNS çözümleme süreci, anahtar kasası ana bilgisayar adını (örnek: fabrikam.vault.azure.net) bir IP adresine (örnek: 10.1.2.3) çevirme işlemidir. Aşağıdaki alt bölümler, her senaryoda beklenen DNS çözümleme sonuçlarını gösterir.

Bu bölüm öğrenme amacıyla tasarlanmıştır. Anahtar kasasının onaylanan durumda özel uç nokta bağlantısı olmadığında, ana bilgisayar adını çözümlemek şuna benzer bir sonuç verir:

Windows:

C:\> nslookup fabrikam.vault.azure.net
Non-authoritative answer:
Address:  52.168.109.101
Aliases:  fabrikam.vault.azure.net
          data-prod-eus.vaultcore.azure.net
          data-prod-eus-region.vaultcore.azure.net

Linux:

joe@MyUbuntu:~$ host fabrikam.vault.azure.net
fabrikam.vault.azure.net is an alias for data-prod-eus.vaultcore.azure.net.
data-prod-eus.vaultcore.azure.net is an alias for data-prod-eus-region.vaultcore.azure.net.
data-prod-eus-region.vaultcore.azure.net has address 52.168.109.101

Bir adın genel bir IP adresine çözümlendiğini ve hiçbir alias olmadığını görebilirsiniz. Takma ad daha sonra açıklanacak, şu an için endişelenmeyin.

Bu sonuç, sorguyu Sanal Ağ bağlı bir makineden veya İnternet bağlantısı olan herhangi bir bilgisayardan çalıştırdığınızda aynı şekilde görünür. Sonuç, anahtar kasasının onaylanan bir durumda özel uç nokta bağlantısı olmamasından kaynaklanır, bu nedenle anahtar kasasının özel bağlantıları desteklemesine gerek yoktur.

Anahtar kasasının onaylı durumda bir veya daha fazla özel uç nokta bağlantısı olduğunda ve İnternet'e bağlı rastgele bir makineden (özel uç noktanın bulunduğu Sanal Ağ'e bağlı olmayan bir makine) konak adını çözümlediğinizde, şuna benzer bir sonuç elde edersiniz:

Windows:

C:\> nslookup fabrikam.vault.azure.net
Non-authoritative answer:
Address:  52.168.109.101
Aliases:  fabrikam.vault.azure.net
          fabrikam.privatelink.vaultcore.azure.net
          data-prod-eus.vaultcore.azure.net
          data-prod-eus-region.vaultcore.azure.net

Linux:

joe@MyUbuntu:~$ host fabrikam.vault.azure.net
fabrikam.vault.azure.net is an alias for fabrikam.privatelink.vaultcore.azure.net.
fabrikam.privatelink.vaultcore.azure.net is an alias for data-prod-eus.vaultcore.azure.net.
data-prod-eus.vaultcore.azure.net is an alias for data-prod-eus-region.vaultcore.azure.net.
data-prod-eus-region.vaultcore.azure.net has address 52.168.109.101

Önceki senaryodan önemli fark, değerine {vaultname}.privatelink.vaultcore.azure.netsahip yeni bir diğer ad olmasıdır. Anahtar kasası Veri Düzlemi, özel bağlantılardan gelen istekleri kabul etmeye hazırdır.

Sanal Ağ dışındaki (az önce kullandığınız gibi) makinelerden gerçekleştirilen isteklerin özel bağlantılar kullandığı anlamına gelmez; özel bağlantılar kullanılmaz. Bunu, ana bilgisayar adının hala bir genel IP adresine çözümlendiğini görebilirsiniz. Yalnızca Sanal Ağ bağlantısı olan makineler özel bağlantıları kullanabilir.

Eğer privatelink diğer adını görmüyorsanız, bu, anahtar kasasında Approved durumunda sıfır özel uç nokta bağlantısı olduğu anlamına gelir. Yeniden denemeden önce bu bölüme geri dönün.

Anahtar kasasının onaylanmış durumda bir veya daha fazla özel uç nokta bağlantısı olduğunda ve Özel Uç Nokta'nın oluşturulduğu Sanal Ağ bağlı bir makineden konak adını çözümlediğinizde, beklenen yanıt budur:

Windows:

C:\> nslookup fabrikam.vault.azure.net
Non-authoritative answer:
Address:  10.1.2.3
Aliases:  fabrikam.vault.azure.net
          fabrikam.privatelink.vaultcore.azure.net

Linux:

joe@MyUbuntu:~$ host fabrikam.vault.azure.net
fabrikam.vault.azure.net is an alias for fabrikam.privatelink.vaultcore.azure.net.
fabrikam.privatelink.vaultcore.azure.net has address 10.1.2.3

İki önemli fark vardır. İlk olarak, ad bir özel IP adresine çözümlenecektir. Bu, bu makalenin ilgili bölümünde bulduğumuz IP adresi olmalıdır. İkincisi, privatelink olanın ardından başka bir diğer ad yoktur. Bunun nedeni, Sanal Ağ DNS sunucularının diğer ad zincirini engelleyip özel IP adresini doğrudan ada göre döndürmesidir. Bu girdi aslında bir Özel DNS Bölgesindeki A kaydıdır.

Uyarı

Bu sonuç yalnızca Özel Uç Noktanın oluşturulduğu Sanal Ağ bağlı bir Sanal Makinede gerçekleşir. Özel Uç Nokta içeren Sanal Ağ'te dağıtılmış bir VM'niz yoksa, bir VM dağıtın ve uzaktan bağlanın, ardından nslookup komutunu (Windows) veya host komutunu (Linux) çalıştırın.

Bu komutları Özel Uç Noktanın oluşturulduğu Sanal Ağa bağlı bir Sanal Makinede çalıştırırsanız ve bunlar anahtar kasası özel IP adresini göstermiyorsa, sonraki bölüm sorunun çözülmesine yardımcı olabilir.

6. Özel DNS Bölgesini Doğrulama

DNS çözümlemesi önceki bölümde açıklandığı gibi çalışmıyorsa, Özel DNS Bölgenizle ilgili bir sorun olabilir ve bu bölüm yardımcı olabilir. DNS çözümlemesi, anahtar kasasının doğru özel IP adresini gösteriyorsa, Özel DNS Bölgeniz büyük olasılıkla doğrudur. Bu bölümün tamamını atlayabilirsiniz.

Gerekli Özel DNS Bölgesi kaynağının mevcut olduğunu onaylayın

Azure aboneliğinizin tam adıyla bir Özel DNS Zone kaynağı olmalıdır:

privatelink.vaultcore.azure.net

Portaldaki abonelik sayfasına gidip soldaki menüden "Kaynaklar" seçeneğini belirleyerek bu kaynağın durumunu de kontrol edebilirsiniz. Kaynak adı privatelink.vaultcore.azure.net ve kaynak türü Özel DNS zone olmalıdır.

Normalde bu kaynak, ortak bir yordam kullanılarak özel uç nokta oluşturduğunuzda otomatik olarak oluşturulur. Ancak bu kaynağın otomatik olarak oluşturulmadığı ve el ile yapmanız gereken durumlar vardır. Bu kaynak da yanlışlıkla silinmiş olabilir.

Bu kaynağınız yoksa aboneliğinizde yeni bir Özel DNS Bölgesi kaynağı oluşturun. Adın boşluk veya fazladan nokta olmadan tam olarak privatelink.vaultcore.azure.netolması gerektiğini unutmayın. Yanlış ad belirtirseniz, bu makalede açıklanan ad çözümlemesi başarısız olur. Bu kaynağı oluşturma hakkında daha fazla bilgi için bkz. Azure portalını kullanarak Azure özel DNS bölgesi oluşturma. Bu sayfayı izlerseniz, Sanal Ağ oluşturmayı atlayabilirsiniz çünkü bu noktada zaten bir tane olması gerekir. Ayrıca Sanal Makineler ile doğrulama yordamlarını atlayabilirsiniz.

Özel DNS Bölgesinin Sanal Ağ bağlı olduğunu onaylayın

Özel DNS Bölgesi'ne sahip olmak yeterli değildir. Ayrıca Özel Uç Nokta'nın bulunduğu Sanal Ağ de bağlanmalıdır. Doğru sanal ağa bağlı değilse, her sanal ağdan yapılacak herhangi bir DNS çözümlemesi Özel DNS Bölgesini yoksayar.

Özel DNS Bölgesi kaynağını açın ve soldaki menüden Sanal ağ bağlantıları seçeneğini belirleyin. Her biri aboneliğinizdeki bir Sanal Ağ adına sahip bağlantıların listesini görürsünüz. Özel Uç Nokta kaynağını içeren Sanal Ağ burada listelenmelidir. Eğer orada değilse, ekleyin. Ayrıntılı adımlar için bkz . Sanal ağı bağlama. "Otomatik kaydı etkinleştir" seçeneğini işaretsiz bırakabilirsiniz; bu özellik özel bağlantılara ilişkin değildir.

Özel DNS Bölgesi Sanal Ağ bağlandıktan sonra, bu ağ içinden gelen tüm DNS istekleri ad çözümlemesi için bu özel bölgeyi otomatik olarak denetler. Bu bağlantı, özel uç noktayla aynı Sanal Ağda bulunan Sanal Makineler için anahtar kasası ana bilgisayar adını genel adres yerine özel IP adresine doğru şekilde çözümlemek amacıyla gereklidir.

Uyarı

Bağlantıyı yeni kaydettiyseniz, Portal işlemin tamam olduğunu söyledikten sonra bile etkili olması biraz zaman alabilir. DNS çözümlemesini test etmek için kullandığınız VM'yi de yeniden başlatmanız gerekebilir.

Özel DNS Bölgesi'nin doğru A kaydını içerdiğini onaylayın

Portalı kullanarak privatelink.vaultcore.azure.net adlı Özel DNS Bölgesini açın. Genel Bakış sayfasında tüm kayıtlar gösterilir. Varsayılan olarak, adı @ ve türü SOAolan bir kayıt vardır ve bu da Yetki Başlangıcı anlamına gelir. Ona dokunma.

Anahtar kasası ad çözümlemesinin çalışması için sonek veya nokta içermeyen basit kasa adına sahip bir A kayıt olması gerekir. Örneğin, ana bilgisayar adı ise fabrikam.vault.azure.net, adında sonek veya nokta olmayan bir A kayıt fabrikamolmalıdır.

Ayrıca, kaydın A değeri (IP adresi) anahtar kasası özel IP adresi olmalıdır. Kaydı bulursanız A ancak yanlış IP adresi içeriyorsa, yanlış IP adresini kaldırmanız ve yeni bir ip adresi eklemeniz gerekir. Kaydın tamamını A kaldırmanız ve yeni bir kayıt eklemeniz önerilir.

Uyarı

Bir A kaydını kaldırdığınızda veya değiştirdiğinizde, TTL (Yaşam Süresi) değerinin süresi henüz dolmamış olabileceğinden, makine hala eski IP adresine yönlenebilir. Her zaman 10 saniyeden küçük olmayan ve 600 saniyeden (10 dakika) büyük olmayan bir TTL değeri belirtmeniz önerilir. Çok büyük bir değer belirtirseniz, istemcilerinizin kesintilerden kurtarılması çok uzun sürebilir.

Birden fazla Sanal Ağ için DNS çözümlemesi

Birden çok Sanal Ağ varsa ve her birinin aynı anahtar kasasına başvuran kendi Özel Uç Nokta kaynağı varsa, anahtar kasası ana bilgisayar adının, bağlı olduğu ağa göre farklı bir özel IP adresine çözümlenmesi gerekir. Bu, her biri farklı bir Sanal Ağ bağlı ve A kaydında farklı bir IP adresi kullanan birden çok Özel DNS Bölgesi de gerektiği anlamına gelir.

Daha gelişmiş senaryolarda Sanal Ağ eşleme etkinleştirilebilir. Bu durumda, özel uç nokta kaynağına yalnızca bir Sanal Ağ gerekir, ancak her ikisinin de Özel DNS Bölgesi kaynağına bağlanması gerekebilir. Bu senaryo, bu belgenin doğrudan kapsamına alınmamıştır.

DNS çözümlemesi üzerinde denetiminiz olduğunu anlama

Önceki bölümde açıklandığı gibi, özel bağlantıları olan bir anahtar kasasının genel{vaultname}.privatelink.vaultcore.azure.netdiğer adı vardır. Sanal Ağ tarafından kullanılan DNS sunucusu, genel kaydı kullanır, ancak private kaydı için tüm diğer adları kontrol eder ve eğer bir tanesi bulunursa, genel kayıtta tanımlanan diğer adları takip etmeyi durdurur.

Bu mantık, Sanal Ağ bir Özel DNS Bölgesi olan 'e bağlıysa ve anahtar kasasının genel DNS kaydında diğer adı varsa (anahtar kasası ana bilgisayar adı soneki Özel DNS Bölgesi adıyla tam olarak eşleşir), o zaman DNS sorgusu, Özel DNS Bölgesi içinde kaydı için adını arar. A Kayıt bulunursa, IP adresi DNS sorgusunda döndürülür ve genel DNS kaydında başka arama yapılmaz.

Gördüğünüz gibi ad çözümlemesi sizin denetiminizdedir. Bu tasarımın mantığı şudur:

  • Özel DNS sunucuları ve şirket içi ağlarla tümleştirme içeren karmaşık bir senaryonuz olabilir. Bu durumda, adların IP adreslerine nasıl çevrildiğini denetlemeniz gerekir.
  • Özel bağlantılar olmadan bir anahtar kasasına erişmeniz gerekebilir. Bu durumda, özel bağlantılara sahip olmayan anahtar kasalar, ad kaydında privatelink diğer adını içermediğinden, Sanal Ağ üzerinde ana bilgisayar adının çözülmesi genel IP adresini döndürmelidir.

Anahtar kasasının /healthstatus uç noktasını sorgulama

Anahtar kasanız, tanılama için kullanılabilecek /healthstatus uç noktasını sağlar. Yanıt üst bilgileri, anahtar kasası hizmeti tarafından görüldüğü üzere kaynak IP adresini içerir. Bu uç noktayı aşağıdaki komutla çağırabilirsiniz (anahtar kasası konak adınızı kullanmayı unutmayın):

Windows (PowerShell):

PS C:\> $(Invoke-WebRequest -UseBasicParsing -Uri https://fabrikam.vault.azure.net/healthstatus).Headers
Key                           Value
---                           -----
Pragma                        no-cache
x-ms-request-id               3729ddde-eb6d-4060-af2b-aac08661d2ec
x-ms-keyvault-service-version 1.2.27.0
x-ms-keyvault-network-info    addr=10.4.5.6;act_addr_fam=InterNetworkV6;
Strict-Transport-Security     max-age=31536000;includeSubDomains
Content-Length                4
Cache-Control                 no-cache
Content-Type                  application/json; charset=utf-8

Linux veya curl içeren son bir Windows 10 sürümü:

joe@MyUbuntu:~$ curl -i https://fabrikam.vault.azure.net/healthstatus
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Content-Type: application/json; charset=utf-8
x-ms-request-id: 6c090c46-0a1c-48ab-b740-3442ce17e75e
x-ms-keyvault-service-version: 1.2.27.0
x-ms-keyvault-network-info: addr=10.4.5.6;act_addr_fam=InterNetworkV6;
Strict-Transport-Security: max-age=31536000;includeSubDomains
Content-Length: 4

Buna benzer bir çıkış almıyorsanız veya ağ hatası alıyorsanız, anahtar kasanıza belirttiğiniz ana bilgisayar adıyla (fabrikam.vault.azure.net örnekte) erişilemiyor demektir. Konak adı doğru IP adresine çözümlenmiyor veya aktarım katmanında bağlantı sorununuz var. Bunun nedeni yönlendirme sorunları, paket bırakmaları ve diğer nedenler olabilir. Daha fazla araştırma yapmak zorundasın.

Yanıt üst bilgisini x-ms-keyvault-network-infoiçermelidir:

x-ms-keyvault-network-info: addr=10.4.5.6;act_addr_fam=InterNetworkV6;

Üst addr bilgideki x-ms-keyvault-network-info alan, isteğin kaynağının IP adresini gösterir. Bu IP adresi aşağıdakilerden biri olabilir:

  • İsteği yapan makinenin özel IP adresi. Bu, isteğin özel bağlantılar veya hizmet uç noktaları kullandığını gösterir. Özel bağlantılar için beklenen sonuç budur.
  • başka bir özel IP adresi, isteği yapan makineden değil . Bu, bazı özel yönlendirmelerin etkili olduğunu gösterir. Yine de isteğin özel bağlantılar veya hizmet uç noktaları kullandığını gösterir.
  • Bazı genel IP adresleri. Bu, isteğin bir ağ geçidi (NAT) cihazı üzerinden İnternet'e yönlendirildiğini gösterir. Bu, isteğin özel bağlantılar kullanmadığını ve bazı sorunun düzeltilmesi gerektiğini gösterir. Bunun yaygın nedenleri şunlardır: 1) özel uç nokta onaylı ve başarılı durumda değil; ve 2) ana bilgisayar adı anahtar kasasının özel IP adresine çözümlenmiyor. Bu makale, her iki durum için de sorun giderme eylemlerini içerir.

Uyarı

İsteğin /healthstatus çalışması, ancak x-ms-keyvault-network-info üst bilgi eksikse, uç nokta büyük olasılıkla anahtar kasası tarafından sunulmaz. Yukarıdaki komutlar HTTPS sertifikasını da doğruladığından, eksik üst bilgi kurcalama işareti olabilir.

Anahtar kasası IP adresini doğrudan sorgulama

Önemli

HTTPS sertifika doğrulaması olmadan anahtar kasasına erişmek tehlikelidir ve yalnızca öğrenme amacıyla kullanılabilir. Üretim kodu, bu istemci tarafı doğrulaması olmadan anahtar kasasına ASLA erişmemelidir. Yalnızca sorunları tanılasanız bile, anahtar kasasına yönelik isteklerinizde HTTPS sertifika doğrulamasını sık sık devre dışı bırakırsanız ortaya çıkarılmayan kurcalama girişimlerine maruz kalabilirsiniz.

PowerShell'in son sürümünü yüklediyseniz, HTTPS sertifika denetimlerini atlamak için kullanabilirsiniz-SkipCertificateCheck, ardından anahtar kasası IP adresini doğrudan hedefleyebilirsiniz:

PS C:\> $(Invoke-WebRequest -SkipCertificateCheck -Uri https://10.1.2.3/healthstatus).Headers

kullanıyorsanız curl, bağımsız değişkeninde -k de aynısını yapabilirsiniz:

joe@MyUbuntu:~$ curl -i -k https://10.1.2.3/healthstatus

Yanıtlar, önceki bölümle aynı olmalıdır; bu, aynı değere sahip x-ms-keyvault-network-info başlığı içermesi gerektiği anlamına gelir. Anahtar kasası ana bilgisayar adını veya IP adresini kullanıp kullanmadığınız, /healthstatus uç noktayı ilgilendirmez.

Anahtar kasası ana bilgisayar adını kullanarak istek yapıldığında bir değer, IP adresini kullanarak istek yapıldığında başka bir değer döndüğünü görüyorsanız x-ms-keyvault-network-info, bu durumda her istek farklı bir uç noktayı hedefliyor demektir. Hangi durumun yanlış olduğuna ve düzeltilmesi gerektiğine karar vermek için önceki bölümde yer alan alanın addr açıklamasına x-ms-keyvault-network-info bakın.

8. Etkiye neden olan diğer değişiklikler ve özelleştirmeler

Aşağıdaki öğeler kapsamlı olmayan araştırma eylemleridir. Ek sorunları nerede arayabileceğinizi size söyleyeceklerdir, ancak bu senaryolardaki sorunları çözmek için gelişmiş ağ bilgisine sahip olmanız gerekir.

Sanal Ağ'de özel DNS sunucularını tanılama

Portalda Sanal Ağ kaynağını açın. Sol menüde DNS sunucularını açın. "Özel" kullanıyorsanız, DNS çözümlemesi bu belgede açıklandığı gibi olmayabilir. DNS sunucularınızın key vault ana bilgisayar adını nasıl çözdüğünü tanılamanız gerekir.

Varsayılan Azure sağlanan DNS sunucularını kullanıyorsanız, bu belgenin tamamı geçerlidir.

Sanal Makinede kendi ayarlarını geçersiz kılan konakları veya özel DNS sunucularını tanılama

Birçok işletim sistemi, genellikle dosyayı değiştirerek ana bilgisayar adı başına açık bir sabit IP adresi ayarlamaya hosts izin verir. Ayrıca DNS sunucularının geçersiz kılınmasına da izin verebilirler. Bu senaryolardan birini kullanıyorsanız sisteme özgü tanılama seçenekleriyle devam edin.

Promiscuous proxy'ler (Fiddler vb.)

Açıkça belirtilmedikleri dışında, bu makaledeki tanılama seçenekleri yalnızca ortamda rastgele proxy yoksa çalışır. Bu proxy'ler genellikle yalnızca tanılanan makineye yüklenir (en yaygın örnek Fiddler'dır), ancak gelişmiş yöneticiler kök Sertifika Yetkilileri'nin (CA' lar) üzerine yazabilir ve ağda birden çok makineye hizmet veren ağ geçidi cihazlarına rastgele bir ara sunucu yükleyebilir. Bu proxy'ler hem güvenliği hem de güvenilirliği önemli ölçüde etkileyebilir. Microsoft bu tür ürünleri kullanan yapılandırmaları desteklemez.

Bağlantıyı etkileyebilecek diğer şeyler

Bu, gelişmiş veya karmaşık senaryolarda bulunabilecek öğelerin kapsamlı olmayan bir listesidir:

  • Güvenlik duvarı ayarları, ya Sanal Ağa bağlı Azure Güvenlik Duvarı ya da Sanal Ağ veya makinede dağıtılan özel bir güvenlik duvarı çözümü.
  • Kullanılan DNS sunucularını ve trafiğin nasıl yönlendirileceğini etkileyebilecek ağ eşlemesi.
  • DNS sorgularından gelen trafik de dahil olmak üzere trafiğin nasıl yönlendirileceğini etkileyebilecek özel ağ geçidi (NAT) çözümleri.

Sonraki Adımlar