Halaman ini menjelaskan cara melampirkan tag Resource Manager ke kebijakan Secure Web Proxy. Tag Resource Manager adalah label yang dapat Anda lampirkan ke berbagai Google Cloud resource, seperti instance virtual machine (VM). Anda dapat menggunakan tag untuk menerapkan kontrol akses bersyarat di seluruh jaringan dengan label organisasi yang ada.
Dengan menggunakan tag ini, Anda dapat melakukan tindakan berikut:
Segmentasikan beban kerja: Anda dapat mengidentifikasi lingkungan yang berbeda secara unik seperti
productionataudevelopmentdan jenis layanan sepertifrontendataudatabase.Memusatkan kontrol akses: Anda dapat mendasarkan kebijakan Secure Web Proxy pada tag ini. Misalnya, Anda dapat membuat aturan kebijakan yang menyatakan: "Hanya traffic yang berasal dari resource yang memiliki tag
tag segment=productionyang dapat mengakses sekumpulan URL tertentu."
Halaman ini menunjukkan cara melakukan hal berikut:
- Membuat instance Secure Web Proxy dengan kebijakan kosong
- Membuat dan melampirkan tag Resource Manager ke instance VM
- Membuat aturan Secure Web Proxy
- Menguji konektivitas seluruh konfigurasi Secure Web Proxy Anda
Sebelum memulai
Konfigurasi langkah-langkah penyiapan awal.
Minta administrator organisasi memberi Anda peran yang diperlukan untuk membuat dan memperbarui tag.
Verifikasi bahwa Anda telah menginstal Google Cloud CLI versi 406.0.0 atau yang lebih baru:
gcloud version | head -n1Jika Anda telah menginstal gcloud CLI versi sebelumnya, update versinya:
gcloud components update --version=406.0.0
Membuat instance Secure Web Proxy dengan kebijakan kosong
Untuk membuat instance Secure Web Proxy, Anda harus membuat kebijakan keamanan kosong terlebih dahulu, lalu membuat proxy web yang menggunakan kebijakan tersebut.
Membuat kebijakan keamanan kosong
Konsol
Di konsol Google Cloud , buka halaman SWP Policies.
Klik Buat kebijakan.
Di kolom Name, masukkan nama untuk kebijakan, seperti
myswppolicy.Di kolom Deskripsi, masukkan deskripsi untuk kebijakan, seperti
My new swp policy.Untuk Regions, pilih region tempat Anda ingin membuat kebijakan, seperti
us-central1.Klik Create.
Cloud Shell
Gunakan editor teks pilihan Anda untuk membuat file
policy.yaml.Tambahkan kode berikut ke file
policy.yamlyang Anda buat:name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTIONGanti kode berikut:
PROJECT_NAME: nama project AndaREGION: region tempat kebijakan Anda dibuat, sepertius-central1POLICY_NAME: nama kebijakan AndaPOLICY_DESCRIPTION: deskripsi untuk kebijakan Anda
Impor kebijakan keamanan menggunakan perintah
gcloud network-security gateway-security-policies import:gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Membuat proxy web
Konsol
Di konsol Google Cloud , buka halaman Web Proxies.
Klik Buat proxy web yang aman.
Di kolom Nama, masukkan nama untuk proxy web, seperti
myswp.Di kolom Deskripsi, masukkan deskripsi untuk proxy web, seperti
My new swp.Untuk Routing mode, pilih opsi Explicit.
Untuk Region, pilih region tempat Anda ingin membuat proxy web, seperti
us-central1.Untuk Network, pilih jaringan tempat Anda ingin membuat proxy web.
Untuk Subnetwork, pilih VPC subnet yang sebelumnya Anda buat sebagai bagian dari langkah penyiapan awal.
Opsional: Di kolom Alamat IP proxy web, masukkan alamat IP Secure Web Proxy.
Anda dapat memasukkan alamat IP dari rentang alamat IP Secure Web Proxy yang berada di subnetwork yang Anda buat pada langkah sebelumnya. Jika Anda tidak memasukkan alamat IP, instance Secure Web Proxy Anda akan otomatis memilih alamat IP dari subnetwork yang dipilih.
Untuk Sertifikat, pilih sertifikat yang ingin Anda gunakan untuk membuat proxy web.
Untuk Kebijakan, pilih kebijakan yang Anda buat untuk mengaitkan proxy web.
Klik Create.
Cloud Shell
Gunakan editor teks pilihan Anda untuk membuat file
gateway.yaml.Tambahkan kode berikut ke file
gateway.yaml:name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNETWORK addresses: [GATEWAY_IP_ADDRESS] scope: samplescopeGanti kode berikut:
GATEWAY_NAME: nama instance Secure Web Proxy iniGATEWAY_PORT_NUMBERS: daftar nomor port untuk gateway ini, seperti[80,443]CERTIFICATE_URLS: daftar URL sertifikat SSLSUBNETWORK: Subnet VPC yang sebelumnya Anda buat sebagai bagian dari langkah penyiapan awalGATEWAY_IP_ADDRESS: daftar opsional alamat IP untuk instance Secure Web Proxy Anda dalam subnetwork proxy yang sebelumnya Anda buat di langkah penyiapan awalJika Anda memilih untuk tidak mencantumkan alamat IP, kosongkan kolom agar proxy web memilih alamat IP untuk Anda.
Buat instance Secure Web Proxy menggunakan perintah
gcloud network-services gateways import:gcloud network-services gateways import GATEWAY_NAME \ --source=gateway.yaml \ --location=REGION
Menguji konektivitas
Untuk menguji konektivitas, gunakan perintah curl dari instance virtual machine (VM) mana pun dalam jaringan Virtual Private Cloud (VPC) Anda:
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Jika semuanya berfungsi dengan benar, instance Secure Web Proxy Anda akan menampilkan kode status 403 Forbidden. Error ini mengonfirmasi hal berikut:
Instance Secure Web Proxy telah berhasil di-deploy dan secara aktif menerima traffic.
Kebijakan Secure Web Proxy dengan benar menerapkan postur keamanan default untuk menolak semua traffic hingga Anda menentukan aturan
allowtertentu di bagian berikutnya.
Membuat dan melampirkan tag Resource Manager
Membuat kunci dan nilai tag yang aman
Contoh: Untuk membuat tag untuk lingkungan terbatas, ikuti langkah-langkah berikut:
Buat kunci tag (
access-level) menggunakan perintahgcloud resource-manager tags keys createdengan tujuan yang ditetapkan keGCE_FIREWALL.Ambil ID kunci tag dari output perintah pembuatan atau dengan menggunakan perintah
gcloud resource-manager tags keys list. Anda memerlukan ID ini untuk menautkan nilai tag ke kunci tag tertentu ini.Buat nilai tag (
restricted) menggunakan perintahgcloud resource-manager tags values create, dengan menentukan ID kunci tag sebagai induk.
# Create the tag key # The output provides a unique ID, such as "tagKeys/1234567890" gcloud resource-manager tags keys create "access-level" \ --parent="organizations/1234567890" \ --purpose="GCE_FIREWALL" \ --purpose-values="execution_env=ANS" # Create the tag value and connect it to the key # The "--parent" flag identifies to which key this value belongs gcloud resource-manager tags values create "restricted" \ --parent="tagKeys/1234567890"Melampirkan tag ke instance VM
Dengan melampirkan tag ini, traffic keluar dari instance VM Anda dikaitkan dengan identitas tag tertentu, yang memungkinkan proxy mengenali workload dan menerapkan aturan kebijakan keamanan Anda.
Contoh: Anggaplah Anda memiliki instance VM bernama
internal-tool. Anda dapat melampirkan nilai tagrestrictedkeinternal-toolmenggunakan perintahgcloud resource-manager tags bindings create. Penetapan tag ini memungkinkan proxy Anda mengidentifikasi traffic yang berasal dari instance VMinternal-tool.# Attach the "restricted" tag to a specific VM instance gcloud resource-manager tags bindings create \ --parent="//[compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/internal-tool](https://compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/internal-tool)" \ --tag-value="tagValues/987654321"
Membuat aturan Secure Web Proxy
Konsol
Di konsol Google Cloud , buka halaman SWP Policies.
Klik nama kebijakan Anda, seperti
myswppolicy.Klik Tambahkan aturan.
Untuk setiap aturan, lakukan hal berikut:
Untuk Prioritas, masukkan urutan evaluasi numerik untuk aturan. Aturan dievaluasi dari prioritas tertinggi hingga terendah, dengan
0adalah prioritas tertinggi.Di kolom Name, masukkan nama untuk aturan.
Di kolom Deskripsi, masukkan deskripsi untuk aturan.
Untuk Tindakan, pilih salah satu opsi berikut:
- Izinkan: untuk mengizinkan permintaan koneksi yang cocok dengan aturan.
- Tolak: untuk menolak permintaan koneksi yang cocok dengan aturan.
Untuk kolom Status, pilih salah satu opsi berikut untuk penerapan aturan:
- Diaktifkan: untuk menerapkan aturan pada instance Secure Web Proxy Anda.
- Dinonaktifkan: agar tidak menerapkan aturan pada instance Secure Web Proxy Anda.
Di bagian Pencocokan sesi, tentukan ID unik tag yang Anda buat di bagian sebelumnya. Contoh:
sessionMatcher: "source.matchTag('TAG_VALUE') && host() == 'example.com'"Untuk mengetahui informasi selengkapnya tentang sintaksis untuk
SessionMatcher, lihat Referensi bahasa pencocok CEL.Di bagian Pencocokan aplikasi, tentukan kriteria untuk mencocokkan permintaan.
Klik Tambahkan Aturan.
Cloud Shell
Gunakan editor teks pilihan Anda untuk membuat file
rule.yaml.Untuk mengizinkan akses ke URL dari tag yang diperlukan, tambahkan kode berikut ke file
rule.yaml:name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME description: RULE_DESCRIPTION enabled: true priority: RULE_PRIORITY sessionMatcher: CEL_EXPRESSION basicProfile: ALLOWGanti kode berikut:
RULE_NAME: nama aturan iniRULE_DESCRIPTION: deskripsi untuk aturanRULE_PRIORITY: prioritas aturan ini; angka yang lebih rendah sesuai dengan prioritas yang lebih tinggiCEL_EXPRESSION: ekspresi Common Expression Language (CEL). Untuk mengetahui informasi selengkapnya, lihat Referensi bahasa pencocok CEL.
Misalnya, untuk mengizinkan akses ke
example.comdari tag yang diperlukan, tambahkan barissessionMatcherberikut ke file YAML:sessionMatcher: "source.matchTag('TAG_VALUE') && host() == 'example.com'"Ganti
TAG_VALUEdengan tag yang ingin Anda izinkan. Pastikan tag mengikuti format ID resource numerik; misalnya,tagValues/567890123456.Impor aturan yang Anda buat menggunakan perintah
gcloud network-security gateway-security-policies rules import:gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=RULE_FILE.yaml \ --location=REGION \ --gateway-security-policy=POLICY_NAME
Menguji konfigurasi kebijakan
Anda dapat menguji konektivitas lagi untuk memvalidasi bahwa kebijakan Secure Web Proxy Anda, yang mengandalkan tag Pengelola Resource untuk identitas, berfungsi sebagaimana mestinya.
Untuk menguji konektivitas, gunakan perintah curl dari VM mana pun yang terkait dengan tag TAG_VALUE yang sesuai.
curl -x https://IPv4_ADDRESS:443 http://example.com
--proxy-insecure
Ganti IPv4_ADDRESS dengan alamat IPv4 instance Secure Web Proxy Anda.
Jika semuanya berfungsi dengan benar, Anda akan menerima kode status 200 OK atau
403 Forbidden. Respons ini mengonfirmasi hasil utama berikut:
Keberhasilan berbasis tag: kode status
200 OKmemvalidasi bahwa traffic dari VM dengan tag Resource Manager yang benar terpasang padanya cocok dengan aturan kebijakan dan diizinkan melalui proxy. Kecocokan terverifikasi ini menghasilkan koneksi yang berhasil.Penolakan berbasis tag: kode status
403 Forbiddenmemverifikasi bahwa traffic dari VM tanpa tag yang ditentukan atau dengan tag yang salah ditolak aksesnya dengan benar oleh kebijakan. Penegakan ini membuktikan bahwa segmentasi dan penegakan berbasis tag Anda berfungsi sebagaimana yang dimaksud.