Hızlı Başlangıç: Azure CLI kullanarak Azure Front Door oluşturma

Şunlar için geçerlidir: ✔️ Front Door Standard ✔️ Front Door Premium

Bu hızlı başlangıçta, Azure CLI kullanarak Azure Front Door oluşturmayı öğreneceksiniz. Çıkış noktası olarak iki Azure Web Apps içeren bir profil ayarlar ve bir WAF güvenlik ilkesi eklersiniz. Son olarak, Azure Front Door uç nokta ana bilgisayar adını kullanarak Web Uygulamalarınıza bağlantıyı doğrularsınız.

Azure CLI kullanan Azure Front Door dağıtım ortamı diyagramı.

Not

Web iş yükleri için, yeni ortaya çıkan DDoS saldırılarına karşı koruma sağlamak için Azure DDoS Koruması ve bir web uygulaması güvenlik duvarı kullanmanızı kesinlikle öneririz. Bir diğer seçenek de Azure Front Door'un yanı sıra bir web uygulaması güvenlik duvarı kullanmaktır. Azure Front Door, ağ düzeyinde DDoS saldırılarına karşı platform düzeyinde koruma sunar. Daha fazla bilgi için bkz . Azure hizmetleri için güvenlik temeli.

Azure hesabınız yoksa, başlamadan önce ücretsiz hesap oluşturun.

Önkoşullar

Kaynak grubu oluşturma

Azure'da ilgili kaynaklar bir kaynak grubuna ayrılır. Mevcut bir kaynak grubunu kullanabilir ya da yeni bir kaynak grubu oluşturabilirsiniz.

Kaynak grubu oluşturmak için az group create komutunu çalıştırın.

az group create --name myRGFD --location centralus

Azure Front Door profili oluşturma

Ardından, iki App Services'inizin çıkış noktası olarak kullandığı Azure Front Door profilini oluşturun.

Azure Front Door profili oluşturmak için az afd profile create komutunu çalıştırın.

Not

Azure Front Door Standard'ı Premium yerine dağıtmak istiyorsanız, sku parametresinin değerini Standard_AzureFrontDoor olarak değiştirin. WAF Politikası ile yönetilen kurallar Standard seviyesinde mevcut değildir. Ayrıntılı karşılaştırma için bkz . Azure Front Door katmanı karşılaştırması.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor

Web uygulamasının iki örneğini oluşturma

Bu adımda, farklı Azure bölgelerinde çalışan iki web uygulaması örneği oluşturursunuz. Her iki örnek de Etkin/Etkin modda çalışır, yani her biri trafiği işleyebilir. Bu kurulum, bir örneğin yük devretme görevi gördüğü Etkin/Stand-By yapılandırmasından farklıdır.

App Service planları oluşturma

İlk olarak iki uygulama hizmeti planı oluşturun: biri Orta ABD'de, diğeri Doğu ABD'de.

App Service planlarını oluşturmak için aşağıdaki komutları çalıştırın:

az appservice plan create \
    --name myAppServicePlanCentralUS \
    --resource-group myRGFD \
    --location centralus
az appservice plan create \
    --name myAppServicePlanEastUS \
    --resource-group myRGFD \
    --location eastus

Web uygulamaları oluşturma

Ardından, önceki adımda oluşturulan app service planlarının her birinde bir web uygulaması oluşturun. Web uygulaması adları genel olarak benzersiz olmalıdır.

Web uygulamalarını oluşturmak için aşağıdaki komutları çalıştırın:

az webapp create \
    --name WebAppContoso-01 \
    --resource-group myRGFD \
    --plan myAppServicePlanCentralUS
az webapp create \
    --name WebAppContoso-02 \
    --resource-group myRGFD \
    --plan myAppServicePlanEastUS

Bir sonraki adımda Azure Front Door'u dağıtırken arka uç adreslerini tanımlamaları gerektiğinden, her web uygulaması için varsayılan ana bilgisayar adlarını not edin.

Azure Front Door oluştur

Azure Front Door profili oluşturma

Azure Front Door profili oluşturmak için az afd profile create komutunu çalıştırın.

Not

Premium yerine Azure Front Door Standard dağıtmak için parametresini sku olarak Standard_AzureFrontDoorayarlayın. WAF Politikası ile yönetilen kurallar Standard seviyesinde mevcut değildir. Ayrıntılı karşılaştırma için bkz . Azure Front Door katmanı karşılaştırması.

az afd profile create \
    --profile-name contosoafd \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor

Bir uç nokta ekleme

Azure Front Door profilinizde bir uç nokta oluşturun. Uç nokta, etki alanı adlarıyla ilişkili bir veya daha fazla yolun mantıksal gruplandırılmasıdır. Her uç noktaya Azure Front Door tarafından bir etki alanı adı atanır ve yolları kullanarak uç noktaları özel etki alanlarıyla ilişkilendirebilirsiniz. Azure Front Door profilleri birden çok uç nokta içerebilir.

Profilinizde bir uç nokta oluşturmak için az afd endpoint create komutunu çalıştırın.

az afd endpoint create \
    --resource-group myRGFD \
    --endpoint-name contosofrontend \
    --profile-name contosoafd \
    --enabled-state Enabled

Azure Front Door'daki uç noktalar hakkında daha fazla bilgi için bkz . Azure Front Door'daki uç noktalar.

Kaynak grubu oluşturma

Uygulama örnekleriniz için trafiği ve beklenen yanıtları tanımlayan bir kaynak grubu oluşturun. Kaynak grupları ayrıca kaynakların sistem durumu yoklamaları tarafından nasıl değerlendirilip değerlendirilebileceğini tanımlar.

İki web uygulamanızı içeren bir kaynak grubu oluşturmak için az afd origin-group create komutunu çalıştırın.

az afd origin-group create \
    --resource-group myRGFD \
    --origin-group-name og \
    --profile-name contosoafd \
    --probe-request-type GET \
    --probe-protocol Http \
    --probe-interval-in-seconds 60 \
    --probe-path / \
    --sample-size 4 \
    --successful-samples-required 3 \
    --additional-latency-in-milliseconds 50

Kaynak grubuna çıkış noktaları ekleme

Daha önce oluşturulan her iki uygulama örneğinizi de yeni kaynak grubunuza çıkış noktası olarak ekleyin. Azure Front Door'daki kaynak noktaları, önbelleğe alma etkinleştirilmediğinde veya önbellek hatası gerçekleştiğinde Azure Front Door'un içerik aldığı uygulamaları ifade eder.

İlk uygulama örneğinizi kaynak grubunuza kaynak olarak eklemek için az afd origin create komutunu çalıştırın.

az afd origin create \
    --resource-group myRGFD \
    --host-name webappcontoso-01.azurewebsites.net \
    --profile-name contosoafd \
    --origin-group-name og \
    --origin-name contoso1 \
    --origin-host-header webappcontoso-01.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

İkinci uygulama örneğinizi kaynak grubunuza kaynak olarak eklemek için bu adımı yineleyin.

az afd origin create \
    --resource-group myRGFD \
    --host-name webappcontoso-02.azurewebsites.net \
    --profile-name contosoafd \
    --origin-group-name og \
    --origin-name contoso2 \
    --origin-host-header webappcontoso-02.azurewebsites.net \
    --priority 1 \
    --weight 1000 \
    --enabled-state Enabled \
    --http-port 80 \
    --https-port 443

Başlangıç noktaları, başlangıç noktaları grupları ve sağlık denetimleri hakkında daha fazla bilgi için bkz Azure Front Door'da Başlangıç Noktaları ve Başlangıç Noktaları Grupları.

Yol ekleme

Daha önce oluşturduğunuz uç noktayı kaynak grubuna eşlemek için bir yol ekleyin. Bu yönlendirme, uç noktadan istekleri kaynak grubunuza iletir.

Uç noktanızı kaynak grubuna eşlemek için az afd route create komutunu çalıştırın.

az afd route create \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --endpoint-name contosofrontend \
    --forwarding-protocol MatchRequest \
    --route-name route \
    --https-redirect Enabled \
    --origin-group og \
    --supported-protocols Http Https \
    --link-to-default-domain Enabled 

Azure Front Door'daki yollar hakkında daha fazla bilgi edinmek için bkz . Çıkış noktası için trafik yönlendirme yöntemleri.

Yeni bir güvenlik ilkesi oluşturma

Azure Front Door üzerinde Azure Web Uygulaması Güvenlik Duvarı (WAF), web uygulamalarınız için merkezi koruma sağlayarak bunları yaygın açıklara ve güvenlik açıklarına karşı korur.

Bu öğreticide, iki yönetilen kural içeren bir WAF ilkesi oluşturacaksınız. Özel kurallarla WAF ilkeleri de oluşturabilirsiniz.

WAF ilkesi oluştur

Azure Front Door'unuz için yeni bir WAF ilkesi oluşturmak için az network front-door waf-policy create komutunu çalıştırın. Bu örnek, etkinleştirilmiş ve önleme modunda bir ilke oluşturur.

Not

Yönetilen kurallar yalnızca Azure Front Door Premium katmanıyla kullanılabilir. Standart katman ile özel kurallar kullanabilirsiniz.

az network front-door waf-policy create \
    --name contosoWAF \
    --resource-group myRGFD \
    --sku Premium_AzureFrontDoor \
    --disabled false \
    --mode Prevention

Not

Modu seçerseniz Detection WAF'niz hiçbir isteği engellemez.

Azure Front Door için WAF ilke ayarları hakkında daha fazla bilgi edinmek için bkz. Azure Front Door'da Web Uygulaması Güvenlik Duvarı için ilke ayarları.

WAF ilkesine yönetilen kurallar atama

Azure tarafından yönetilen kural kümeleri, uygulamanızı yaygın güvenlik tehditlerine karşı korumanın kolay bir yolunu sağlar.

WAF İlkesinize yönetilen kurallar eklemek için az network front-door waf-policy managed-rules add komutunu çalıştırın. Bu örnek, ilkenize Microsoft_DefaultRuleSet_2.1 ve Microsoft_BotManagerRuleSet_1.0 ekler.

az network front-door waf-policy managed-rules add \
    --policy-name contosoWAF \
    --resource-group myRGFD \
    --type Microsoft_DefaultRuleSet \
    --action Block \
    --version 2.1 
az network front-door waf-policy managed-rules add \
    --policy-name contosoWAF \
    --resource-group myRGFD \
    --type Microsoft_BotManagerRuleSet \
    --version 1.0

Azure Front Door'da yönetilen kurallar hakkında daha fazla bilgi edinmek için Web Uygulaması Güvenlik Duvarı DRS kural grupları ve kurallarına bkz.

Güvenlik ilkesini uygulama

Şimdi bir güvenlik ilkesi oluşturarak WAF ilkelerini Azure Front Door'unuza uygulayın. Bu ayar, Azure tarafından yönetilen kuralları daha önce tanımladığınız uç noktaya uygular.

WAF ilkenizi uç noktanın varsayılan etki alanına uygulamak için az afd security-policy create komutunu çalıştırın.

Not

'etki alanları' ve 'waf-policy' parametrelerinde 'mysubscription' değerini Azure Abonelik Kimliğinizle değiştirin. Abonelik Kimliği ayrıntılarını almak için az account subscription list komutunu çalıştırın.

az afd security-policy create \
    --resource-group myRGFD \
    --profile-name contosoafd \
    --security-policy-name contososecurity \
    --domains /subscriptions/mysubscription/resourcegroups/myRGFD/providers/Microsoft.Cdn/profiles/contosoafd/afdEndpoints/contosofrontend \
    --waf-policy /subscriptions/mysubscription/resourcegroups/myRGFD/providers/Microsoft.Network/frontdoorwebapplicationfirewallpolicies/contosoWAF

Azure Front Door'u test etme

Azure Front Door profilini oluşturduktan sonra yapılandırmanın genel olarak dağıtılması birkaç dakika sürer. İşlem tamamlandıktan sonra, oluşturduğunuz ön uç konağına erişebilirsiniz.

Azure Front Door uç noktasının ana bilgisayar adını almak için az afd endpoint show komutunu çalıştırın.

az afd endpoint show --resource-group myRGFD --profile-name contosoafd --endpoint-name contosofrontend

Tarayıcıda uç nokta host adına gidin: contosofrontend-<hash>.z01.azurefd.net. İsteğiniz kaynak grubundaki en az geciken Web Uygulamasına yönlendirilir.

İletinin ekran görüntüsü: Web uygulamanız çalışıyor ve içeriğinizi bekliyor

Anlık genel yük devretmeyi test etmek amacıyla aşağıdaki adımları izleyin:

  1. Bir tarayıcı açın ve uç nokta ana bilgisayar ismine gidin: contosofrontend-<hash>.z01.azurefd.net.

  2. az webapp stop komutunu çalıştırarak Web Uygulamalarından birini durdurun:

    az webapp stop --name WebAppContoso-01 --resource-group myRGFD
    
  3. Tarayıcınızı yenileyin. Aynı bilgi sayfasını görmeniz gerekir.

İpucu

Bu eylemler için biraz gecikme olabilir. Sayfayı tekrar yenilemeniz gerekebilir.

  1. Diğer web uygulamasını da durdurun:

    az webapp stop --name WebAppContoso-02 --resource-group myRGFD
    
  2. Tarayıcınızı yenileyin. Bu kez bir hata iletisi görmeniz gerekir.

    İletinin ekran görüntüsü: Web uygulamasının her iki örneği de durduruldu

  3. az webapp start komutunu çalıştırarak Web Uygulamalarından birini yeniden başlatın. Tarayıcınızı yenilediğinizde sayfa normale dönmelidir.

    az webapp start --name WebAppContoso-01 --resource-group myRGFD
    

Kaynakları temizleme

Azure Front Door için oluşturulan kaynaklara artık ihtiyacınız kalmadığında kaynak grubunu silebilirsiniz. Bu eylem, Azure Front Door'un ve ilişkili tüm kaynakların kaldırılmasını sağlar.

Kaynak grubunu silmek için aşağıdaki komutu çalıştırın:

az group delete --name myRGFD

Sonraki adımlar

Azure Front Door'unuza özel alan adı eklemeyi öğrenmek için bir sonraki makaleye geçin.