Öğretici: Azure portalı kullanarak Web Uygulaması Güvenlik Duvarı ile bir uygulama ağ geçidi oluşturma

Bu öğreticide, Web Uygulaması Güvenlik Duvarı (WAF) ile Application Gateway oluşturmak için Azure portalını nasıl kullanacağınız gösterilmektedir. WAF, uygulamanızı korumak için OWASP kurallarını kullanır. Bu kurallar SQL ekleme, siteler arası betik saldırıları ve oturum ele geçirme gibi saldırılara karşı korumayı içerir. Uygulama ağ geçidini oluşturduktan sonra doğru çalıştığından emin olmak için test edin. Azure Uygulaması lication Gateway ile bağlantı noktalarına dinleyiciler atayarak, kurallar oluşturarak ve arka uç havuzuna kaynak ekleyerek uygulamanızın web trafiğini belirli kaynaklara yönlendirirsiniz. Kolaylık olması açısından, bu öğreticide genel ön uç IP'siyle basit bir kurulum, bu uygulama ağ geçidinde tek bir siteyi barındırmak için temel bir dinleyici, arka uç havuzu için kullanılan iki Linux sanal makinesi ve temel bir istek yönlendirme kuralı kullanılır.

Bu öğreticide aşağıdakilerin nasıl yapılacağını öğreneceksiniz:

  • WAF etkinken bir uygulama ağ geçidi oluşturma
  • Arka uç sunucuları olarak kullanılan sanal makineleri oluşturma
  • Bir depolama hesabı oluşturma ve tanılamaları yapılandırma
  • Uygulama ağ geçidini test etme

Web uygulaması güvenlik duvarı örneğinin diyagramı.

Not

Azure ile etkileşim kurmak için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz . Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Önkoşullar

Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.

Azure'da oturum açma

Azure Portal’ında oturum açın.

Uygulama ağ geçidi oluşturma

  1. Azure portalının sol menüsünde Kaynak oluştur'u seçin. Kaynak oluştur penceresi görüntülenir.

  2. Ağ'ı ve ardından Popüler Azure hizmetleri listesinde Application Gateway'i seçin.

Temel Bilgiler sekmesi

  1. Temel Bilgiler sekmesinde, aşağıdaki uygulama ağ geçidi ayarları için şu değerleri girin:

    • Kaynak grubu: Kaynak grubu için myResourceGroupAG öğesini seçin. Yoksa, oluşturmak için Yeni oluştur'u seçin.

    • Uygulama ağ geçidi adı: Uygulama ağ geçidinin adı olarak myAppGateway yazın.

    • Katman: WAF V2'yi seçin.

    • WAF İlkesi: Yeni oluştur'u seçin, yeni ilke için bir ad yazın ve tamam'ı seçin. Bu, yönetilen Çekirdek Kural Kümesi (CRS) ile temel bir WAF ilkesi oluşturur.

      Yeni uygulama ağ geçidi oluştur: Temel bilgiler sekmesinin ekran görüntüsü.

  2. Azure'ın oluşturduğunuz kaynaklar arasında iletişim kurabilmesi için bir sanal ağ gerekir. Yeni bir sanal ağ oluşturabilir veya mevcut bir sanal ağı kullanabilirsiniz. Bu örnekte, uygulama ağ geçidini oluşturduğunuz sırada yeni bir sanal ağ oluşturursunuz. Application Gateway örnekleri ayrı alt ağlarda oluşturulur. Bu örnekte iki alt ağ oluşturursunuz: uygulama ağ geçidi için bir alt ağ ve ardından arka uç sunucuları için başka bir alt ağ ekleyin.

    Sanal ağı yapılandır'ın altında Yeni oluştur'u seçerek yeni bir sanal ağ oluşturun. Açılan Sanal ağ oluştur penceresinde, sanal ağı ve alt ağı oluşturmak için aşağıdaki değerleri girin:

    • Ad: Sanal ağın adı olarak myVNet girin.

    • Adres alanı: 10.0.0.0/16 adres aralığını kabul edin.

    • Alt ağ adı (Application Gateway alt ağı): Alt ağlar alanında Varsayılan adlı bir alt ağ gösterilir. Bu alt ağın adını myAGSubnet olarak değiştirin ve varsayılan IPv4 Adresi aralığını 10.0.0.0/24 olarak bırakın.
      Uygulama ağ geçidi alt ağı yalnızca uygulama ağ geçitlerini içerebilir. Başka hiçbir kaynağa izin verilmez.

      Tamam'ı seçerek Sanal ağ oluştur penceresini kapatın ve sanal ağ ayarlarını kaydedin.

      Yeni uygulama ağ geçidi oluştur: Sanal ağ oluştur'un ekran görüntüsü.

  3. Temel Bilgiler sekmesinde, diğer ayarlar için varsayılan değerleri kabul edin ve ardından İleri: Ön uçlar'ı seçin.

Ön uçlar sekmesi

  1. Ön Uçlar sekmesinde Ön uç IP adresi türünün Genel olarak ayarlandığını doğrulayın.
    Ön uç IP'sini kullanım örneğiniz gereği Genel veya Her İkisi olacak şekilde yapılandırabilirsiniz. Bu örnekte Genel Ön Uç IP'sini seçersiniz.

    Not

    Application Gateway v2 SKU'su için Genel ve Her İkisi Ön Uç IP adresi türleri bugün desteklenmektedir. Yalnızca özel ön uç IP yapılandırması şu anda desteklenmiyor.

  2. Genel IP adresi için Yeni ekle'yi seçin ve genel IP adresi adı için myAGPublicIPAddress girin ve tamam'ı seçin.

    Yeni uygulama ağ geçidi oluştur: Ön uçların ekran görüntüsü.

  3. İleri: Arka uçlar'ı seçin.

Arka uçlar sekmesi

Arka uç havuzu, istekleri isteğe hizmet eden arka uç sunucularına yönlendirmek için kullanılır. Arka uç havuzları NIC'lerden, sanal makine ölçek kümelerinden, genel IP'lerden, iç IP'lerden, tam etki alanı adlarından (FQDN) ve Azure Uygulaması Hizmeti gibi çok kiracılı arka uçlardan oluşabilir. Bu örnekte, uygulama ağ geçidinizle boş bir arka uç havuzu oluşturacak ve ardından arka uç hedeflerini arka uç havuzuna ekleyeceksiniz.

  1. Arka uçlar sekmesinde Arka uç havuzu ekle'yi seçin.

  2. Açılan Arka uç havuzu ekle penceresinde, boş bir arka uç havuzu oluşturmak için aşağıdaki değerleri girin:

    • Ad: Arka uç havuzunun adı için myBackendPool girin.
    • Hedefleri olmayan arka uç havuzu ekle: Hedefsiz bir arka uç havuzu oluşturmak için Evet'i seçin. Uygulama ağ geçidini oluşturduktan sonra arka uç hedefleri ekleyeceksiniz.
  3. Arka uç havuzu ekle penceresinde Ekle'yi seçerek arka uç havuzu yapılandırmasını kaydedin ve Arka uçlar sekmesine dönün.

    Yeni uygulama ağ geçidi oluştur: Arka uçların ekran görüntüsü.

  4. Arka Uçlar sekmesinde İleri: Yapılandırma'yı seçin.

Yapılandırma sekmesi

Yapılandırma sekmesinde, oluşturduğunuz ön uç ve arka uç havuzunu bir yönlendirme kuralı kullanarak bağlarsınız.

  1. Yönlendirme kuralları sütununda Yönlendirme kuralı ekle'yi seçin.

  2. Açılan Yönlendirme kuralı ekle penceresinde, Kural adı olarak myRoutingRule girin.

  3. Öncelik için bir öncelik numarası yazın.

  4. Yönlendirme kuralı için dinleyici gerekir. Yönlendirme kuralı ekle penceresinin Dinleyici sekmesinde dinleyici için aşağıdaki değerleri girin:

    • Dinleyici adı: Dinleyici adı olarak myListener yazın.

    • Ön uç IP Protokolü: Ön uç için oluşturduğunuz genel IP'yi seçmek için Genel IPv4'i seçin.

      Dinleyici sekmesindeki diğer ayarlar için varsayılan değerleri kabul edin, ardından yönlendirme kuralının geri kalanını yapılandırmak için Arka uç hedefleri sekmesini seçin.

    Yeni uygulama ağ geçidi oluştur: dinleyiciyi gösteren ekran görüntüsü.

  5. Arka uç hedefleri sekmesinde, Arka uç hedefi için myBackendPool'u seçin.

  6. Arka uç ayarları için Yeni ekle'yi seçerek yeni bir Arka uç ayarı oluşturun. Bu ayar, yönlendirme kuralının davranışını belirler. Açılan Arka Uç ayarı ekle penceresinde, Arka uç ayarları adı için myBackendSetting girin. Penceredeki diğer ayarlar için varsayılan değerleri kabul edin ve ardından Ekle'yi seçerek Yönlendirme kuralı ekle penceresine dönün.

    Yeni uygulama ağ geçidi oluştur, Arka uç ayarını gösteren ekran görüntüsü.

  7. Yönlendirme kuralı ekle penceresinde Ekle'yi seçerek yönlendirme kuralını kaydedin ve Yapılandırma sekmesine dönün.

    Yeni uygulama ağ geçidi oluştur: yönlendirme kuralını gösteren ekran görüntüsü.

  8. İleri: Etiketler'i ve ardından İleri: Gözden Geçir + oluştur'u seçin.

Gözden geçirme ve oluşturma sekmesi

Gözden Geçir ve oluştur sekmesinde ayarları gözden geçirin ve ardından Oluştur'u seçerek sanal ağı, genel IP adresini ve uygulama ağ geçidini oluşturun. Azure'ın uygulama ağ geçidini oluşturması birkaç dakika sürebilir.

Sonraki bölüme geçmeden önce dağıtımın başarıyla tamamlanmasını bekleyin.

Arka uç sunucusu alt akını ekleme

  1. myVNet sanal ağını açın.
  2. Ayarlar'ın altında Alt ağlar’ı seçin.
  3. + Alt Ağ'ı seçin.
  4. Ad alanına myBackendSubnet yazın.
  5. Başlangıç adresi için 10.0.1.0 yazın.
  6. Alt ağı eklemek için Ekle'yi seçin.

Arka uç hedefleri ekleme

Bu örnekte, hedef arka uç olarak sanal makineleri kullanırsınız. Mevcut sanal makineleri kullanabilir veya yenilerini oluşturabilirsiniz. Azure'ın uygulama ağ geçidi için arka uç sunucusu olarak kullandığı iki sanal makine oluşturursunuz.

Bunu yapmak için şunları yapacaksınız:

  1. Arka uç sunucusu olarak kullanılacak myVM ve myVM2 olmak üzere iki yeni Linux VM oluşturun.
  2. Uygulama ağ geçidinin başarıyla oluşturulduğunu doğrulamak için sanal makinelere NGINX yükleyin.
  3. Arka uç sunucularını arka uç havuzuna ekleyin.

Sanal makine oluşturun

  1. Azure portalında Kaynak oluştur'u seçin. Kaynak oluştur penceresi görüntülenir.

  2. Sanal makine'nin altında Oluştur'u seçin.

  3. Aşağıdaki sanal makine ayarları için Temel Bilgiler sekmesine bu değerleri girin:

    • Kaynak grubu: Kaynak grubu adı olarak myResourceGroupAG öğesini seçin.
    • Sanal makine adı: Sanal makinenin adı için myVM girin.
    • Görüntü: Ubuntu Server 20.04 LTS - 2. Nesil.
    • Kimlik doğrulama türü: Parola
    • Kullanıcı adı: Yönetici kullanıcı adı için bir ad girin.
    • Parola: Yönetici parolası için bir parola girin.
    • Genel gelen bağlantı noktaları: Yok'a tıklayın.
  4. Diğer varsayılanları kabul edin ve ardından İleri: Diskler'i seçin.

  5. Diskler sekmesi varsayılanlarını kabul edin ve ardından İleri: Ağ'ı seçin.

  6. sekmesinde, Sanal ağ için myVNet'in seçildiğini ve Alt Ağın myBackendSubnet olarak ayarlandığını doğrulayın.

  7. Genel IP için Yok'a tıklayın.

  8. Diğer varsayılanları kabul edin ve ardından İleri: Yönetim'i seçin.

  9. İleri: İzleme'yi seçin, Önyükleme tanılamasını Devre Dışı Bırak olarak ayarlayın. Diğer varsayılanları kabul edin ve gözden geçir + oluştur'u seçin.

  10. Gözden geçir ve oluştur sekmesinde ayarları gözden geçirin, doğrulama hatalarını düzeltin ve oluştur'u seçin.

  11. Devam etmeden önce sanal makine oluşturma işleminin tamamlanmasını bekleyin.

Test için NGINX yükleme

Bu örnekte, NGINX'i yalnızca Azure'ın uygulama ağ geçidini başarıyla oluşturduğunu doğrulamak için sanal makinelere yüklersiniz.

  1. Bash Cloud Shell'i açın. Bunu yapmak için Azure portalının üst gezinti çubuğundan Cloud Shell simgesini seçin ve ardından açılan listeden Bash'i seçin.

    Bash Cloud Shell'i gösteren ekran görüntüsü.

  2. Bash oturumunuzun aboneliğiniz için ayarlandığından emin olun:

    az account set --subscription "<your subscription name>"

  3. NGINX'i sanal makineye yüklemek için aşağıdaki komutu çalıştırın:

     az vm extension set \
     --publisher Microsoft.Azure.Extensions \
     --version 2.0 \
     --name CustomScript \
     --resource-group myResourceGroupAG \
     --vm-name myVM \
     --settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"], "commandToExecute": "./install_nginx.sh" }'
    
  4. daha önce tamamladığınız bu adımları kullanarak ikinci bir sanal makine oluşturun ve NGINX'i yükleyin. Sanal makine adı ve cmdlet'inin ayarı için --vm-name myVM2 kullanın.

Arka uç havuzuna arka uç sunucuları ekleme

  1. Tüm kaynaklar'ı ve ardından myAppGateway öğesini seçin.

  2. Soldaki menüden Arka uç havuzları'nı seçin.

  3. myBackendPool öğesini seçin.

  4. Hedef türü altında, açılan listeden Sanal makine'yi seçin.

  5. Hedef'in altında, açılan listeden myVM için ilişkili ağ arabirimini seçin.

  6. myVM2 için yineleyin.

    Arka uç sunucuları ekleme

  7. Kaydet'i seçin.

  8. Sonraki adıma geçmeden önce dağıtımın tamamlanmasını bekleyin.

Uygulama ağ geçidini test etme

Uygulama ağ geçidini oluşturmak için NGINX gerekli olmasa da, Azure'ın uygulama ağ geçidini başarıyla oluşturup oluşturmadığını doğrulamak için yüklemişsinizdir. Uygulama ağ geçidini test etmek için web hizmetini kullanın:

  1. Uygulama ağ geçidinin genel IP adresini Genel Bakış sayfasında bulun. Genel Bakış sayfasındaki Application Gateway genel IP adresinin ekran görüntüsü.

    İsterseniz Tüm kaynaklar'ı seçebilir, arama kutusuna myAGPublicIPAddress girebilir ve ardından arama sonuçlarından seçebilirsiniz. Azure genel IP adresini Genel Bakış sayfasında görüntüler.

  2. Genel IP adresini kopyalayıp tarayıcınızın adres çubuğuna yapıştırın.

  3. Yanıtı denetleyin. Geçerli bir yanıt, uygulama ağ geçidinin başarıyla oluşturulduğunu ve arka uçla başarıyla bağlanabildiğini doğrular.

    Uygulama ağ geçidini test etme işleminin ekran görüntüsü.

Kaynakları temizleme

Uygulama ağ geçidiyle oluşturduğunuz kaynaklara artık ihtiyacınız kalmadığında kaynak grubunu kaldırın. Kaynak grubunu kaldırarak uygulama ağ geçidini ve ilgili tüm kaynaklarını da kaldırmış olursunuz.

Kaynak grubunu kaldırmak için:

  1. Azure portalının sol menüsünde Kaynak grupları'nı seçin.
  2. Kaynak grupları sayfasında, listede myResourceGroupAG araması yapın ve seçin.
  3. Kaynak grubu sayfasında Kaynak grubunu sil'i seçin.
  4. KAYNAK GRUBU ADI YAZıN için myResourceGroupAG yazın ve Sil'i seçin.

Sonraki adımlar