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.
Mengontrol akses jaringan keluar adalah bagian penting dari rencana keamanan jaringan secara keseluruhan. Misalnya, Anda mungkin ingin membatasi akses ke situs web. Atau, Anda mungkin ingin membatasi alamat IP keluar dan port yang dapat diakses.
Anda dapat mengontrol akses jaringan keluar dari subnet Azure dengan menggunakan Azure Firewall. Dengan menggunakan Azure Firewall, Anda dapat mengonfigurasi:
- Aturan aplikasi yang mendefinisikan nama domain yang sepenuhnya memenuhi syarat (FQDN), yang dapat diakses dari subnet.
- Aturan jaringan yang menentukan alamat sumber, protokol, port tujuan, dan alamat tujuan.
Lalu lintas jaringan dikenakan aturan firewall yang dikonfigurasi saat Anda merutekan lalu lintas jaringan Anda ke firewall sebagai gerbang default untuk subnet.
Dalam artikel ini, Anda membuat jaringan virtual tunggal yang disederhanakan dengan tiga subnet untuk penyebaran yang mudah. Untuk penyebaran produksi, gunakan model hub dan spoke, di mana firewall berada di jaringan virtualnya sendiri. Server beban kerja berada di jaringan virtual yang di-peering di wilayah yang sama dengan satu atau beberapa subnet.
- AzureFirewallSubnet - firewall ada di subnet ini.
- Workload-SN - server beban kerja ada di subnet ini. Lalu lintas jaringan subnet ini melewati firewall.
- AzureBastionSubnet - subnet yang digunakan untuk Azure Bastion, yang digunakan untuk menyambungkan ke server beban kerja.
Untuk informasi selengkapnya tentang Azure Bastion, lihat Apa itu Azure Bastion?
Penting
Harga per jam dimulai sejak Bastion disebarkan, tanpa memperhitungkan penggunaan data keluar. Untuk informasi selengkapnya, lihat Harga dan SKU. Jika Anda menyebarkan Bastion sebagai bagian dari tutorial atau pengujian, kami sarankan Anda menghapus sumber daya ini setelah Selesai menggunakannya.
Dalam artikel ini, Anda akan mempelajari cara:
- Menyiapkan lingkungan jaringan uji
- Menyebarkan firewall
- Buat rute default
- Konfigurasikan aturan aplikasi untuk mengizinkan akses ke
www.google.com - Mengonfigurasi aturan jaringan untuk membuka akses ke server DNS eksternal
- Menguji firewall
Jika mau, Anda dapat menyelesaikan prosedur ini dengan menggunakan portal Microsoft Azure.
Jika Anda tidak memiliki langganan Azure, buat akun gratis sebelum Anda memulai.
Prasyarat
Prosedur ini mengharuskan Anda menjalankan PowerShell secara lokal. Anda harus menginstal modul Azure PowerShell. Jalankan Get-Module -ListAvailable Az untuk menemukan versinya. Jika Anda perlu peningkatan, lihat Instal modul Azure PowerShell. Setelah versi PowerShell dipastikan, jalankan Connect-AzAccount untuk membuat koneksi dengan Azure.
Siapkan jaringan
Pertama, buat grup sumber daya untuk memuat sumber daya yang diperlukan untuk menyebarkan firewall. Kemudian buat jaringan virtual, subnet, dan server pengujian.
Buat grup sumber daya
Gunakan New-AzResourceGroup untuk membuat grup sumber daya untuk penyebaran:
New-AzResourceGroup -Name Test-FW-RG -Location "East US"
Buat jaringan virtual dan host Azure Bastion
Jaringan virtual ini memiliki tiga subnet. Gunakan New-AzVirtualNetworkSubnetConfig untuk menentukannya:
Catatan
Ukuran subnet AzureFirewallSubnet adalah /26. Untuk informasi lebih tentang ukuran subnet, lihat Tanya Jawab Umum Azure Firewall.
$Bastionsub = New-AzVirtualNetworkSubnetConfig `
-Name AzureBastionSubnet `
-AddressPrefix 10.0.0.0/27
$FWsub = New-AzVirtualNetworkSubnetConfig `
-Name AzureFirewallSubnet `
-AddressPrefix 10.0.1.0/26
$Worksub = New-AzVirtualNetworkSubnetConfig `
-Name Workload-SN `
-AddressPrefix 10.0.2.0/24
Gunakan New-AzVirtualNetwork untuk membuat jaringan virtual:
$testVnet = New-AzVirtualNetwork `
-Name Test-FW-VN `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-AddressPrefix 10.0.0.0/16 `
-Subnet $Bastionsub, $FWsub, $Worksub
Buat alamat IP publik untuk host Azure Bastion
Gunakan New-AzPublicIpAddress untuk membuat alamat IP publik statis untuk host Bastion:
$publicip = New-AzPublicIpAddress `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-Name Bastion-pip `
-AllocationMethod static `
-Sku standard
Buat host Azure Bastion
Gunakan New-AzBastion untuk membuat host Bastion:
New-AzBastion `
-ResourceGroupName Test-FW-RG `
-Name Bastion-01 `
-PublicIpAddress $publicip `
-VirtualNetwork $testVnet
Membuat mesin virtual
Gunakan New-AzVM untuk membuat komputer virtual beban kerja. Saat diminta, ketik nama pengguna dan kata sandi:
# Create the NIC
$wsn = Get-AzVirtualNetworkSubnetConfig `
-Name Workload-SN `
-VirtualNetwork $testVnet
$NIC01 = New-AzNetworkInterface `
-Name Srv-Work `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-Subnet $wsn
# Define the virtual machine
$SecurePassword = ConvertTo-SecureString "<choose a password>" -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential ("<choose a user name>", $SecurePassword);
$VirtualMachine = New-AzVMConfig `
-VMName Srv-Work `
-VMSize "Standard_DS2"
$VirtualMachine = Set-AzVMOperatingSystem `
-VM $VirtualMachine `
-Windows `
-ComputerName Srv-Work `
-ProvisionVMAgent `
-EnableAutoUpdate `
-Credential $Credential
$VirtualMachine = Add-AzVMNetworkInterface `
-VM $VirtualMachine `
-Id $NIC01.Id
$VirtualMachine = Set-AzVMSourceImage `
-VM $VirtualMachine `
-PublisherName 'MicrosoftWindowsServer' `
-Offer 'WindowsServer' `
-Skus '2019-Datacenter' `
-Version latest
# Create the virtual machine
New-AzVM `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-VM $VirtualMachine `
-Verbose
Catatan
Azure menyediakan IP akses keluar default untuk VM yang tidak diberi alamat IP publik atau berada di kumpulan backend load balancer Azure dasar internal. Mekanisme IP akses keluar default menyediakan alamat IP keluar yang tidak dapat dikonfigurasi.
IP akses keluar default dinonaktifkan saat salah satu peristiwa berikut terjadi:
- Alamat IP publik ditetapkan ke VM.
- VM ditempatkan di kumpulan backend load balancer standar, dengan atau tanpa aturan keluar.
- Sebuah resource Azure NAT Gateway ditugaskan ke subnet VM.
VM yang Anda buat dengan menggunakan set skala mesin virtual dalam mode orkestrasi yang fleksibel tidak memiliki akses keluar default.
Untuk informasi selengkapnya tentang koneksi keluar di Azure, lihat Akses keluar default di Azure dan Menggunakan Terjemahan Alamat Jaringan Sumber (SNAT) untuk koneksi keluar.
Mengimplementasikan firewall
Gunakan New-AzPublicIpAddress dan New-AzFirewall untuk menyebarkan firewall ke jaringan virtual:
# Get a Public IP for the firewall
$FWpip = New-AzPublicIpAddress `
-Name "fw-pip" `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-AllocationMethod Static `
-Sku Standard
# Create the firewall
$Azfw = New-AzFirewall `
-Name Test-FW01 `
-ResourceGroupName Test-FW-RG `
-Location "East US" `
-VirtualNetwork $testVnet `
-PublicIpAddress $FWpip
# Save the firewall private IP address for future use
$AzfwPrivateIP = $Azfw.IpConfigurations.privateipaddress
$AzfwPrivateIP
Catat alamat IP privat. Anda menggunakannya nanti saat membuat rute default.
Buat rute default
Gunakan New-AzRouteTable dan Add-AzRouteConfig untuk membuat tabel rute dengan rute default yang menunjuk ke firewall, lalu kaitkan dengan subnet beban kerja:
$routeTableDG = New-AzRouteTable `
-Name Firewall-rt-table `
-ResourceGroupName Test-FW-RG `
-location "East US" `
-DisableBgpRoutePropagation
# Create a route
Add-AzRouteConfig `
-Name "DG-Route" `
-RouteTable $routeTableDG `
-AddressPrefix 0.0.0.0/0 `
-NextHopType "VirtualAppliance" `
-NextHopIpAddress $AzfwPrivateIP
Set-AzRouteTable
# Associate the route table to the subnet
Set-AzVirtualNetworkSubnetConfig `
-VirtualNetwork $testVnet `
-Name Workload-SN `
-AddressPrefix 10.0.2.0/24 `
-RouteTable $routeTableDG | Set-AzVirtualNetwork
Mengonfigurasi aturan aplikasi
Gunakan New-AzFirewallApplicationRule dan New-AzFirewallApplicationRuleCollection untuk membuat aturan aplikasi yang memberikan akses keluar ke www.google.com:
$AppRule1 = New-AzFirewallApplicationRule `
-Name Allow-Google `
-SourceAddress 10.0.2.0/24 `
-Protocol http, https `
-TargetFqdn www.google.com
$AppRuleCollection = New-AzFirewallApplicationRuleCollection `
-Name App-Coll01 `
-Priority 200 `
-ActionType Allow `
-Rule $AppRule1
$Azfw.ApplicationRuleCollections.Add($AppRuleCollection)
Set-AzFirewall -AzureFirewall $Azfw
Azure Firewall menyertakan kumpulan aturan bawaan untuk FQDN infrastruktur yang diizinkan secara default. FQDN ini khusus untuk platform dan tidak dapat digunakan untuk tujuan lain. Untuk informasi selengkapnya, lihat FQDN Infrastruktur.
Konfigurasi aturan jaringan
Gunakan New-AzFirewallNetworkRule dan New-AzFirewallNetworkRuleCollection untuk membuat aturan jaringan yang memberikan akses keluar ke dua alamat IP di port 53 (DNS):
$NetRule1 = New-AzFirewallNetworkRule `
-Name "Allow-DNS" `
-Protocol UDP `
-SourceAddress 10.0.2.0/24 `
-DestinationAddress 209.244.0.3,209.244.0.4 `
-DestinationPort 53
$NetRuleCollection = New-AzFirewallNetworkRuleCollection `
-Name RCNet01 `
-Priority 200 `
-Rule $NetRule1 `
-ActionType "Allow"
$Azfw.NetworkRuleCollections.Add($NetRuleCollection)
Set-AzFirewall -AzureFirewall $Azfw
Ubah alamat DNS utama dan sekunder untuk antarmuka jaringan Srv-Work
Untuk tujuan pengujian dalam prosedur ini, konfigurasikan alamat DNS utama dan sekunder server. Konfigurasi ini bukan persyaratan Azure Firewall umum.
$NIC01.DnsSettings.DnsServers.Add("209.244.0.3")
$NIC01.DnsSettings.DnsServers.Add("209.244.0.4")
$NIC01 | Set-AzNetworkInterface
Menguji firewall
Sekarang, uji firewall untuk mengonfirmasi bahwa firewall bekerja seperti yang diharapkan.
Sambungkan ke komputer virtual Srv-Work dengan menggunakan Bastion, dan masuk.
Di Srv-Work, buka jendela PowerShell, dan jalankan perintah berikut:
nslookup www.google.com nslookup www.microsoft.comKedua perintah mengembalikan jawaban, memperlihatkan bahwa kueri DNS Anda melewati firewall.
Jalankan perintah berikut:
Invoke-WebRequest -Uri https://www.google.com Invoke-WebRequest -Uri https://www.microsoft.comPermintaan
www.google.comberhasil, danwww.microsoft.compermintaan gagal. Hasil ini menunjukkan bahwa aturan firewall Anda beroperasi seperti yang diharapkan.
Sekarang Anda memverifikasi bahwa aturan firewall berfungsi:
- Anda dapat mengatasi nama DNS dengan menggunakan server DNS eksternal yang dikonfigurasi.
- Anda dapat menjelajahi satu-satunya FQDN yang diizinkan, tetapi tidak ke yang lainnya.
Membersihkan sumber daya
Anda dapat menyimpan sumber daya firewall Anda untuk tutorial berikutnya. Jika Anda tidak lagi membutuhkannya, hapus grup sumber daya Test-FW-RG untuk menghapus semua sumber daya terkait firewall:
Remove-AzResourceGroup -Name Test-FW-RG