Halaman ini menjelaskan perintah untuk mengelola aturan firewall Virtual Private Cloud (VPC) dan memberikan beberapa contoh cara menggunakannya. Aturan firewall VPC memungkinkan Anda mengizinkan atau menolak traffic ke atau dari instance virtual machine (VM) di jaringan VPC berdasarkan nomor port, tag, atau protokol.
Sebelum memulai
Untuk mempelajari lebih lanjut aturan firewall VPC, seperti aturan implisit dan aturan yang dibuat sistem untuk jaringan default, lihat Aturan firewall VPC.
Sebelum mengonfigurasi aturan firewall, tinjau komponen aturan firewall untuk memahami komponen firewall yang digunakan di Google Cloud.
Membuat aturan firewall VPC
Aturan firewall VPC ditentukan di tingkat jaringan, dan hanya berlaku untuk jaringan tempat aturan tersebut dibuat; namun, nama yang Anda pilih untuk setiap aturan harus unik untuk project.
Aturan firewall dapat berisi rentang IPv4 atau IPv6, tetapi tidak keduanya.
Saat membuat aturan firewall, Anda dapat memilih untuk mengaktifkan Logging Aturan Firewall. Jika mengaktifkan logging, Anda dapat menghilangkan kolom metadata untuk menghemat biaya penyimpanan. Untuk mengetahui informasi selengkapnya, lihat Menggunakan logging aturan firewall VPC.
Jika Anda ingin menentukan beberapa akun layanan untuk kolom akun layanan target atau sumber, gunakan Google Cloud CLI, API, atau library klien.
Jaringan default menyediakan aturan firewall otomatis pada saat pembuatan. Jaringan mode kustom dan otomatis memungkinkan Anda membuat firewall serupa dengan mudah selama pembuatan jaringan jika Anda menggunakan konsol Google Cloud . Jika Anda menggunakan gcloud CLI atau API dan ingin membuat aturan firewall yang serupa dengan aturan yang disediakan oleh jaringan default, lihat Mengonfigurasi aturan firewall untuk kasus penggunaan umum.
Konsol
Di konsol Google Cloud , buka halaman Firewall policies.
Klik Create firewall rule.
Masukkan Name untuk aturan firewall.
Nama ini harus unik untuk project.
(Opsional) Anda dapat mengaktifkan logging aturan firewall:
- Klik Logs > On.
- Untuk menghilangkan metadata, klik Tampilkan detail log, lalu hapus centang pada kotak Sertakan metadata.
Tentukan Network untuk aturan firewall.
Tentukan Priority aturan.
Semakin rendah angkanya, semakin tinggi prioritasnya.
Untuk Direction of traffic, pilih ingress atau egress.
Untuk Action on match, pilih izinkan atau tolak.
Tentukan Target aturan.
- Jika Anda ingin aturan berlaku untuk semua instance di jaringan, pilih All instances in the network.
- Jika Anda ingin aturan diterapkan ke instance tertentu berdasarkan tag jaringan (target), pilih Specified target tags, lalu di kolom Target tags, ketik tag yang harus diterapkan aturan.
- Jika Anda ingin aturan diterapkan ke instance tertentu berdasarkan akun layanan terkait, pilih Akun layanan tertentu, tunjukkan apakah akun layanan berada di project saat ini atau di project lain di Cakupan akun layanan, lalu di kolom Akun layanan target, pilih atau ketik nama akun layanan.
Untuk aturan ingress, tentukan Source filter:
- Untuk memfilter traffic masuk menurut rentang IPv4 sumber, pilih
Rentang IPv4, lalu masukkan blok CIDR ke dalam kolom
Rentang IPv4 sumber. Gunakan
0.0.0.0/0untuk sumber IPv4 apa pun. - Untuk memfilter traffic masuk menurut rentang IPv6 sumber, pilih IPv6 ranges, lalu masukkan blok CIDR ke kolom Source IPv6 ranges. Gunakan
::/0untuk sumber IPv6 apa pun. - Untuk memfilter traffic masuk menurut tag jaringan, pilih Tag sumber, lalu ketik tag jaringan ke dalam kolom Tag sumber. Untuk mengetahui batas jumlah tag sumber, lihat Batas per jaringan. Pemfilteran menurut tag sumber hanya tersedia jika target tidak ditentukan oleh akun layanan.
- Untuk memfilter traffic masuk menurut akun layanan, pilih Akun layanan, tunjukkan apakah akun layanan berada di project saat ini atau di project lain dalam Cakupan akun layanan, lalu pilih atau ketik nama akun layanan di kolom Akun layanan sumber. Pemfilteran menurut akun layanan sumber hanya tersedia jika target tidak ditentukan oleh tag jaringan.
- Tentukan Filter sumber kedua jika diinginkan. Filter sumber sekunder tidak dapat menggunakan kriteria filter yang sama dengan filter utama. Rentang IP sumber dapat digunakan bersama dengan Tag sumber atau Akun layanan sumber. Kumpulan sumber efektif adalah gabungan alamat IP rentang sumber dan instance yang diidentifikasi oleh tag jaringan atau akun layanan. Artinya, jika rentang IP sumber, atau tag sumber (atau akun layanan sumber) cocok dengan kriteria filter, sumber akan disertakan dalam set sumber efektif.
- Tag sumber dan Akun layanan sumber tidak dapat digunakan bersama-sama.
Untuk mengetahui informasi selengkapnya tentang penggunaan akun layanan dan tag jaringan, lihat memfilter berdasarkan akun layanan versus tag jaringan.
- Untuk memfilter traffic masuk menurut rentang IPv4 sumber, pilih
Rentang IPv4, lalu masukkan blok CIDR ke dalam kolom
Rentang IPv4 sumber. Gunakan
Untuk aturan ingress, tentukan Filter tujuan:
- Untuk memfilter traffic masuk menurut rentang IPv4 tujuan, pilih
Rentang IPv4 dan masukkan blok CIDR ke dalam
kolom Rentang IPv4 tujuan. Gunakan
0.0.0.0/0untuk tujuan IPv4 apa pun. - Untuk memfilter traffic masuk menurut rentang IPv6 tujuan, pilih
IPv6 ranges dan masukkan blok CIDR ke dalam kolom
Destination IPv6 ranges. Gunakan
::/0untuk tujuan IPv6 apa pun.
Untuk mengetahui informasi selengkapnya, lihat Tujuan untuk aturan ingress.
- Untuk memfilter traffic masuk menurut rentang IPv4 tujuan, pilih
Rentang IPv4 dan masukkan blok CIDR ke dalam
kolom Rentang IPv4 tujuan. Gunakan
Untuk aturan keluar, tentukan Filter tujuan:
- Untuk memfilter traffic keluar menurut rentang IPv4 tujuan, pilih
Rentang IPv4 dan masukkan blok CIDR ke dalam
kolom Rentang IPv4 tujuan. Gunakan
0.0.0.0/0untuk tujuan IPv4 apa pun. - Untuk memfilter traffic keluar menurut rentang IPv6 tujuan, pilih
IPv6 ranges dan masukkan blok CIDR ke dalam kolom
Destination IPv6 ranges. Gunakan
::/0untuk tujuan IPv6 apa pun.
Untuk mengetahui informasi selengkapnya, lihat Tujuan untuk aturan egress.
- Untuk memfilter traffic keluar menurut rentang IPv4 tujuan, pilih
Rentang IPv4 dan masukkan blok CIDR ke dalam
kolom Rentang IPv4 tujuan. Gunakan
Untuk aturan keluar, tentukan Source filter:
- Untuk memfilter traffic keluar menurut rentang IPv4 sumber, pilih
Rentang IPv4 dan masukkan blok CIDR ke dalam
kolom Rentang IPv4 sumber. Gunakan
0.0.0.0/0untuk sumber IPv4 apa pun. - Untuk memfilter traffic keluar menurut rentang IPv6 sumber, pilih
Rentang IPv6 dan masukkan blok CIDR ke dalam
kolom Rentang IPv6 sumber. Gunakan
::/0untuk tujuan IPv6 apa pun.
Untuk mengetahui informasi selengkapnya, lihat Sumber untuk aturan egress.
- Untuk memfilter traffic keluar menurut rentang IPv4 sumber, pilih
Rentang IPv4 dan masukkan blok CIDR ke dalam
kolom Rentang IPv4 sumber. Gunakan
Tentukan Protocols and ports yang akan diterapkan aturan:
- Agar aturan berlaku untuk semua protokol dan port tujuan, pilih Izinkan semua atau Tolak semua, bergantung pada tindakan.
- Untuk menentukan protokol dan port tujuan tertentu, pilih
Specified protocols and ports:
- Pilih TCP untuk menyertakan protokol TCP dan port tujuan. Masukkan
allatau daftar port tujuan yang dipisahkan koma, seperti20-22, 80, 8080. - Pilih UDP untuk menyertakan protokol UDP dan port tujuan. Masukkan
allatau daftar port tujuan yang dipisahkan koma, seperti67-69, 123. - Pilih Lainnya untuk menyertakan protokol seperti
icmp,sctp, atau nomor protokol. Misalnya, gunakanicmpatau nomor protokol1untuk ICMP IPv4. Gunakan nomor protokol58untuk ICMP IPv6.
- Pilih TCP untuk menyertakan protokol TCP dan port tujuan. Masukkan
Untuk mengetahui informasi selengkapnya, lihat protokol dan port tujuan.
(Opsional) Anda dapat membuat aturan firewall, tetapi tidak menerapkannya dengan menyetel status penerapannya ke nonaktif. Klik Nonaktifkan aturan, lalu pilih Dinonaktifkan.
Klik Create.
gcloud
Untuk membuat aturan firewall VPC, gunakan perintah
gcloud compute firewall-rules create:
gcloud compute firewall-rules create RULE_NAME \
[--network NETWORK; default="default"] \
[--priority PRIORITY;default=1000] \
[--direction (ingress|egress|in|out); default="ingress"] \
[--action (deny | allow )] \
[--target-tags TAG[,TAG,...]] \
[--target-service-accounts=IAM_SERVICE_ACCOUNT[,IAM_SERVICE_ACCOUNT,...]] \
[--source-ranges CIDR_RANGE[,CIDR_RANGE,...]] \
[--source-tags TAG[,TAG, ...]] \
[--source-service-accounts=IAM_SERVICE_ACCOUNT[,IAM_SERVICE_ACCOUNT,...]] \
[--destination-ranges CIDR_RANGE[,CIDR_RANGE,...]] \
[--rules (PROTOCOL[:PORT[-PORT]],[PROTOCOL[:PORT[-PORT]],...]] | all ) \
[--disabled | --no-disabled] \
[--enable-logging | --no-enable-logging] \
[--logging-metadata LOGGING_METADATA]
Gunakan parameter sebagai berikut. Detail selengkapnya tentang setiap opsi tersedia dalam dokumentasi referensi SDK.
--networkJaringan untuk aturan. Jika tidak ditentukan, aturan akan dibuat di jaringandefault. Jika Anda tidak memiliki jaringan default atau ingin membuat aturan di jaringan tertentu, Anda harus menggunakan kolom ini.--priorityNilai numerik yang menunjukkan prioritas untuk aturan. Semakin rendah angkanya, semakin tinggi prioritasnya.--directionArah traffic,INGRESSatauEGRESS.--actionTindakan jika ada kecocokan,allowataudeny. Harus digunakan dengan flag--rules.- Tentukan target dengan salah satu cara berikut:
Untuk aturan ingress, guna lebih menyempurnakan tujuan, gunakan
--destination-rangesuntuk menentukan rentang alamat IPv4 atau IPv6 dalam format CIDR. Jika--destination-rangestidak disertakan, tujuan ingress adalah alamat IPv4 apa pun,0.0.0.0/0. Untuk mengetahui informasi selengkapnya, lihat Tujuan untuk aturan ingress dan Target dan alamat IP untuk aturan ingress.Untuk aturan ingress, tentukan sumber:
--source-rangesGunakan tanda ini untuk menentukan rentang alamat IPv4 atau IPv6 sumber dalam format CIDR.- Jika
--source-ranges,source-tags, dan--source-service-accountsdihilangkan, sumber ingress adalah alamat IPv4 apa pun,0.0.0.0/0. --source-tagsGunakan flag ini untuk menentukan instance sumber menurut tag jaringan. Pemfilteran menurut tag sumber hanya tersedia jika target tidak ditentukan oleh akun layanan. Untuk mengetahui informasi selengkapnya, lihat memfilter berdasarkan akun layanan versus tag jaringan.--source-rangesdan--source-tagsdapat digunakan bersama-sama. Jika keduanya ditentukan, set sumber yang efektif adalah gabungan alamat IP rentang sumber dan instance yang diidentifikasi oleh tag jaringan, meskipun instance yang diberi tag tidak memiliki IP dalam rentang sumber.--source-service-accountsGunakan flag ini untuk menentukan instance berdasarkan akun layanan yang mereka gunakan. Pemfilteran menurut akun layanan sumber hanya tersedia jika target tidak ditentukan oleh tag jaringan. Untuk mengetahui informasi selengkapnya, lihat memfilter berdasarkan akun layanan versus tag jaringan.--source-rangesdan--source-service-accountsdapat digunakan bersama-sama. Jika keduanya ditentukan, set sumber yang efektif adalah gabungan alamat IP rentang sumber dan instance yang diidentifikasi oleh akun layanan sumber, meskipun instance yang diidentifikasi oleh akun layanan sumber tidak memiliki IP dalam rentang sumber.
Untuk aturan keluar, guna lebih menyaring sumber, gunakan
--source-rangesuntuk menentukan rentang alamat IPv4 atau IPv6 dalam format CIDR. Jika--source-rangesdihilangkan, sumber keluar adalah alamat IPv4 apa pun,0.0.0.0/0. Untuk mengetahui informasi selengkapnya, lihat Sumber untuk aturan egress dan Target dan alamat IP untuk aturan egress.Untuk aturan traffic keluar, tentukan tujuan:
--destination-rangesGunakan tanda ini untuk menentukan rentang alamat IPv4 atau IPv6 tujuan dalam format CIDR.- Jika
--destination-rangestidak disertakan, tujuan keluar adalah alamat IPv4 apa pun,0.0.0.0/0.
--rulesDaftar protokol dan port tujuan yang akan menerapkan aturan tersebut. Gunakanallagar aturan berlaku untuk semua protokol dan semua port tujuan. Memerlukan flag--action.Secara default, aturan firewall dibuat dan diterapkan secara otomatis; namun, Anda dapat mengubah perilaku ini.
- Jika
--disableddan--no-disabledtidak disertakan, aturan firewall akan dibuat dan diterapkan. --disabledTambahkan tanda ini untuk membuat aturan firewall, tetapi tidak menerapkannya. Aturan firewall akan tetap dinonaktifkan hingga Anda memperbarui aturan firewall untuk mengaktifkannya.--no-disabledTambahkan tanda ini untuk memastikan aturan firewall diterapkan.
- Jika
--enable-logging | --no-enable-loggingAnda dapat mengaktifkan Logging Aturan Firewall untuk suatu aturan saat Anda membuat atau memperbaruinya. Logging aturan firewall VPC memungkinkan Anda mengaudit, memverifikasi, dan menganalisis efek aturan firewall Anda. Lihat Logging aturan firewall VPC untuk mengetahui detailnya.--logging-metadataJika Anda mengaktifkan logging, secara default, Logging Aturan Firewall menyertakan kolom dasar dan metadata. Anda dapat menghilangkan kolom metadata untuk menghemat biaya penyimpanan. Untuk mengetahui informasi selengkapnya, lihat Menggunakan logging aturan firewall VPC.
Terraform
Untuk membuat aturan firewall, Anda dapat menggunakan resource google_compute_firewall.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
API
Buat aturan firewall VPC.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls
{
"name": "RULE_NAME",
"network": "projects/PROJECT-ID/global/networks/NETWORK",
... other fields
}
Ganti kode berikut:
PROJECT_ID: ID project tempat jaringan VPC berada.NETWORK: nama jaringan VPC tempat aturan firewall dibuat.RULE_NAME: nama aturan firewall.Untuk aturan firewall masuk, tentukan sumber dan tujuan masuk:
Gunakan kolom
sourceRanges,sourceTags, atausourceServiceAccountsuntuk menentukan sumber masuk.sourceRangesdapat berupa rentang IPv4 atau IPv6, tetapi tidak boleh merupakan kombinasi keduanya. Untuk menggunakan rentang0.0.0.0/0, jangan tentukan kolom apa pun.Anda tidak dapat menggunakan kolom
sourceTagsdansourceServiceAccountssecara bersamaan. Namun, Anda dapat menggunakansourceRangesdengansourceTagsatausourceServiceAccounts. Jika Anda melakukannya, koneksi hanya perlu cocok dengan salah satu dari keduanya agar aturan firewall dapat diterapkan.Untuk kolom target, jika Anda menggunakan kolom
sourceTags, Anda tidak dapat menggunakan kolomtargetServiceAccounts. Anda harus menggunakan kolomtargetTagsatau tidak ada kolom target. Demikian pula, jika Anda menggunakan kolomsourceServiceAccounts, Anda tidak dapat menggunakan kolomtargetTags. Jika Anda tidak menentukan kolom target, aturan akan berlaku untuk semua target dalam jaringan.Gunakan kolom
destinationRangesuntuk menentukan tujuan ingress.destinationRangesdapat berupa rentang IPv4 atau IPv6, tetapi tidak dapat berupa kombinasi keduanya.
Jika Anda tidak menentukan tujuan, Google Cloud akan menggunakan0.0.0.0/0. Untuk mengetahui informasi selengkapnya, lihat Tujuan untuk aturan ingress dan Target dan alamat IP untuk aturan ingress.
Untuk aturan firewall keluar, tentukan sumber dan tujuan keluar:
Gunakan kolom
sourceRangesuntuk menentukan sumber traffic keluar.sourceRangedapat berupa rentang IPv4 atau IPv6, tetapi tidak dapat berupa kombinasi keduanya.
Jika Anda tidak menentukan sumber, Google Cloud akan menggunakan0.0.0.0/0. Untuk mengetahui informasi selengkapnya, lihat Sumber untuk aturan egress dan Target dan alamat IP untuk aturan egress.Gunakan kolom
destinationRangesuntuk menentukan tujuan.destinationRangesdapat berupa rentang IPv4 atau IPv6, tetapi tidak boleh berupa kombinasi keduanya.
Jika Anda tidak menentukan tujuan, Google Cloud akan menggunakan0.0.0.0/0. Gunakan kolomtargetTagsatautargetServiceAccountsuntuk menentukan target yang menerapkan aturan. Jika Anda tidak menentukan kolom target, aturan akan berlaku untuk semua target dalam jaringan.
Untuk mengetahui informasi dan deskripsi selengkapnya untuk setiap kolom, lihat metode firewalls.insert.