Aturan firewall Virtual Private Cloud (VPC) Anda dapat berisi tag jaringan dan akun layanan sumber. Lakukan tugas berikut untuk memigrasikan aturan firewall VPC yang berisi tag jaringan dan akun layanan sumber ke kebijakan firewall jaringan global:
- Evaluasi lingkungan Anda.
- Mencantumkan tag jaringan dan akun layanan yang ada.
- Buat Tag untuk setiap tag jaringan dan akun layanan sumber.
- Petakan tag jaringan dan akun layanan ke Tag yang Anda buat.
- Mengikat Tag ke instance virtual machine (VM).
- Migrasi aturan firewall VPC ke kebijakan firewall jaringan global.
- Tinjau kebijakan firewall jaringan baru.
- Menyelesaikan tugas pascamigrasi.
Sebelum memulai
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
- Pastikan Anda memiliki peran Compute Security Admin (
roles/compute.securityAdmin
).
Mengevaluasi lingkungan Anda
Sebelum memigrasikan aturan firewall VPC ke kebijakan firewall jaringan global, nilai lingkungan yang ada serta peran dan izin Identity and Access Management (IAM):
- Identifikasi jumlah aturan firewall VPC di jaringan VPC Anda.
- Catat prioritas yang terkait dengan setiap aturan firewall VPC.
- Pastikan Anda memiliki peran dan izin IAM yang diperlukan untuk membuat, mengaitkan, mengubah, dan melihat kebijakan firewall jaringan global.
Pastikan Anda memiliki peran dan izin IAM yang diperlukan untuk membuat, memperbarui, dan menghapus definisi Tag aman.
Tabel berikut memberikan ringkasan berbagai peran yang diperlukan untuk membuat dan mengelola Tag:
Nama peran Tugas yang dilakukan Peran Administrator tag ( roles/resourcemanager.tagAdmin
)Membuat, memperbarui, dan menghapus definisi tag. Untuk mengetahui informasi selengkapnya, lihat Mengelola tag. Peran Tag Viewer ( roles/resourcemanager.tagViewer
)Melihat definisi tag dan tag yang dilampirkan ke resource. Peran Pengguna Tag ( roles/resourcemanager.tagUser
)Menambahkan dan menghapus tag yang dilampirkan ke resource.
Mencantumkan tag jaringan dan akun layanan yang ada
Tentukan apakah aturan firewall VPC Anda menggunakan tag jaringan atau akun layanan, dan buat file JSON untuk menyimpan detail tag jaringan dan akun layanan yang ada.
Untuk mengekspor tag jaringan dan akun layanan di jaringan Anda ke file JSON pemetaan, gunakan perintah compute firewall-rules migrate
dengan tanda --export-tag-mapping
.
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --export-tag-mapping \ --tag-mapping-file=TAG_MAPPING_FILE
Ganti kode berikut:
NETWORK_NAME
: nama jaringan VPC yang berisi aturan firewall VPC yang ingin Anda migrasikan.TAG_MAPPING_FILE
: nama file JSON pemetaan.
Jika aturan firewall VPC Anda hanya berisi akun layanan, file JSON yang dihasilkan hanya akan berisi akun layanan. Demikian pula, jika aturan firewall VPC Anda hanya berisi tag jaringan, file JSON yang dihasilkan hanya berisi tag jaringan. Akun layanan diawali dengan sa
, dan tag jaringan tidak
memiliki awalan apa pun.
Misalnya, file JSON yang dihasilkan berikut berisi tag jaringan sql-server
dan akun layanan example@example.com
.
{"sql-server": null, "sa:example@example.com": null}
Membuat Tag
Berdasarkan tag jaringan dan akun layanan sumber yang tercantum dalam file pemetaan, Anda harus membuat Tag aman yang sesuai di jaringan.
Tag aman baru berfungsi sebagai pengganti tag jaringan dan akun layanan serta mempertahankan konfigurasi jaringan asli setelah migrasi.
Sebagai akun utama dengan peran Administrator Tag, untuk setiap tag jaringan dan akun layanan, buat pasangan nilai kunci Tag aman yang sesuai.
gcloud resource-manager tags keys create TAG_KEY \ --parent organizations/ORGANIZATION_ID \ --purpose GCE_FIREWALL \ --purpose-data network=PROJECT_ID/NETWORK_NAME gcloud resource-manager tags values create TAG_VALUE \ --parent ORGANIZATION_ID/TAG_KEY
Ganti kode berikut:
TAG_KEY
: nama Kunci tag.ORGANIZATION_ID
: ID organisasi Anda.PROJECT_ID
: ID project Anda.NETWORK_NAME
: nama jaringan VPC Anda.TAG_VALUE
: nilai yang akan ditetapkan ke Kunci tag.
Misalnya, jika Anda memiliki aturan firewall VPC dengan tag jaringan bernama sql-server
, buat pasangan nilai kunci Tag aman yang sesuai dari sql-server:production
.
gcloud resource-manager tags keys create sql-server \ --parent organizations/123456 \ --purpose GCE_FIREWALL \ --purpose-data network=test-project/test-network gcloud resource-manager tags values create production \ --parent 123456/sql-server
Memetakan tag jaringan dan akun layanan ke Tag
Setelah membuat Tag aman yang diatur IAM untuk setiap tag jaringan dan akun layanan yang digunakan oleh aturan firewall VPC, Anda harus memetakan Tag ke tag jaringan dan akun layanan yang sesuai dalam file JSON pemetaan.
Edit file JSON untuk memetakan tag jaringan dan akun layanan ke Tag aman yang sesuai.
{"sql-server": "tagValues/yyyyy", "sa:example@example.com": "tagValues/zzzzz"}
Misalnya, file JSON berikut memetakan tag jaringan sql-server
ke nilai Tag kunci sql-server
dan akun layanan example@example.com
ke nilai Tag kunci example@example.com
:
{"sql-server": "tagValues/production", "sa:example@example.com": "tagValues/example"}
Mengikat Tag ke VM
Berdasarkan file JSON pemetaan tag, tautkan Tag aman yang baru dibuat ke VM tempat tag jaringan yang ada dilampirkan:
Sebagai akun utama dengan peran Administrator Tag, lakukan hal berikut:
- Tinjau izin yang diperlukan untuk melampirkan Tag aman ke resource Google Cloud .
- Tetapkan peran Pengguna Tag ke akun utama yang menggunakan Tag aman dan mengikat Tag ke VM.
Sebagai akun utama dengan peran Pengguna Tag, gunakan perintah
compute firewall-rules migrate
dengan flag--bind-tags-to-instances
:gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --bind-tags-to-instances \ --tag-mapping-file=TAG_MAPPING_FILE
Ganti kode berikut:
NETWORK_NAME
: nama jaringan VPC Anda.TAG_MAPPING_FILE
: nama file JSON pemetaan.
Memigrasikan aturan firewall VPC ke kebijakan firewall jaringan global
Migrasikan aturan firewall VPC Anda ke kebijakan firewall jaringan global. Gunakan perintah compute-firewall-rules migrate
.
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --target-firewall-policy=POLICY_NAME \ --tag-mapping-file=TAG_MAPPING_FILE
Ganti kode berikut:
NETWORK_NAME
: nama jaringan VPC yang berisi aturan firewall VPC yang ingin Anda migrasikan.POLICY_NAME
: nama kebijakan firewall jaringan global yang akan dibuat selama migrasi.
Mengecualikan aturan firewall dari migrasi
Untuk mengecualikan aturan firewall tertentu dari migrasi, gunakan perintah gcloud beta compute
firewall-rules migrate
dengan flag --exclusion-patterns-file
:
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --target-firewall-policy=POLICY_NAME \ --exclusion-patterns-file=EXCLUSION_PATTERNS_FILE
Ganti kode berikut:
NETWORK_NAME
: nama jaringan VPC yang berisi aturan firewall VPC yang ingin Anda migrasikan.POLICY_NAME
: nama kebijakan firewall jaringan global yang akan dibuat selama migrasi.EXCLUSION_PATTERNS_FILE
: nama file yang berisi ekspresi reguler yang menentukan pola penamaan firewall VPC yang akan dikecualikan dari migrasi. Pastikan untuk menentukan jalur lengkap file. Aturan firewall yang cocok dengan pola yang ditentukan akan dilewati.Saat menentukan pola pengecualian, pertimbangkan hal berikut:
- Setiap ekspresi reguler harus berada di barisnya sendiri dan mewakili satu pola penamaan firewall.
- Ekspresi reguler tidak berisi spasi kosong di awal atau di akhir.
Melihat aturan firewall yang dikecualikan
Berdasarkan pola penamaan aturan firewall yang dikecualikan, alat migrasi tidak
memigrasikan beberapa aturan firewall, seperti aturan firewall
Google Kubernetes Engine (GKE). Untuk mengekspor daftar pola penamaan aturan firewall yang dikecualikan,
gunakan perintah gcloud beta compute firewall-rules migrate
dengan
flag --export-exclusion-patterns
dan --exclusion-patterns-file
.
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --target-firewall-policy=POLICY_NAME \ --exclusion-patterns-file=EXCLUSION_PATTERNS_FILE \ --export-exclusion-patterns
Ganti kode berikut:
NETWORK_NAME
: nama jaringan VPC yang berisi aturan firewall VPC yang ingin Anda migrasikan.POLICY_NAME
: nama kebijakan firewall jaringan global yang akan dibuat selama migrasi.EXCLUSION_PATTERNS_FILE
: jalur file tempat pola penamaan aturan firewall yang dikecualikan berikut diekspor.gke-(.+)-ipv6-all gke-(.+)-(.+)-((master)|(vms)|(all)|(inkubelet)|(exkubelet)|(mcsd)) k8s-fw-(l7-)?(.+) k8s-(.+)-((node)|(http)|(node-http))-hc (.+)-hc k8s2-(.+)-(.+)-(.+)-(.+)(-fw)? k8s2-(.+)-l4-shared-hc-fw gke((gw)|(mcg))1-l7-(.+)-(.+)
Untuk memigrasikan aturan firewall yang dikecualikan yang cocok dengan pola tertentu,
hapus pola dari daftar yang diekspor dan jalankan perintah gcloud beta compute
firewall-rules migrate
dengan flag --exclusion-patterns-file
.
Memaksa migrasi sambil mempertahankan urutan evaluasi
Selama migrasi, jika urutan evaluasi aturan firewall yang dikecualikan berada di antara urutan evaluasi aturan firewall yang ditentukan pengguna, migrasi akan gagal.Hal ini terjadi karena aturan firewall yang dikecualikan tidak dimigrasikan, dan alat migrasi tidak dapat mempertahankan urutan evaluasi asli aturan yang ditentukan pengguna dalam kebijakan firewall jaringan baru.
Misalnya, jika aturan firewall Anda memiliki prioritas berikut, migrasi akan gagal.
- Aturan yang ditentukan pengguna dengan prioritas 100
- Aturan yang dikecualikan dengan prioritas 200
- Aturan yang ditentukan pengguna dengan prioritas 300
Untuk memaksa alat migrasi memigrasikan aturan yang ditentukan pengguna sekaligus mempertahankan urutan evaluasi aslinya dan mengabaikan aturan firewall yang dikecualikan, gunakan perintah gcloud beta compute firewall-rules migrate
dengan flag --force
.
gcloud beta compute firewall-rules migrate \ --source-network=NETWORK_NAME \ --target-firewall-policy=POLICY_NAME \ --force
Ganti kode berikut:
NETWORK_NAME
: nama jaringan VPC yang berisi aturan firewall VPC yang ingin Anda migrasikan.POLICY_NAME
: nama kebijakan firewall jaringan global yang akan dibuat selama migrasi.
Meninjau kebijakan firewall jaringan global yang baru
Sebelum mengaitkan kebijakan yang baru dibuat ke jaringan VPC, Google menyarankan agar Anda meninjau kebijakan untuk memastikan bahwa proses migrasi telah selesai dengan akurat.
Pastikan hal berikut:
Konfigurasi aturan kebijakan firewall sudah benar, dan komponen aturan berikut dimigrasikan dengan benar untuk setiap aturan:
- Prioritas relatif
- Direction of traffic
- Tindakan jika ada kecocokan
- Setelan log
- Parameter target
- Parameter sumber (untuk aturan masuk)
- Parameter tujuan (untuk aturan keluar)
- Batasan protokol dan port
Verifikasi apakah Tag aman terpasang ke VM yang benar. Gunakan perintah
resource-manager tags bindings list
.gcloud resource-manager tags bindings list \ --location=ZONE_ID \ --parent //compute.googleapis.com/projects/PROJECT_ID/zones/ZONE_ID/instances/INSTANCE_NAME \ --effective
Ganti kode berikut:
ZONE_ID
: zona VM Anda.PROJECT_ID
: ID project Anda.INSTANCE_NAME
: nama VM Anda.
Tugas pascamigrasi
Untuk mengaktifkan dan menggunakan kebijakan firewall jaringan global yang baru, selesaikan tugas pascamigrasi. Untuk informasi selengkapnya, lihat Tugas pascamigrasi.
Langkah berikutnya
- Pelajari lebih lanjut cara memigrasikan aturan firewall VPC.
- Migrasikan aturan firewall VPC tanpa dependensi apa pun.