Terraform adalah alat open source dari HashiCorp yang memungkinkan Anda mengelola infrastruktur cloud melalui kode. Sebagai salah satu penyedia Terraform utama, Alibaba Cloud telah merilis berbagai resource dan data source terkait Security Center di Terraform. Anda dapat menggunakan Terraform untuk mengelola resource guna memenuhi kebutuhan bisnis seperti deployment otomatis dan peningkatan berkelanjutan infrastruktur cloud. Topik ini menjelaskan cara mengaktifkan Security Center melalui Terraform.
Anda dapat menjalankan kode contoh dengan sekali klik.
Persiapan
Untuk mengurangi risiko kompromi Akun Alibaba Cloud, kami menyarankan penggunaan RAM user dan pembuatan Pasangan Kunci Akses untuk mereka.
Terapkan kebijakan berikut kepada RAM user untuk memberikan izin minimum dalam mengelola resource pada contoh ini.
Kebijakan ini memungkinkan Pengguna RAM untuk mendeskripsikan, memodifikasi, dan membuat sumber daya terkait Security Center. Sesuaikan aksi dan cakupan sumber daya dalam kebijakan sesuai kebutuhan Anda.
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "sas:Describe*", // Mengizinkan melihat informasi terkait Security Center "sas:CreateInstance", // Mengizinkan membuat instans Security Center "sas:UpdateInstance", // Mengizinkan upgrade instans Security Center "sas:Modify*" // Tambahkan parameter ini jika perlu memodifikasi pengaturan lainnya ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ecs:DescribeInstances" // Mungkin memerlukan izin untuk mengkueri instans ECS guna dikaitkan dengan Security Center ], "Resource": "*" } ] }Siapkan lingkungan Terraform menggunakan salah satu metode berikut:
Explorer: Terraform Explorer yang disediakan oleh Alibaba Cloud memungkinkan developer menjalankan Terraform secara online tanpa instalasi. Metode ini ideal untuk menggunakan dan men-debug Terraform secara efisien, nyaman, dan tanpa biaya.
Cloud Shell: Alibaba Cloud Cloud Shell telah dipra-instal dengan Terraform dan kredensial identitas yang telah dikonfigurasi, sehingga Anda dapat langsung menjalankan perintah Terraform. Metode ini ideal untuk menggunakan dan men-debug Terraform secara efisien, nyaman, dan dengan biaya rendah.
Instal dan konfigurasi Terraform: Metode ini paling cocok untuk skenario dengan konektivitas jaringan yang buruk atau ketika diperlukan lingkungan pengembangan kustom.
Resource yang diperlukan
alicloud_threat_detection_instance: Resource ini digunakan untuk mengonfigurasi dan mengelola layanan deteksi ancaman Alibaba Cloud.
Aktifkan Security Center
Setelah Anda mengaktifkan instans Security Center, pastikan untuk mengelola siklus hidupnya secara hati-hati guna menghindari biaya yang tidak perlu.
Contoh kode berikut menunjukkan cara mengaktifkan edisi Enterprise Security Center dengan subscription di wilayah Hangzhou (cn-hangzhou).
Buat dan masuk ke direktori eksekusi.
mkdir /usr/local/terraform cd /usr/local/terraformCatatanAnda harus membuat direktori eksekusi untuk setiap proyek Terraform.
Buat file terraform.tf dan konfigurasikan isinya.
vim terraform.tfIsi file terraform.tf adalah sebagai berikut:
# Konfigurasi provider sebagai Alibaba Cloud dan atur wilayah ke Hangzhou (cn-hangzhou) provider "alicloud" { region = "cn-hangzhou" } # Definisikan nama resource. Nilai default adalah "terraform-example" variable "name" { default = "terraform-example" } # Kode versi. Nilai default adalah "level2" (edisi Enterprise) variable "version_code" { default = "level2" } # Jumlah server yang akan dibeli. Nilai default adalah "30" variable "buy_number" { default = "30" } # Metode penagihan. Nilai default adalah "Subscription" variable "payment_type" { default = "Subscription" } # Durasi langganan. Nilai default adalah "1" (Satuan: bulan) variable "period" { default = "1" } # Status perpanjangan. Nilai default adalah "ManualRenewal" variable "renewal_status" { default = "ManualRenewal" } # Kapasitas penyimpanan log analisis. Nilai default adalah "100" (Satuan: GB) variable "sas_sls_storage" { default = "100" } # Kapasitas data backup anti-ransomware. Nilai default adalah "100" (Satuan: GB) variable "sas_anti_ransomware" { default = "100" } # Saklar Pencegahan perusakan web. Nilai default adalah "1" (Ya) variable "sas_webguard_boolean" { default = "1" } # Kuota Pencegahan perusakan web. Nilai default adalah "100" variable "sas_webguard_order_num" { default = "100" } # Saklar honeypot cloud. Nilai default adalah "1" (Ya) variable "honeypot_switch" { default = "1" } # Kuota honeypot cloud. Nilai default adalah "32" variable "honeypot" { default = "32" } # Saklar deteksi file berbahaya. Nilai default adalah "1" (Ya) variable "sas_sdk_switch" { default = "1" } # Kuota deteksi file berbahaya. Nilai default adalah "1000" (Satuan: 10.000 kali) variable "sas_sdk" { default = "1000" } # Jumlah pemindaian gambar kontainer. Ukuran langkah adalah 20, artinya hanya kelipatan 20 yang dapat dimasukkan variable "container_image_scan_new" { default = "100" } # Saklar Agentic SOC variable "threat_analysis_switch" { default = "1" } # Data log Agentic SOC. Increment adalah 100, artinya hanya kelipatan 100 yang dapat dimasukkan variable "threat_analysis_flow" { default = "100" } # Kapasitas penyimpanan log Agentic SOC. Nilai default adalah "1000" (Satuan: GB) variable "threat_analysis_sls_storage" { default = "1000" } # Resource deteksi ancaman yang didefinisikan oleh variabel resource "alicloud_threat_detection_instance" "default" { version_code = var.version_code buy_number = var.buy_number payment_type = var.payment_type period = var.period renewal_status = var.renewal_status sas_sls_storage = var.sas_sls_storage sas_anti_ransomware = var.sas_anti_ransomware container_image_scan_new = var.container_image_scan_new sas_webguard_boolean = var.sas_webguard_boolean sas_webguard_order_num = var.sas_webguard_order_num honeypot_switch = var.honeypot_switch honeypot = var.honeypot sas_sdk_switch = var.sas_sdk_switch sas_sdk = var.sas_sdk threat_analysis_switch = var.threat_analysis_switch threat_analysis_flow = var.threat_analysis_flow threat_analysis_sls_storage = var.threat_analysis_sls_storage }Parameter
Wajib
Deskripsi
Nilai contoh
modify_type
Tidak
Jika Anda perlu melakukan peningkatan dan penurunan Instans, parameter ini wajib ditentukan. Tambahkan parameter ini ke kode di atas. Nilai yang valid:
Upgrade: Upgrade Security Center.
Downgrade: Downgrade Security Center.
Upgrade
version_code
Ya
Edisi Security Center. Nilai yang valid:
level7: Anti-virus
level3: Advanced
level2: Enterprise
level8: Ultimate
level10: Value-added Plan
level2
buy_number
Tidak
Jumlah server yang ingin Anda lindungi.
CatatanParameter ini wajib hanya ketika version_code diatur ke level3, level2, atau level8.
30
v_core
Tidak
Jumlah virtual CPU (vCPU) dari server yang ingin Anda lindungi.
CatatanParameter ini wajib hanya ketika version_code diatur ke level7 atau level8.
100
payment_type
Ya
Metode penagihan. Nilai yang valid:
Subscription
Subscription
period
Tidak
Durasi langganan. Satuan: bulan.
Nilai yang valid: 1, 6, 12, 24, 36, 60.
1
renewal_status
Tidak
Mode perpanjangan. Nilai yang valid:
AutoRenewal: Perpanjangan otomatis.
ManualRenewal (default): Perpanjangan manual.
ManualRenewal
renewal_period
Tidak
Durasi perpanjangan otomatis. Satuan: bulan.
CatatanParameter ini wajib ketika renewal_status diatur ke AutoRenewal.
12
sas_sls_storage
Tidak
Kapasitas penyimpanan log. Satuan: GB.
Nilai yang valid: 0 hingga 600.000. Nilai harus kelipatan 10.
CatatanUntuk memenuhi persyaratan Undang-Undang Keamanan Siber bahwa log harus disimpan minimal 180 hari, kami menyarankan Anda mengonfigurasi kapasitas penyimpanan log sebesar 50 GB untuk setiap server.
100
sas_anti_ransomware
Tidak
Kapasitas cadangan data untuk anti-ransomware. Satuan: GB.
Nilai yang valid: 10 hingga 9.999.999.999. Harus kelipatan 10.
100
container_image_scan_new
Tidak
Pemindaian gambar kontainer. Kami menyarankan Anda mengatur parameter ini sesuai jumlah gambar yang perlu dideteksi setiap bulan. Satuan: kali.
Nilai yang valid: 0 hingga 200.000. Harus kelipatan 20.
CatatanSecurity Center mengidentifikasi gambar berdasarkan nilai digest uniknya. Jika nilai digest tidak berubah, hanya pemindaian pertama yang mengonsumsi satu kuota pemindaian gambar kontainer. Jika berubah, pemindaian baru akan mengonsumsi kuota tambahan.
Misalnya, jika Anda berencana memindai 10 gambar dan memperkirakan nilai digest berubah 20 kali selama masa langganan, atur kuota menjadi 30. Kuota total ini terdiri dari jumlah gambar ditambah perkiraan perubahan nilai digest.
100
sas_webguard_boolean
Tidak
Menentukan apakah fitur Pencegahan perusakan web diaktifkan. Nilai yang valid:
1: Ya
0: Tidak
1
sas_webguard_order_num
Tidak
Kuota untuk Pencegahan perusakan web. Satuan: kali.
Nilai yang valid: 0 hingga 9.999.
CatatanParameter ini wajib hanya ketika sas_webguard_boolean diatur ke 1.
100
sas_sc
Tidak
Menentukan apakah dasbor keamanan diaktifkan. Nilai yang valid:
CatatanParameter ini tidak didukung di wilayah luar Tiongkok, dan hanya didukung ketika version_code diatur ke level3, level2, atau level8.
true: Ya
false: Tidak
false
honeypot_switch
Tidak
Menentukan apakah fitur honeypot cloud diaktifkan. Nilai yang valid:
1: Ya
2: Tidak
1
honeypot
Tidak
Kuota untuk fitur honeypot cloud. Satuan: kali.
Nilai yang valid: 20 hingga 500.
CatatanParameter ini wajib hanya ketika honeypot_switch diatur ke 1.
20
sas_sdk_switch
Tidak
Menentukan apakah deteksi file berbahaya diaktifkan. Nilai yang valid:
1: Ya
0: Tidak
1
sas_sdk
Tidak
Jumlah kali deteksi file berbahaya dilakukan. Satuan: 10.000 kali.
Nilai yang valid: 10 hingga 9.999.999.999. Nilai harus kelipatan 10.
10
Threat_analysis_switch_1
Tidak
Menentukan apakah Agentic SOC diaktifkan. Nilai yang valid:
0: Tidak
1: Ya
1
Threat_analysis_flow
Tidak
Data log yang ditambahkan untuk Agentic SOC. Satuan: GB/hari.
Nilai yang valid: 100 hingga 9.999.999.999. Nilai harus kelipatan 100.
CatatanParameter ini wajib hanya ketika Threat_analysis_switch_1 diatur ke 1.
100
Threat_analysis_sls_storage
Tidak
Kapasitas penyimpanan log untuk Agentic SOC. Satuan: GB.
Nilai yang valid: 0 hingga 9.999.999.999. Nilai harus kelipatan 1.000.
1000
Jalankan perintah
terraform inituntuk menginisialisasi konfigurasi.Jika pesan berikut dikembalikan, Terraform telah diinisialisasi:

Jalankan perintah
terraform applyuntuk membuat instans Security Center. Selama eksekusi, masukkanyessaat diminta dan tekan tombol Enter. Tunggu hingga perintah selesai. Jika pesan berikut muncul, otorisasi telah selesai.Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value:Jika pesan berikut dikembalikan, Security Center telah diaktifkan:
Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
Verifikasi hasil
Jalankan perintah Terraform show
Jalankan perintah berikut untuk mengkueri detail resource yang dibuat dengan Terraform:
terraform show
Gunakan konsol
Login ke Konsol Security Center dan periksa apakah edisi Enterprise beserta fitur terkait telah diaktifkan.

Referensi
Untuk informasi lebih lanjut tentang Terraform, lihat Pengenalan Terraform.