Logging Aturan Firewall memungkinkan Anda mengaudit, memverifikasi, dan menganalisis efek aturan firewall Anda. Misalnya, Anda dapat menentukan apakah aturan firewall yang dirancang untuk menolak traffic berfungsi sebagaimana mestinya. Logging juga berguna jika Anda perlu menentukan jumlah koneksi yang terpengaruh oleh aturan firewall tertentu.
Halaman ini menunjukkan cara mengaktifkan dan menonaktifkan logging untuk aturan firewall Virtual Private Cloud. Untuk mengetahui petunjuk tentang logging untuk aturan kebijakan firewall, lihat Menggunakan kebijakan dan aturan firewall hierarkis.
Halaman ini juga menunjukkan cara melihat log yang dihasilkan. Untuk mengetahui informasi selengkapnya tentang apa yang dicatat, contoh logging, dan format log, lihat Logging Aturan Firewall.
Jika mengaktifkan logging pada aturan firewall, Anda dapat melihat insight dan rekomendasi untuk aturan tersebut dari Analisis Firewall. Untuk mengetahui informasi selengkapnya, lihat Insight Firewall dalam dokumentasi Network Intelligence Center.
Izin
Untuk mengubah aturan firewall atau log akses, akun utama IAM memerlukan salah satu peran berikut.
Tugas | Peran yang Diperlukan |
---|---|
Membuat, menghapus, atau memperbarui aturan firewall | Pemilik atau editor project atau Security Admin |
Lihat Log | Project
pemilik, editor, atau pelihat
atau
Pelihat Log
Lihat Panduan Kontrol Akses Logging untuk mengetahui detail tentang peran dan izin IAM Logging. |
Mengaktifkan dan menonaktifkan Firewall Rules Logging
Saat membuat aturan firewall, Anda dapat memilih untuk mengaktifkan logging aturan firewall. Untuk mengetahui informasi selengkapnya, lihat Membuat aturan firewall.
Untuk mengaktifkan atau menonaktifkan Logging Aturan Firewall untuk aturan firewall yang ada, ikuti petunjuk berikut. Saat mengaktifkan logging, Anda dapat mengontrol apakah kolom metadata disertakan atau tidak. Jika Anda menghilangkannya, Anda dapat menghemat biaya penyimpanan.
Mengaktifkan Firewall Rules Logging
Konsol
Di konsol Trusted Cloud , buka halaman Firewall policies.
Di kolom Logs, tentukan apakah logging firewall aktif atau nonaktif untuk setiap aturan firewall.
Untuk mengaktifkan logging untuk satu atau beberapa aturan firewall, centang kotak di samping setiap aturan yang ingin Anda perbarui.
Di panel tindakan VPC firewall rules, klik Configure logs.
Pada dialog Configure logs, pilih On.
Untuk menghilangkan kolom metadata, luaskan Tampilkan detail log, lalu hapus centang pada kotak Sertakan metadata.
Klik Simpan konfigurasi.
gcloud
gcloud compute firewall-rules update RULE_NAME \ --enable-logging \ --logging-metadata=LOGGING_METADATA
Ganti kode berikut:
RULE_NAME
: nama aturan firewall.LOGGING_METADATA
: apakah Firewall Rules Logging menyertakan kolom metadata dalam log aturan firewall. Anda hanya dapat mengonfigurasi kolom ini jika logging diaktifkan. Nilainya harus berupaexclude-all
atauinclude-all
. Secara default, kolom metadata disertakan.
Untuk mengetahui informasi selengkapnya, lihat dokumentasi referensi SDK.
Terraform
Anda dapat menggunakan resource Terraform untuk membuat aturan firewall dengan logging yang diaktifkan.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
API
Aktifkan Logging Aturan Firewall untuk aturan firewall yang ada.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls/RULE_NAME { "name": "RULE_NAME, "logConfig": { "enable": true, "metadata": LOGGING_METADATA } }
Ganti placeholder dengan nilai yang valid:
PROJECT_ID
: ID project tempat aturan firewall berada.RULE_NAME
: nama aturan firewall.LOGGING_METADATA
: apakah Firewall Rules Logging menyertakan kolom metadata dalam log aturan firewall. Anda hanya dapat mengonfigurasi kolom ini jika logging diaktifkan. Nilainya harus berupaexclude-all
atauinclude-all
. Secara default, kolom metadata disertakan.
Untuk informasi selengkapnya, lihat metode firewalls.patch
.
Menonaktifkan Firewall Rules Logging
Konsol
Di konsol Trusted Cloud , buka halaman Firewall policies.
Di kolom Logs, tentukan apakah logging firewall aktif atau nonaktif untuk setiap aturan firewall.
Untuk menonaktifkan logging untuk satu atau beberapa aturan firewall, centang kotak di samping setiap aturan yang ingin Anda perbarui.
Di panel tindakan VPC firewall rules, klik Configure logs.
Dalam dialog Configure logs, pilih Nonaktif, lalu klik Simpan konfigurasi.
gcloud
gcloud compute firewall-rules update RULE_NAME \ --no-enable-logging
Ganti RULE_NAME
dengan nama aturan firewall.
API
Nonaktifkan Logging Aturan Firewall untuk aturan firewall yang ada.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls/RULE_NAME { "name": "RULE_NAME, "logConfig": { "enable": false } }
Ganti kode berikut:
PROJECT_ID
: ID project tempat aturan firewall berada.RULE_NAME
: nama aturan firewall.
Untuk informasi selengkapnya, lihat metode firewalls.patch
.
Melihat log
Log aturan firewall dibuat di project yang menghosting jaringan yang berisi instance VM dan aturan firewall. Dengan VPC Bersama, instance VM dibuat dalam project layanan, tetapi menggunakan Jaringan VPC Bersama yang berada di project host. Log aturan firewall disimpan dalam project host tersebut.
Untuk melihat log aturan firewall, gunakan bagian Logs Explorer di konsol Trusted Cloud .
Kueri berikut menunjukkan cara Anda dapat menelusuri peristiwa firewall tertentu.
Melihat semua log firewall
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Resource.
Di daftar Select resource, klik Subnetwork, lalu klik Apply.
Klik Log name, lalu pilih firewall dalam daftar.
Klik Terapkan.
Sebagai alternatif:
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Query.
Jika Anda tidak melihat kolom editor kueri di panel Query, klik tombol Show query.
Tempel perintah berikut ke dalam kolom editor kueri di panel Query. Ganti
PROJECT_ID
dengan project ID Anda.resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall"
Klik Run query.
Melihat log untuk subnet tertentu
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Resource.
Di daftar Select resource, klik Subnetwork.
Pilih subnetwork yang lognya ingin Anda lihat, lalu klik Terapkan.
Klik Log name, lalu pilih firewall dalam daftar.
Klik Terapkan.
Sebagai alternatif:
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Query.
Jika Anda tidak melihat kolom editor kueri di panel Query, klik tombol Show query.
Tempel perintah berikut ke dalam kolom editor kueri di panel Query. Ganti
PROJECT_ID
dengan project ID Anda danSUBNET_NAME
dengan subnetwork Anda.resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall" resource.labels.subnetwork_name="SUBNET_NAME"
Klik Run query.
Melihat log di VM tertentu
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Resource.
Di daftar Select resource, klik VM instance.
Pilih instance yang lognya ingin Anda lihat, lalu klik Terapkan.
Klik Log name, lalu pilih firewall dalam daftar.
Klik Terapkan.
Sebagai alternatif:
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Query.
Jika Anda tidak melihat kolom editor kueri di panel Query, klik tombol Show query.
Tempel perintah berikut ke dalam kolom editor kueri di panel Query. Ganti
PROJECT_ID
dengan project ID Anda danINSTANCE_ID
dengan ID VM yang ingin Anda lihat lognya.resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall" jsonPayload.instance.vm_name="INSTANCE_ID"
Klik Run query.
Melihat log untuk koneksi dari negara tertentu
Di konsol Trusted Cloud , buka halaman Logs Explorer.
Klik Query.
Jika Anda tidak melihat kolom editor kueri di panel Query, klik tombol Show query.
Tempel perintah berikut ke dalam kolom editor kueri di panel Query. Ganti
PROJECT_ID
dengan project ID Anda danCOUNTRY
dengan kode ISO 3166-1alpha-3.resource.type="gce_subnetwork" logName="projects/PROJECT_ID/logs/compute.googleapis.com%2Ffirewall" jsonPayload.remote_location.country=COUNTRY
Ekspor log
Untuk mengekspor log aturan firewall, lihat Mengonfigurasi dan mengelola sink.
Anda dapat menggunakan contoh kueri untuk mempersempit log yang Anda ekspor.
Tabel interaksi
- Dalam kasus komunikasi VM-ke-VM, catatan log dapat dibuat oleh kedua VM, bergantung pada aturan firewall masing-masing.
- Koneksi yang dicatat dalam log mencakup paket yang mengalir dua arah jika paket awal diizinkan oleh firewall.
- Untuk VM tertentu, koneksi masuk dicocokkan dengan aturan firewall yang dikonfigurasi di VM tersebut dan koneksi keluar dicocokkan dengan aturan firewall keluar yang dikonfigurasi di VM tersebut.
- Koneksi yang diizinkan yang cocok dengan aturan firewall dengan "izinkan dan pencatatan ke log" dicatat ke log hanya satu kali. Entri log tidak diulang setiap 5 detik meskipun koneksi tetap ada.
- Koneksi yang ditolak yang cocok dengan aturan firewall dengan "ditolak dan pencatatan" akan mengulangi entri log setiap 5 detik selama ada paket yang diamati dalam koneksi yang ditolak tersebut.
Tabel ini menunjukkan perilaku logging firewall dari perspektif satu VM.
Dalam skenario saat VM1 memiliki aturan traffic masuk R1 yang cocok dengan paket dan aturan traffic keluar R2 yang juga cocok dengan paket, perilaku logging firewall adalah sebagai berikut:
VM1 memiliki Aturan Masuk R1 (mencocokkan paket) | VM1 memiliki Aturan Keluar R2 (mencocokkan paket) | Arah Koneksi | Tindakan | Log |
---|---|---|---|---|
Izinkan + Log | Izinkan | Masuk | Izinkan | Satu entri log: disposition=allow, rule=R1 |
Tolak | ||||
Izinkan + Log | ||||
Tolak + Catat | ||||
Izinkan | Izinkan | Masuk | Izinkan | Tanpa logging |
Tolak | ||||
Izinkan + Log | ||||
Tolak + Catat | ||||
Tolak + Catat | T/A | Masuk | Tolak | Satu entri log setiap 5 detik: disposition=deny, rule=R1 |
Tolak | T/A | Masuk | Tolak | Tanpa logging |
Izinkan | Izinkan + Log | Keluar | Izinkan | Satu entri log: disposition=allow, rule=R2 |
Tolak | ||||
Izinkan + Log | ||||
Tolak + Catat | ||||
Izinkan | Izinkan | Keluar | Izinkan | Tanpa Logging |
Tolak | ||||
Izinkan + Log | ||||
Tolak + Catat | ||||
T/A | Tolak + Catat | Keluar | Tolak | Satu entri log setiap 5 detik: disposition=deny, rule=R2 |
T/A | Tolak | Keluar | Tolak | Tanpa logging |
Perhatikan bahwa ingress dan egress bersifat simetris.
Berikut deskripsi mendetail tentang semantik log firewall:
Izinkan + Log (pencatatan log didukung untuk TCP dan UDP)
- Koneksi yang dimulai ke arah yang menjadi cakupan aturan akan menyebabkan satu entri log dibuat.
- Traffic balasan diizinkan karena pelacakan koneksi. Traffic balasan tidak menyebabkan logging terjadi, terlepas dari aturan firewall di arah tersebut.
- Jika koneksi berakhir dari firewall (tidak aktif selama 10 menit atau TCP RST diterima), maka paket lain di kedua arah dapat memicu logging.
- Logging didasarkan pada 5-tuple. Flag TCP tidak memengaruhi perilaku logging.
Tolak + Catat (pencatatan didukung untuk TCP dan UDP)
- Paket dibatalkan (tidak ada koneksi yang dimulai).
- Setiap paket yang sesuai dengan 5-tuple unik dicatat sebagai upaya koneksi yang gagal.
- 5-tuple yang sama dicatat lagi setiap 5 detik jika terus menerima paket.
Pemecahan masalah
Tidak dapat melihat log
Jika Anda tidak dapat melihat log aturan firewall di bagian Logs Explorer pada Trusted Cloud konsol, periksa hal-hal berikut:
Kemungkinan penyebab: Izin tidak memadai
Minta pemilik project untuk memastikan akun utama IAM Anda setidaknya memiliki peran Logs Viewer untuk project. Lihat izin untuk mengetahui informasi selengkapnya.Kemungkinan penyebab: Jaringan lama tidak didukung
Anda tidak dapat menggunakan Firewall Rules Logging di jaringan lama. Hanya jaringan VPC yang didukung.Kemungkinan penyebab: Pastikan Anda mencari di project yang benar
Karena log aturan firewall disimpan dengan project yang berisi jaringan, penting untuk memastikan Anda mencari log di project yang benar. Dengan VPC Bersama, instance VM dibuat di project layanan, tetapi menggunakan jaringan VPC Bersama yang berada di project host. Untuk skenario VPC Bersama, log aturan firewall disimpan di project host tersebut.Jika VPC Bersama terlibat, Anda memerlukan izin yang sesuai untuk project host guna melihat log aturan firewall. Meskipun instance VM itu sendiri berada di project layanan, log aturan firewall untuk instance tersebut berada di project host.
Entri log tidak ada
Kemungkinan penyebab: Koneksi mungkin tidak cocok dengan aturan firewall yang Anda harapkan
Pastikan aturan firewall yang Anda harapkan ada dalam daftar aturan firewall yang berlaku untuk instance. Gunakan konsol Trusted Cloud untuk melihat detail instance yang relevan, lalu klik tombol View details di bagian Network interfaces di halaman VM instance details. Periksa aturan firewall yang berlaku di bagian Detail firewall dan rute di halaman Detail antarmuka jaringan VM.Untuk memastikan Anda membuat aturan firewall dengan benar, tinjau Aturan firewall VPC.
Anda dapat menggunakan tcpdump di VM untuk menentukan apakah koneksi yang dikirim atau diterimanya memiliki alamat, port, dan protokol yang akan cocok dengan firewall yang Anda harapkan.
Kemungkinan penyebab: Aturan dengan prioritas lebih tinggi dan Logging Aturan Firewall dinonaktifkan mungkin berlaku
Aturan firewall dievaluasi berdasarkan prioritasnya. Dari perspektif instance VM, hanya satu aturan firewall yang berlaku untuk traffic.Aturan yang menurut Anda akan menjadi aturan yang berlaku dengan prioritas tertinggi mungkin sebenarnya bukan aturan yang berlaku dengan prioritas tertinggi. Aturan dengan prioritas lebih tinggi yang tidak mengaktifkan logging mungkin diterapkan sebagai gantinya.
Untuk memecahkan masalah, Anda dapat mengaktifkan logging sementara untuk semua aturan firewall yang mungkin berlaku untuk VM. Gunakan konsol Trusted Cloud untuk melihat detail VM yang relevan, lalu klik tombol Lihat detail di bagian Network interfaces di halaman VM instance details. Periksa aturan firewall yang berlaku di bagian Detail firewall dan rute di halaman Detail antarmuka jaringan VM, dan identifikasi aturan kustom Anda dalam daftar tersebut. Aktifkan logging untuk semua aturan firewall kustom tersebut untuk sementara.
Dengan logging yang diaktifkan, Anda dapat mengidentifikasi aturan yang berlaku. Setelah diidentifikasi, pastikan untuk menonaktifkan logging untuk semua aturan yang sebenarnya tidak memerlukannya.
Metadata tidak ada untuk beberapa entri log
Kemungkinan penyebab: Penundaan penerapan konfigurasi
Jika Anda memperbarui aturan firewall yang mengaktifkan logging firewall, mungkin perlu beberapa menit sebelum Trusted Cloud selesai menyebarkan perubahan yang diperlukan untuk mencatat traffic yang cocok dengan komponen aturan yang diperbarui.
Langkah berikutnya
- Lihat dokumentasi Logging
- Lihat dokumentasi Logging export