Pelajari cara membuat dan mengonfigurasi kebijakan {i>firewall<i} hierarkis untuk mengizinkan traffic keluar yang berasal dari Virtual Private Cloud (VPC) tertentu jaringan di folder Anda ke alamat IP tertentu sebagai tujuan. Tujuan kebijakan firewall memblokir semua traffic keluar lain yang berasal dari folder tersebut. Halaman ini akan memberikan contoh pembuatan dua VPC jaringan, membuat instance virtual machine (VM) di VPC jaringan, menyiapkan kebijakan {i>firewall<i} hierarkis dengan aturan {i>firewall<i}, dan kemudian menguji kebijakan {i>firewall<i}.
Sebelum memulai
- Pastikan Anda memiliki akses ke resource organisasi.
- Pastikan Anda memiliki peran Identity and Access Management (IAM) berikut:
-
Peran Administrator Organisasi
(roles/resourcemanager.organizationAdmin)
-
Peran Admin Folder
(roles/resourcemanager.folderAdmin)
-
Peran Project Creator
(roles/resourcemanager.projectCreator)
-
Peran Project Deleter
(roles/resourcemanager.projectDeleter)
-
Peran Admin Jaringan Compute (
roles/compute.networkAdmin
) -
Peran Compute Organization Firewall Policy Admin (
roles/compute.orgFirewallPolicyAdmin
)
-
Peran Administrator Organisasi
-
Aktifkan API Compute Engine and Identity-Aware Proxy (IAP).
Membuat folder
Buat folder di organisasi Anda.
Di Konsol Google Cloud, buka halaman Manage resources.
Klik Create folder.
Untuk Folder name, masukkan
test-folder
.Dalam daftar Organisasi, pilih nama resource organisasi Anda.
Di kolom Location, klik Browse, lalu pilih organisasi Anda resource Anda
Klik Create.
Membuat project
Buat project di folder yang Anda buat di bagian sebelumnya.
Di Konsol Google Cloud, buka halaman Manage resources.
Klik Buat proyek.
Untuk Project name, masukkan
test-project
.Pilih akun penagihan untuk project tersebut.
Dalam daftar Organisasi, pilih nama resource organisasi Anda.
Di kolom Lokasi, klik Jelajahi, luaskan resource organisasi Anda nama, lalu pilih test-folder.
Klik Create.
Membuat dua jaringan VPC kustom dengan subnet IPv4
Buat dua jaringan VPC mode kustom, myvpc
dengan konfigurasi khusus IPv4
subnet dan test-vpc
dengan dua subnet khusus IPv4, dalam project yang Anda buat
di bagian sebelumnya.
Di Konsol Google Cloud, pada halaman pemilih project, pilih test-project.
Di konsol Google Cloud, buka halaman jaringan VPC.
Klik Create VPC network.
Untuk Name, masukkan
myvpc
.Untuk Mode pembuatan subnet, klik Kustom.
Di bagian New subnet tentukan parameter konfigurasi berikut untuk subnet:
- Nama: Masukkan
myvpc-subnet-1
. - Region: Pilih us-central1.
- IPv4 range: Masukkan
10.0.0.0/24
.
- Nama: Masukkan
Klik Selesai, lalu klik Buat.
Untuk membuat jaringan VPC lain, klik Create VPC network.
Untuk Name, masukkan
test-vpc
.Untuk Mode pembuatan subnet, klik Kustom.
Di bagian New subnet, tentukan konfigurasi berikut parameter untuk subnet, lalu klik Done:
- Nama: Masukkan
testvpc-subnet-1
. - Region: Pilih us-central1.
- IPv4 range: Masukkan
10.0.0.0/16
.
- Nama: Masukkan
Untuk menambahkan subnet lain ke jaringan
test-vpc
, klik Tambahkan subnet.Di bagian New subnet, tentukan konfigurasi berikut parameter untuk subnet, lalu klik Done:
- Nama: Masukkan
testvpc-subnet-ext
. - Region: Pilih us-central1.
- IPv4 range: Masukkan
192.168.1.0/24
.
- Nama: Masukkan
Klik Create.
Membuat VM
Buat tiga VM di subnet yang telah Anda konfigurasi di bagian sebelumnya.
Buat VM di jaringan myvpc
Buat VM tanpa alamat IP eksternal di jaringan myvpc
.
Di konsol Google Cloud, buka halaman Create an instance.
Klik Create instance.
Untuk Name, masukkan
myvpc-vm
.Untuk Region, pilih us-central1 (Iowa).
Perluas Advanced options, lalu luaskan Networking.
Di bagian Network interfaces, perluas antarmuka jaringan yang ada dan tetapkan parameter konfigurasi berikut:
- Network: Pilih
myvpc
. - Subnetwork: Pilih subnet-1 IPv4 (10.0.0.0/24).
- External IPv4 address: Pilih None.
- Network: Pilih
Klik Done.
Klik Create.
Membuat dua VM di jaringan test-vpc
Buat dua VM, satu tanpa alamat IP eksternal dan VM lainnya dengan IP eksternal alamat IPv6 Saat Anda membuat VM dengan alamat IP eksternal, teruskan skrip startup untuk menginstal dan memulai server web Apache di VM tersebut.
Buat VM tanpa alamat IP eksternal:
Di konsol Google Cloud, buka halaman Create an instance.
Klik Create instance.
Untuk Name, masukkan
testvpc-vm
.Untuk Region, pilih
us-central1 (Iowa)
.Perluas Advanced options, lalu luaskan Networking.
Di bagian Network interfaces, perluas antarmuka jaringan yang ada dan tetapkan parameter konfigurasi berikut:
- Network: Pilih test-vpc.
- Subnetwork: Pilih testvpc-subnet-1 IPv4 (10.0.0.0/16).
- External IPv4 address: Pilih None.
Klik Done.
Klik Create.
Membuat VM dengan alamat IP eksternal sementara, dan meneruskan skrip startup untuk diinstal dan jalankan server web Apache:
- Klik Create instance.
- Untuk Name, masukkan
testvpc-apache-vm
. - Untuk Region, pilih
us-central1 (Iowa)
. - Perluas Advanced options, lalu luaskan Networking.
- Di bagian Network interfaces, perluas antarmuka jaringan yang ada
dan tetapkan parameter konfigurasi berikut:
- Network: Pilih test-vpc.
- Subnetwork: Pilih testvpc-subnet-ext IPv4 (192.168.1.0/24).
- External IPv4 address: Pilih Ephemeral.
- Luaskan Pengelolaan.
Di bagian Metadata, masukkan skrip berikut di bagian Kolom Startup script:
#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl # Read VM network configuration: md_vm="http://169.254.169.254/computeMetadata/v1/instance/" vm_hostname="$(curl $md_vm/name -H "Metadata-Flavor:Google" )" filter="{print \$NF}" vm_network="$(curl $md_vm/network-interfaces/0/network \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" vm_zone="$(curl $md_vm/zone \ -H "Metadata-Flavor:Google" | awk -F/ "${filter}")" # Apache configuration: echo "Page on $vm_hostname in network $vm_network zone $vm_zone" | \ tee /var/www/html/index.html systemctl restart apache2
Skrip sebelumnya men-deploy dan memulai server web Apache di VM ini.
Klik Done.
Klik Create.
Catat alamat IP eksternal sementara yang ditetapkan ke VM ini dari VM instances. Anda memerlukan alamat IP eksternal ini nanti.
Membuat Cloud Router dan gateway Cloud NAT
Di bagian sebelumnya, di jaringan myvpc
, Anda membuat myvpc-vm
VM tanpa alamat IP eksternal. Untuk mengaktifkan VM myvpc-vm
agar dapat mengakses web Apache
server yang berjalan di testvpc-apache-vm
melalui internet publik, buat
Cloud Router dan gateway Cloud NAT di subnet yang sama
Anda telah membuat VM myvpc-vm
.
Di Konsol Google Cloud, buka halaman Cloud NAT.
Klik Get started atau Create Cloud NAT gateway.
Catatan: Jika ini adalah gateway Cloud NAT pertama yang Anda buat, klik Mulai. Jika Anda sudah memiliki gateway, Google Cloud menampilkan tombol gateway Create Cloud NAT. Untuk membuat yang lain gateway, klik Create Cloud NAT.
Untuk Gateway name, masukkan
myvpc-gateway
.Untuk NAT type, pilih Public.
Di bagian Select Cloud Router, tentukan hal berikut parameter konfigurasi:
- Network: Pilih myvpc.
- Region: Pilih us-central1 (Iowa).
- Cloud Router: Klik Create new router.
- Untuk Name, masukkan
myvpc-router
. - Klik Create.
- Untuk Name, masukkan
Klik Create.
Membuat kebijakan firewall hierarkis dan menambahkan aturan firewall
Buat kebijakan firewall hierarkis dan tambahkan aturan kebijakan firewall berikut ke dalamnya:
- Aktifkan IAP untuk semua VM di
test-folder
untuk mengaktifkan akses administratif ke VM. - Izinkan traffic masuk ke semua VM di jaringan
test-vpc
. - Delegasikan traffic keluar dari jaringan
myvpc
ke aturan berikutnya dalam hierarki, yaitu AturanVPC firewall implied IPv4 rule egress all
. - Tolak traffic keluar yang berasal dari semua jaringan VPC lain di
test-folder
.
Untuk membuat kebijakan firewall hierarkis, ikuti langkah-langkah berikut:
Di konsol Google Cloud, buka halaman pemilih project, lalu pilih test-folder.
Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Klik Create firewall policy.
Di bagian Configure policy, untuk Policy name, masukkan
fw-egress-specific-vpc
.Untuk Description, masukkan
example-firewall-policy
.Klik Lanjutkan.
Di bagian Tambahkan aturan, klik Lanjutkan. Anda akan menambahkan aturan firewall di bagian selanjutnya dari panduan memulai ini.
Di bagian Kaitkan kebijakan dengan resource, klik Tambahkan.
Luaskan organisasi Anda, pilih test-folder, lalu klik Tambahkan.
Klik Create.
Tambahkan aturan firewall untuk mengaktifkan IAP di semua VM di test-folder
Agar IAP dapat terhubung ke semua VM di test-folder
, Anda
memerlukan aturan {i>firewall<i} dalam kebijakan {i>firewall<i} hierarkis dengan
karakteristik:
- Berlaku untuk semua VM di
test-folder
yang Anda inginkan agar dapat diakses menggunakan penerusan TCP IAP. - Mengizinkan traffic masuk dari rentang alamat IP
35.235.240.0/20
. Ini berisi semua alamat IP yang digunakan IAP untuk penerusan TCP. - Izinkan koneksi ke semua porta yang Anda inginkan agar dapat diakses dengan menggunakan
Penerusan TCP IAP, misalnya, port
22
untuk SSH.
Untuk menambahkan aturan firewall, ikuti langkah-langkah berikut:
Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Klik fw-egress-specific-vpc, lalu klik Add rule.
Untuk Priority, masukkan
100
.Untuk Description, masukkan
enable-iap
.Untuk Direction of traffic, pilih Ingress.
Untuk Action on match, pilih Allow.
Di bagian Source, untuk IP ranges, masukkan
35.235.240.0/20
.Di bagian Protocols and ports, pilih Specified protocols and ports.
Pilih kotak centang TCP, dan untuk Ports, masukkan
22
.Klik Create.
Tambahkan aturan firewall untuk mengizinkan traffic masuk di jaringan test-vpc
Menambahkan aturan firewall untuk mengizinkan traffic web HTTP yang masuk di TCP port 80 ke semua VM
dalam jaringan test-vpc
:
Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Klik fw-egress-specific-vpc, lalu klik Add rule.
Untuk Priority, masukkan
200
.Untuk Description, masukkan
allow-ingress-testvpc
.Untuk Direction of traffic, pilih Ingress.
Untuk Action on match, pilih Allow.
Di bagian Target, klik Add network.
Pilih project pengujian yang berisi jaringan
test-vpc
, lalu pilih test-vpc sebagai jaringan.Di bagian Source, untuk IP ranges, masukkan
0.0.0.0/0
.Di bagian Protocols and ports, pilih Specified protocols and ports.
Pilih kotak centang TCP, dan untuk Ports, masukkan
80
.Klik Create.
Tambahkan aturan firewall untuk mendelegasikan traffic keluar dari jaringan myvpc
ke aturan berikutnya dalam hierarki
Tambahkan aturan firewall yang menggunakan tindakan goto_next
untuk mendelegasikan traffic keluar
dari jaringan myvpc
ke aturan berikutnya di firewall, yaitu
Aturan firewall VPC yang implisit mengizinkan IPv4 mengizinkan traffic keluar.
Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Klik fw-egress-specific-vpc, lalu klik Add rule.
Untuk Priority, masukkan
300
.Untuk Description, masukkan
delegate-egress-myvpc
.Untuk Direction of traffic, pilih Egress.
Untuk Action on match, pilih Go to next.
Di bagian Target, klik Add network.
Pilih nama project pengujian yang berisi
myvpc
, lalu pilihmyvpc
sebagai jaringan.Di bagian Tujuan, untuk rentang IP, masukkan fungsi eksternal efemeral Alamat IP untuk VM yang menjalankan server web Apache. Anda memiliki mencatat alamat IP ini di Buat dua VM di bagian
test-vpc
jaringan.Klik Create.
Menambahkan aturan firewall untuk menolak traffic keluar yang berasal dari semua jaringan VPC lainnya
Terakhir, tambahkan aturan {i>firewall<i} yang menolak lalu lintas keluar dari
Jaringan VPC di test-folder
.
Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Klik fw-egress-specific-vpc, lalu klik Add rule.
Untuk Priority, masukkan
400
.Untuk Description, masukkan
block-egress-all-traffic
.Untuk Direction of traffic, pilih Egress.
Untuk Action on match, pilih Deny.
Di bagian Destination, untuk rentang IP, masukkan
0.0.0.0/0
.Klik Create.
Menguji kebijakan firewall hierarkis
Setelah Anda mengonfigurasi kebijakan {i>firewall<i} hierarki, ikuti langkah-langkah berikut untuk menguji kebijakan:
Buka konsol Google Cloud.
Dari pemilih project di bagian atas halaman, pilih
test-project
di mana Anda telah membuat jaringan VPC.Di konsol Google Cloud, buka halaman Instance VM.
Di kolom Connect untuk
myvpc-vm
, klik SSH.Pada dialog SSH-in-browser, klik Authorize dan tunggu hingga koneksi yang akan dibuat.
Untuk memastikan bahwa traffic keluar ke
testvpc-apache-vm
darimyvpc
izinkan, jalankan perintah berikut:curl <external_ephemeral_IP_testvpc_apache_vm> -m 2
Perintah sebelumnya menampilkan konten yang telah Anda tentukan untuk
index.html
dari server web Apache, yang berarti traffic keluar sambungan darimyvpc
diizinkan.Untuk memastikan bahwa traffic keluar diblokir dari jaringan VPC lainnya dalam organisasi, lakukan hal berikut:
Di konsol Google Cloud, buka halaman Instance VM.
Di kolom Connect untuk
testvpc-vm
, klik SSH.Dalam dialog SSH-in-browser, klik Authorize, lalu tunggu koneksi yang akan dibuat.
Untuk memastikan traffic keluar dari
testvpc-vm
ketestvpc-apache-vm
diblokir, jalankan perintah berikut:curl <internal_IP_testvpc_apache_vm> -m 2
Perintah sebelumnya menampilkan pesan
Connection timed out
, yang diharapkan karena Anda membuat aturan firewall untuk menolak traffic keluar dari semua Jaringan VPC dalam organisasi, kecuali darimyvpc
.
Pembersihan
Agar tidak menimbulkan biaya ke akun Google Cloud Anda untuk resource yang digunakan dalam panduan memulai ini, hapus resource satu per satu, lalu hapus project dan folder.
Untuk menghapus referensi yang dibuat di panduan memulai ini, selesaikan tugas-tugas berikut.
Menghapus kebijakan firewall hierarkis
Buka konsol Google Cloud.
Dari pemilih project di bagian atas halaman, pilih
test-folder
di mana Anda telah membuat sumber daya untuk panduan memulai ini.Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Di bagian Kebijakan firewall yang terkait dengan node ini atau diwarisi oleh node, klik fw-egress-specific-vpc.
Klik tab Pengaitan.
Centang kotak untuk test-folder, lalu klik Hapus pengaitan.
Di dialog Hapus atribusi dengan
test-folder
, klik Hapus.Klik Hapus.
Di dialog Hapus
fw-egress-specific-vpc
, klik Hapus.
Menghapus VM
Buka konsol Google Cloud.
Dari pemilih project di bagian atas halaman, pilih test-project.
Di konsol Google Cloud, buka halaman Instance VM.
Pilih kotak centang untuk myvpc-vm, testvpc-vm, dan testvpc-apache-vm.
Klik Hapus.
Pada dialog Delete instance 3 instances, klik Delete.
Menghapus Cloud Router dan gateway Cloud NAT
Di konsol Google Cloud, buka halaman Cloud Routers.
Pilih kotak centang untuk myvpc-router.
Klik Hapus.
Di dialog Hapus
myvpc-router
, klik Hapus.
Saat menghapus Cloud Router, gateway Cloud NAT terkait juga dihapus.
Menghapus jaringan VPC dan subnetnya
Di konsol Google Cloud, buka halaman jaringan VPC.
Di kolom Name, klik myvpc.
Klik Delete VPC network.
Pada dialog Hapus jaringan, klik Hapus.
Demikian pula, hapus jaringan
test-vpc
.
Saat Anda menghapus jaringan VPC, subnetnya juga akan dihapus.
Menghapus project
- Di konsol Google Cloud, buka halaman Manage resource.
- Jika project yang ingin Anda hapus tertaut ke organisasi, buka daftar Organization di kolom Name.
- Pada daftar project, pilih project yang ingin Anda hapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
Menghapus folder
Di Konsol Google Cloud, buka halaman Manage resources.
Jika folder yang akan Anda hapus terlampir ke organisasi, luaskan daftar Organization di kolom Name.
Dalam daftar folder, pilih test-folder, lalu klik Delete.
Pada dialog, ketik ID folder, lalu klik Tetap hapus untuk menghapus project.
Langkah selanjutnya
- Untuk konsep kebijakan firewall, lihat bagian Ringkasan kebijakan firewall.
- Untuk konsep aturan kebijakan firewall, lihat Ringkasan aturan kebijakan firewall.
- Untuk membuat, memperbarui, memantau, dan menghapus aturan firewall VPC, lihat Gunakan aturan firewall VPC.
- Untuk menentukan biaya, lihat Harga Cloud NGFW.