Latihan - Perutean lalu lintas melalui NVA
Sekarang setelah Anda membuat appliance virtual jaringan (NVA) dan komputer virtual (VM), Anda akan mengarahkan lalu lintas melalui NVA.
Membuat komputer virtual publik dan pribadi
Langkah selanjutnya menyebarkan Mesin Virtual ke subnet publik dan privat.
Buka editor Cloud Shell dan buat file bernama cloud-init.txt.
code cloud-init.txt
Tambahkan informasi konfigurasi berikut ke dalam file. Dengan konfigurasi ini, paket
inetutils-traceroute
diinstal saat Anda membuat Komputer Virtual baru. Paket ini memuat utilitastraceroute
yang nanti akan Anda gunakan dalam latihan ini.#cloud-config package_upgrade: true packages: - inetutils-traceroute
Tekan Ctrl+S untuk menyimpan file, lalu tekan Ctrl+Q untuk menutup penyunting.
Di Cloud Shell, jalankan perintah berikut untuk membuat Komputer Virtual publik. Ganti
<password>
dengan kata sandi yang sesuai untuk akun azureuser.az vm create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name public \ --vnet-name vnet \ --subnet publicsubnet \ --image Ubuntu2204 \ --admin-username azureuser \ --no-wait \ --custom-data cloud-init.txt \ --admin-password <password>
Jalankan perintah berikut untuk membuat Komputer Virtual privat. Ganti
<password>
dengan kata sandi yang sesuai.az vm create \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name private \ --vnet-name vnet \ --subnet privatesubnet \ --image Ubuntu2204 \ --admin-username azureuser \ --no-wait \ --custom-data cloud-init.txt \ --admin-password <password>
Jalankan perintah
watch
Linux berikut untuk memeriksa apakah Komputer Virtual sedang berjalan. Perintahwatch
secara berkala menjalankan perintahaz vm list
sehingga Anda dapat memantau kemajuan Komputer Virtual.watch -d -n 5 "az vm list \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --show-details \ --query '[*].{Name:name, ProvisioningState:provisioningState, PowerState:powerState}' \ --output table"
Nilai ProvisioningState "Berhasil" dan nilai PowerState "VM berjalan" menunjukkan penyebaran yang berfungsi. Saat ketiga Komputer Virtual berjalan, Anda siap untuk melanjutkan. Tekan Ctrl-C untuk menghentikan perintah dan melanjutkan latihan.
Jalankan perintah berikut untuk menyimpan alamat IP publik VM publik ke variabel bernama
PUBLICIP
:PUBLICIP="$(az vm list-ip-addresses \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name public \ --query "[].virtualMachine.network.publicIpAddresses[*].ipAddress" \ --output tsv)" echo $PUBLICIP
Jalankan perintah berikut untuk menyimpan alamat IP publik VM privat ke variabel bernama
PRIVATEIP
:PRIVATEIP="$(az vm list-ip-addresses \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name private \ --query "[].virtualMachine.network.publicIpAddresses[*].ipAddress" \ --output tsv)" echo $PRIVATEIP
Uji perutean lalu lintas melalui appliance virtual jaringan
Langkah terakhir gunakan utilitas traceroute
Linux untuk menampilkan bagaimana lalu lintas dirutekan. Anda akan menggunakan perintah ssh
untuk menjalankan traceroute
pada setiap Komputer Virtual. Pengujian pertama menunjukkan rute yang diambil oleh paket ICMP yang dikirim dari VM publik ke VM privat . Pengujian kedua menunjukkan rute yang diambil oleh paket ICMP yang dikirim dari VM privat ke VM publik .
Jalankan perintah berikut untuk melacak rute dari publik ke pribadi. Saat diminta, masukkan kata sandi untuk akun azureuser yang Anda buat sebelumnya.
ssh -t -o StrictHostKeyChecking=no azureuser@$PUBLICIP 'traceroute private --type=icmp; exit'
Jika Anda menerima pesan kesalahan
bash: traceroute: command not found
, tunggu sebentar dan coba lagi perintahnya. Pemasangan otomatistraceroute
dapat memakan waktu satu atau dua menit setelah penyebaran Komputer Virtual. Setelah perintah berhasil, output akan terlihat mirip dengan contoh berikut:traceroute to private.kzffavtrkpeulburui2lgywxwg.gx.internal.cloudapp.net (10.0.1.4), 64 hops max 1 10.0.2.4 0.710ms 0.410ms 0.536ms 2 10.0.1.4 0.966ms 0.981ms 1.268ms Connection to 52.165.151.216 closed.
Perhatikan bahwa lompatan pertama adalah 10.0.2.4. Alamat ini adalah alamat IP pribadi nva. Lompatan kedua adalah 10.0.1.4, yaitu alamat pribadi. Di latihan pertama, Anda menambahkan rute ini ke tabel rute dan menautkan tabel ke subnet publicsubnet. Jadi sekarang semua lalu lintas dari publik ke privat dialihkan melalui appliance virtual jaringan.
Jalankan perintah berikut untuk melacak rute dari pribadi ke publik. Saat diminta, masukkan kata sandi untuk akun azureuser.
ssh -t -o StrictHostKeyChecking=no azureuser@$PRIVATEIP 'traceroute public --type=icmp; exit'
Anda seharusnya melihat lalu lintas langsung menuju ke publik (10.0.0.4) dan tidak melalui NVA, seperti yang ditampilkan pada output perintah berikut.
traceroute to public.kzffavtrkpeulburui2lgywxwg.gx.internal.cloudapp.net (10.0.0.4), 64 hops max 1 10.0.0.4 1.095ms 1.610ms 0.812ms Connection to 52.173.21.188 closed.
Komputer Virtual privat menggunakan rute default, dan lalu lintas dirutekan langsung di antara subnet.
Anda sekarang telah mengonfigurasi perutean antar subnet untuk mengarahkan lalu lintas dari internet publik melalui subnet dmzsubnet sebelum mencapai subnet pribadi. Di subnet dmzsubnet, Anda menambahkan Komputer Virtual yang bertindak sebagai appliance virtual jaringan. Anda dapat mengonfigurasi NVA ini untuk mendeteksi permintaan yang berpotensi berbahaya dan memblokirnya sebelum mencapai target yang mereka tuju.