Alıştırma - Şifreleme için arka uç havuzlarını yapılandırma

Tamamlandı

Sevkiyat portalı uygulaması için uçtan uca şifreleme uygulamak istiyorsunuz. Kullanıcılar ve sunucular arasındaki tüm verilerin şifrelenmesi, yetkisiz kullanıcıların verileri araya girip okuyamamasını sağlamaya yardımcı olur.

Bu ünitede web uygulamasını ve uygulama ağ geçidini ayarlayacaksınız. Ardından birkaç otomatik olarak imzalanan SSL sertifikası oluşturacak ve uygulama ağ geçidinden sunucularınıza giden trafiği güvenli hale getirmeye yardımcı olmak için arka uç havuzunuzda şifrelemeyi etkinleştireceksiniz.

Aşağıdaki görüntüde bu alıştırmada yapılandırdığınız öğeler vurgulanmıştır. Azure Uygulaması lication Gateway v2 kullanarak bir uygulama ağ geçidi ayarlıyorsunuz.

Diagram that highlights the elements (backend pool, SSL certificate, and HTTP settings) created in this exercise.

Sanal makine ve uygulama ağ geçidi dağıtma

  1. Tarayıcınızda Azure Cloud Shell'i açın ve kaynak oluşturmak istediğiniz aboneliğe erişimi olan dizinde oturum açın. Bu alıştırma için Bash kabuk ortamını kullanacağız.

  2. Cloud Shell'de aşağıdaki komutu çalıştırarak kaynaklarınız için bir kaynak grubu oluşturun. öğesini kaynak grubunuz için bir adla ve <location> kaynaklarınızı dağıtmak istediğiniz Azure bölgesiyle değiştirin<resource group name>.

    az group create --resource-group <resource group name> --location <location>
    
  3. Kaynak grubu adınızı depolamak üzere bir değişken oluşturmak için Cloud Shell'de aşağıdaki komutu çalıştırın:

    export rgName=<resource group name>
    
    
  4. Azure Cloud Shell'de aşağıdaki komutu çalıştırarak sevkiyat portalının kaynak kodunu indirin:

    git clone https://github.com/MicrosoftDocs/mslearn-end-to-end-encryption-with-app-gateway shippingportal
    
  5. Shippingportal klasörüne gitme:

    cd shippingportal
    
  6. Sanal makineyi, sertifikaları ve uygulama ağ geçidini oluşturmak için aşağıdaki kurulum betiğini çalıştırın:

    bash setup-infra.sh
    

    Not

    Bu betiğin tamamlanması birkaç dakika sürer. Ağ geçidini ve kaynakları açmak ve yapılandırmak için birden çok işlemde çalışmasına izin verin. İşlemin sıfır uyarı ve sıfır hatayla başarılı olduğunu görmeniz gerekir.

Web sunucusunun doğru yapılandırıldığını onaylama

  1. Kurulum betiğinin oluşturduğu web sunucusunun URL'sini görüntülemek için aşağıdaki komutu çalıştırın.

    echo https://"$(az vm show \
      --name webservervm1 \
      --resource-group $rgName \
      --show-details \
      --query [publicIps] \
      --output tsv)"
    
  2. URL'yi kopyalayıp web tarayıcınıza yapıştırın ve URL'ye gidin.

    Tarayıcınız büyük olasılıkla aşağıdaki görüntüye benzer bir uyarı iletisi görüntüler. Uyarı iletisindeki tam içerik, tarayıcınıza bağlı olarak değişebilir. Örnek görüntü Microsoft Edge'den alınmıştı.

    Screenshot of a warning about an unauthenticated server in Microsoft Edge.

    Web sunucusu, kimliği doğrulanamayan otomatik olarak imzalanan bir sertifika aracılığıyla yapılandırıldığı için bu uyarı oluşur. Bu uyarı sayfasında, web sitesine devam etmek için bağlantıyı arayın ve seçin; örneğin, Web sayfasına git'i veya Gelişmiş'i ve ardından Devam Et'i veya eşdeğerini seçin. Sonuç, aşağıdaki görüntüde gösterildiği gibi sizi sevkiyat portalı giriş sayfasına götürür. Sunucunun doğru yapılandırıldığını test etmek için örnek bir uygulamadır.

    Screenshot of the shipping portal home page Microsoft Edge.

Şifreleme için arka uç havuzunu yapılandırma

  1. Web sunucusu işlevi gören sanal makinenin özel IP adresini almak için aşağıdaki komutu çalıştırın.

    echo privateip="$(az vm list-ip-addresses \
      --resource-group $rgName \
      --name webservervm1 \
      --query "[0].virtualMachine.network.privateIpAddresses[0]" \
      --output tsv)"
    
  2. Özel IP adresinizi depolamak için bir değişken oluşturun. değerini önceki adımdaki IP adresiyle değiştirin <privateIP> .

    export privateip=<privateIP>
    
    
  3. Sanal makinenin özel IP adresini kullanarak Application Gateway için arka uç havuzunu ayarlayın.

    az network application-gateway address-pool create \
      --resource-group $rgName \
      --gateway-name gw-shipping \
      --name ap-backend \
      --servers $privateip
    
  4. Arka uç havuzundaki VM sertifikasını Application Gateway'e güvenilen kök sertifika olarak yükleyin. Kurulum betiği bu sertifikayı oluşturup shipping-ssl.crt dosyasında depoladı.

    az network application-gateway root-cert create \
      --resource-group $rgName \
      --gateway-name gw-shipping \
      --name shipping-root-cert \
      --cert-file server-config/shipping-ssl.crt
    
  5. SERTIFIKAyı kullanmak için HTTP ayarlarını yapılandırın:

    az network application-gateway http-settings create \
      --resource-group $rgName \
      --gateway-name gw-shipping \
      --name https-settings \
      --port 443 \
      --protocol Https \
      --host-name $privateip
    
  6. Arka uç havuzu için güvenilen sertifikayı arka uç VM'sinde yüklü sertifikaya ayarlamak için aşağıdaki komutları çalıştırın:

    export rgID="$(az group show --name $rgName --query id --output tsv)"
    
    az network application-gateway http-settings update \
        --resource-group $rgName \
        --gateway-name gw-shipping \
        --name https-settings \
        --set trustedRootCertificates='[{"id": "'$rgID'/providers/Microsoft.Network/applicationGateways/gw-shipping/trustedRootCertificates/shipping-root-cert"}]'
    

Artık sevkiyat portalı sitesini çalıştıran bir sanal makineniz ve bir uygulama ağ geçidiniz vardır. Application Gateway ile uygulama sunucunuz arasında SSL şifrelemesini yapılandırdınız.