Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Anda dapat menggunakan Azure CLI untuk membuat gateway aplikasi dengan sertifikat untuk penghentian TLS/SSL. Aturan perutean digunakan untuk mengalihkan lalu lintas HTTP di gateway aplikasi Anda ke port HTTPS. Dalam contoh ini, Anda juga membuat Virtual Machine Scale Set untuk kumpulan backend gateway aplikasi yang berisi dua instans komputer virtual.
Dalam artikel ini, Anda akan mempelajari cara:
- Membuat sertifikat yang ditandatangani sendiri
- Menyiapkan jaringan
- Membuat gateway aplikasi dengan sertifikat
- Menambahkan pendengar dan aturan pengalihan
- Membuat Set Skala Komputer Virtual dengan kumpulan backend default
Jika Anda tidak memiliki akun Azure, buat akun gratis sebelum memulai.
Prasyarat
Gunakan lingkungan Bash di Azure Cloud Shell. Untuk informasi selengkapnya, lihat Mulai menggunakan Azure Cloud Shell.
Jika Anda lebih suka menjalankan perintah referensi CLI secara lokal, instal Azure CLI. Jika Anda menjalankan Windows atau macOS, pertimbangkan untuk menjalankan Azure CLI dalam kontainer Docker. Untuk informasi lebih lanjut, lihat Cara menjalankan Azure CLI di kontainer Docker.
Jika Anda menggunakan instalasi lokal, masuk ke Azure CLI dengan menggunakan perintah az login. Untuk menyelesaikan proses autentikasi, ikuti langkah-langkah yang ditampilkan di terminal Anda. Untuk opsi masuk lainnya, lihat Mengautentikasi ke Azure menggunakan Azure CLI.
Saat diminta, instal ekstensi Azure CLI saat pertama kali digunakan. Untuk informasi selengkapnya tentang ekstensi, lihat Menggunakan dan mengelola ekstensi dengan Azure CLI.
Jalankan az version untuk menemukan versi dan pustaka dependen yang terinstal. Untuk meng-upgrade ke versi terbaru, jalankan az upgrade.
- Tutorial ini memerlukan Azure CLI versi 2.0.4 atau yang lebih baru. Jika menggunakan Azure Cloud Shell, versi terbaru sudah terpasang.
Membuat sertifikat yang ditandatangani sendiri
Untuk penggunaan produksi, Anda harus mengimpor sertifikat valid yang ditandatangani oleh penyedia tepercaya. Untuk tutorial ini, Anda membuat sertifikat yang ditandatangani sendiri dan file pfx menggunakan perintah openssl.
openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out appgwcert.crt
Masukkan nilai yang masuk akal untuk sertifikat Anda. Anda dapat menerima nilai default.
openssl pkcs12 -export -out appgwcert.pfx -inkey privateKey.key -in appgwcert.crt
Masukkan kata sandi untuk sertifikat. Dalam contoh ini, Azure123456! sedang digunakan.
Membuat grup sumber daya
Grup sumber daya adalah wadah logis di mana sumber daya Azure ditempatkan dan dikelola. Membuat grup sumber daya dengan menggunakan az group create.
Contoh berikut membuat grup sumber daya bernama myResourceGroupAG di lokasi eastus.
az group create --name myResourceGroupAG --location eastus
Membuat sumber daya jaringan
Buat jaringan virtual bernama myVNet dan subnet bernama myAGSubnet menggunakan az network vnet create. Anda kemudian dapat menambahkan subnet bernama myBackendSubnet yang diperlukan oleh server backend menggunakan az network vnet subnet create. Buat alamat IP publik bernama myAGPublicIPAddress menggunakan buat ip-publik jaringan az.
az network vnet create \
--name myVNet \
--resource-group myResourceGroupAG \
--location eastus \
--address-prefix 10.0.0.0/16 \
--subnet-name myAGSubnet \
--subnet-prefix 10.0.1.0/24
az network vnet subnet create \
--name myBackendSubnet \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--address-prefix 10.0.2.0/24
az network public-ip create \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress
Buat gerbang aplikasi
Anda dapat menggunakan az network application-gateway create untuk membuat gateway aplikasi yang bernama myAppGateway. Saat Anda membuat gateway aplikasi menggunakan Azure CLI, Anda menentukan informasi konfigurasi, seperti pengaturan kapasitas, sku, dan HTTP.
Gateway aplikasi ditetapkan ke myAGSubnet dan myPublicIPAddress yang Anda buat sebelumnya. Dalam contoh ini, Anda mengaitkan sertifikat yang Anda buat dan kata sandinya saat membuat gateway aplikasi.
az network application-gateway create \
--name myAppGateway \
--location eastus \
--resource-group myResourceGroupAG \
--vnet-name myVNet \
--subnet myAGsubnet \
--capacity 2 \
--sku Standard_Medium \
--http-settings-cookie-based-affinity Disabled \
--frontend-port 443 \
--http-settings-port 80 \
--http-settings-protocol Http \
--public-ip-address myAGPublicIPAddress \
--cert-file appgwcert.pfx \
--cert-password "Azure123456!"
Mungkin perlu waktu beberapa menit untuk membuat gateway aplikasi. Setelah gateway aplikasi dibuat, Anda bisa melihat fitur baru ini:
- appGatewayBackendPool - Gateway aplikasi harus memiliki setidaknya satu kumpulan alamat backend.
- appGatewayBackendHttpSettings - Menentukan bahwa port 80 dan protokol HTTP digunakan untuk komunikasi.
- appGatewayHttpListener - Listener default yang dikaitkan dengan appGatewayBackendPool.
- appGatewayFrontendIP: Menetapkan myAGPublicIPAddress ke appGatewayHttpListener.
- aturan1 - Aturan pengalihan bawaan yang terhubung dengan appGatewayHttpListener.
Menambahkan pendengar dan aturan pengalihan
Menambahkan port HTTP
Anda dapat menggunakan az network application-gateway frontend-port create untuk menambahkan port HTTP ke gateway aplikasi.
az network application-gateway frontend-port create \
--port 80 \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--name httpPort
Menambahkan listener HTTP
Anda dapat menggunakan az network application-gateway http-listener create untuk menambahkan listener bernama myListener ke gateway aplikasi.
az network application-gateway http-listener create \
--name myListener \
--frontend-ip appGatewayFrontendIP \
--frontend-port httpPort \
--resource-group myResourceGroupAG \
--gateway-name myAppGateway
Menambahkan konfigurasi pengalihan
Tambahkan konfigurasi pengalihan HTTP ke HTTPS ke gateway aplikasi menggunakan az network application-gateway redirect-config create.
az network application-gateway redirect-config create \
--name httpToHttps \
--gateway-name myAppGateway \
--resource-group myResourceGroupAG \
--type Permanent \
--target-listener appGatewayHttpListener \
--include-path true \
--include-query-string true
Tambahkan aturan perutean
Tambahkan aturan rute bernama rule2 dengan konfigurasi pengalihan ke gateway aplikasi menggunakan az network application-gateway rule create.
az network application-gateway rule create \
--gateway-name myAppGateway \
--name rule2 \
--resource-group myResourceGroupAG \
--http-listener myListener \
--rule-type Basic \
--redirect-config httpToHttps
Buat Set Skala Mesin Virtual
Dalam contoh ini, Anda membuat Set Skala Komputer Virtual bernama myvmss yang menyediakan server untuk kumpulan backend di gateway aplikasi. Komputer virtual dalam kelompok skala dikaitkan dengan myBackendSubnet dan appGatewayBackendPool. Untuk membuat set skala, gunakan az vmss create.
az vmss create \
--name myvmss \
--resource-group myResourceGroupAG \
--image Ubuntu2204 \
--admin-username azureuser \
--admin-password Azure123456! \
--instance-count 2 \
--vnet-name myVNet \
--subnet myBackendSubnet \
--vm-sku Standard_DS2 \
--upgrade-policy-mode Automatic \
--app-gateway myAppGateway \
--backend-pool-name appGatewayBackendPool
Memasang NGINX
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroupAG \
--vmss-name myvmss \
--settings '{ "fileUris": ["https://raw.githubusercontent.com/Azure/azure-docs-powershell-samples/master/application-gateway/iis/install_nginx.sh"],
"commandToExecute": "./install_nginx.sh" }'
Uji gateway aplikasi
Untuk mendapatkan alamat IP publik gateway aplikasi, Anda dapat menggunakan az network public-ip show. Salin alamat IP publik, lalu tempelkan ke bilah alamat browser Anda.
az network public-ip show \
--resource-group myResourceGroupAG \
--name myAGPublicIPAddress \
--query [ipAddress] \
--output tsv
Untuk menerima peringatan keamanan jika Anda menggunakan sertifikat yang ditandatangani sendiri, pilih Detail lalu Lanjutkan ke halaman web. Situs NGINX aman Anda kemudian ditampilkan seperti dalam contoh berikut: