Gunakan petunjuk ini untuk mengonfigurasi Cloud IDS untuk aplikasi Anda. Untuk informasi konseptual tentang Cloud IDS, lihat ringkasan Cloud IDS.
Sebelum memulai
Sebelum mengonfigurasi Cloud IDS, Anda harus menyelesaikan persyaratan berikut.
Menyiapkan izin IAM untuk Cloud IDS
Cloud IDS memiliki beberapa peran Identity and Access Management (IAM). Anda dapat menggunakan contoh perintah untuk memberikan izin IAM yang diperlukan kepada akun utama.
Peran Admin Cloud IDS (
roles/ids.admin
). Entity utama project dengan peran ini dapat membuat endpoint IDS. Jika Anda adalah pemilik project, Anda sudah memiliki izin ini dan tidak memerlukan peranids.admin
eksplisit untuk membuat endpoint IDS.gcloud projects add-iam-policy-binding PROJECT_ID \ --role=roles/ids.admin \ --member=user:USER_NAME ;
Peran ini memungkinkan operasi berikut:
- Buat endpoint
- Hapus endpoint
- Mendapatkan endpoint
- Mencantumkan endpoint
Peran Cloud IDS Viewer (
roles/ids.viewer
). Pengakses lihat-saja dan akun utama project dengan peran ini memiliki akses hanya baca ke endpoint IDS. Jika Anda adalah pemilik, editor, atau pelihat project, berarti Anda sudah memiliki izin ini.gcloud projects add-iam-policy-binding PROJECT_ID \ --role=roles/ids.viewer \ --member=user:USER_NAME ;
Peran pengguna duplikasi paket komputasi (
roles/compute.packetMirroringUser
). Peran diperlukan untuk melampirkan kebijakan duplikasi paket ke endpoint IDS. Jika memiliki perancompute.securityAdmin
ataucontainer.serviceAgent
, Anda sudah memiliki izin ini. Untuk mengetahui informasi selengkapnya tentang peran ini, baca referensi peran dasar dan standar IAM.gcloud projects add-iam-policy-binding PROJECT_ID \ --role=roles/compute.packetMirroringUser \ --member=user:USER_NAME ;
Peran Logs Viewer (
roles/logging.viewer
). Peran tambahan diperlukan untuk melihat ancaman terbaru, yang merupakan fitur inti penting Cloud IDS. Untuk mengetahui informasi selengkapnya tentang peran ini, lihat Panduan kontrol akses.gcloud projects add-iam-policy-binding PROJECT_ID \ --role=roles/logging.viewer \ --member=user:USER_NAME ;
Selain itu, Anda memerlukan izin lain-lain berikut:
compute.regions.list
compute.zones.list
Menyiapkan akses layanan pribadi
Untuk membuat endpoint IDS, Anda harus mengaktifkan Service Networking API, dan menyiapkan peering jaringan untuk jaringan Virtual Private Cloud (VPC). Langkah ini hanya perlu dilakukan sekali per project pelanggan dan dapat dilakukan dengan menggunakan konsol Google Cloud atau Google Cloud CLI. Saat Anda mengalokasikan rentang alamat IP, rentang tersebut harus berupa rentang alamat IP pribadi yang sesuai dengan RFC 1918 (10.0.0.0/8
, 172.16.0.0/12
, atau 192.168.0.0/16
), atau pembuatan endpoint akan gagal.
Gunakan langkah-langkah berikut untuk menyiapkan akses layanan pribadi:
Aktifkan Service Networking API menggunakan perintah berikut. Ganti
PROJECT_ID
dengan project ID Anda.gcloud services enable servicenetworking.googleapis.com \ --project=PROJECT_ID
Jika belum mengalokasikan rentang alamat IP di jaringan, Anda harus mengalokasikan rentang IP untuk layanan Google di jaringan VPC Anda. Dalam perintah berikut, Anda dapat menghilangkan kolom
addresses
dan Google Cloud akan memilih rentang alamat yang tidak digunakan di jaringan VPC Anda:gcloud compute addresses create RESERVED_RANGE_NAME \ --global \ --purpose=VPC_PEERING \ --addresses=192.168.0.0 \ --prefix-length=16 \ --description="DESCRIPTION" \ --network=VPC_NETWORK
Ganti kode berikut:
RESERVED_RANGE_NAME
: nama untuk rentang yang dialokasikan, sepertimy-allocated-range
DESCRIPTION
: deskripsi untuk rentang, sepertiallocated for my-service
VPC_NETWORK
: nama jaringan VPC Anda, sepertimy-vpc-network
Membuat koneksi pribadi ke produsen layanan. Koneksi pribadi membuat koneksi Peering Jaringan VPC antara jaringan VPC Anda dan jaringan produsen layanan.
Jika Anda sudah memiliki koneksi pribadi, gunakan perintah
gcloud services vpc-peerings update
untuk memperbaruinya:gcloud services vpc-peerings update \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID
Jika Anda belum memiliki koneksi pribadi, gunakan perintah
gcloud services vpc-peerings connect
. Perintah ini memulai operasi yang berjalan lama yang menampilkan nama operasi.gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=RESERVED_RANGE_NAME \ --network=VPC_NETWORK \ --project=PROJECT_ID
Ganti kode berikut:
RESERVED_RANGE_NAME
: nama satu atau beberapa rentang yang dialokasikanVPC_NETWORK
: nama jaringan VPC AndaPROJECT_ID
: ID project yang berisi jaringan VPC Anda
Untuk memeriksa apakah operasi berhasil, gunakan perintah
gcloud services vpc-peerings operations describe
:gcloud services vpc-peerings operations describe \ --name=OPERATION_NAME
Ganti
OPERATION_NAME
dengan nama operasi yang ditampilkan dari langkah sebelumnya.
Ulangi langkah 2 dan 3 untuk setiap jaringan VPC yang ingin Anda pantau.
Opsional: Mengaktifkan Kontrol Layanan VPC
Setelah akses layanan pribadi diaktifkan, Anda dapat secara opsional mengaktifkan Kontrol Layanan VPC di Cloud IDS.
Jika diaktifkan, jalankan perintah services vpc-peerings enable-vpc-service-controls
guna mengaktifkan Kontrol Layanan VPC untuk semua koneksi peering Anda:
gcloud services vpc-peerings enable-vpc-service-controls \ --service=servicenetworking.googleapis.com \ --network=VPC_NETWORK \ --project=PROJECT_ID
Ganti kode berikut:
VPC_NETWORK
: nama jaringan VPCPROJECT_ID
: ID project yang berisi jaringan VPC Anda
Membuat endpoint Cloud IDS
Sebaiknya buat endpoint IDS untuk setiap region tempat Anda men-deploy beban kerja. Anda juga dapat membuat beberapa endpoint IDS per region. Gunakan langkah-langkah berikut untuk membuat endpoint IDS dan menetapkan profil layanan IDS.
Konsol
Di Konsol Google Cloud, buka IDS Endpoints.
Konfigurasikan endpoint:
- Klik Create endpoint.
- Masukkan nama di kolom Nama endpoint.
- Opsional: Masukkan deskripsi di kolom Deskripsi.
- Klik menu drop-down Network, lalu pilih jaringan yang ingin diperiksa oleh Cloud IDS.
- Pilih region dan zona jaringan atau subnet dari menu drop-down Region dan Zone.
- Klik Lanjutkan.
Pilih profil layanan Cloud IDS:
- Klik Select IDS service profile.
- Di bagian Tingkat keparahan ancaman minimum, pilih tingkat notifikasi yang benar.
- Klik Create. Proses pembuatan dapat memerlukan waktu 10-15 menit.
Setelah endpoint IDS dibuat, lampirkan kebijakan Duplikasi Paket ke endpoint IDS:
- Pilih tab Endpoint.
- Di samping endpoint IDS, klik Lampirkan.
- Di kolom Nama kebijakan, masukkan nama untuk kebijakan Duplikasi Paket.
- Klik Next.
- Pilih subnet atau instance yang akan diduplikasi. Anda dapat memilih beberapa subnet dan instance.
- Klik Next.
- Tentukan apakah Anda ingin menduplikasi semua traffic atau memfilter traffic:
- Jika Anda ingin menduplikasi semua traffic, pastikan Cerminkan Semua Traffic dipilih.
- Jika Anda ingin memfilter traffic berdasarkan protokol, rentang alamat IP, atau traffic masuk atau keluar, pilih Duplikasi traffic yang difilter:
- Pilih Izinkan semua protokol atau Izinkan protokol tertentu.
- Pilih Izinkan semua rentang IP atau Izinkan rentang IP tertentu.
- Klik Submit. Endpoint dibuat.
Sekarang Anda dapat memeriksa apakah ada log ancaman yang telah dibuat. Langkah-langkah berikut bersifat opsional:
- Klik tab IDS Threats.
- Klik nama ancaman untuk melihat halaman Detail ancaman untuk ancaman tersebut.
- Kembali ke tab Ancaman.
- Klik Menu di sebelah kanan endpoint IDS Anda, lalu pilih View ancaman logs.
gcloud
Tanda opsional
Perintah di bagian ini mungkin memiliki beberapa atau semua flag opsional berikut:
--no-async
--filter=EXPRESSION
--flatten
, --sort-by
, --filter
,
--limit
.
--limit=LIMIT
--flatten
, --sort-by
, --filter
,
--limit
.
--page-size=PAGE_SIZE
--filter
dan
--limit
, bergantung pada layanannya.
--sort-by=[FIELD,…]
--flatten
, --sort-by
, --filter
,
--limit
.
--uri
--threat-exceptions
Petunjuk
Untuk membuat endpoint IDS baru, lakukan langkah-langkah berikut:
Gunakan perintah
gcloud ids endpoints create
. GantiENDPOINT_NAME
,VPC_NETWORK
,ZONE
, danSEVERITY
dengan informasi yang cocok dengan aplikasi Anda.gcloud ids endpoints create ENDPOINT_NAME \ --network=VPC_NETWORK \ --zone=ZONE \ --severity=SEVERITY \ [--no-async] \ [GCLOUD_WIDE_FLAG...]
Tanda tingkat keparahan diperlukan dan menggunakan salah satu nilai berikut:
- INFORMASI
- RENDAH
- SEDANG
- TINGGI
- KRITIS
Setelah endpoint dibuat, lampirkan kebijakan Duplikasi Paket ke endpoint. Pertama, dapatkan URL dari kolom
endpoint_forwarding_rule
menggunakan perintah berikut:gcloud ids endpoints describe ENDPOINT_NAME
Buat kebijakan Duplikasi Paket menggunakan perintah berikut:
gcloud compute packet-mirrorings create POLICY_NAME \ --region=REGION --collector-ilb=ENDPOINT_FORWARDING_RULE \ --network=VPC_NETWORK --mirrored-subnets=SUBNET
Duplikasi Paket memiliki beberapa flag opsional, termasuk yang dapat Anda gunakan untuk memfilter traffic berdasarkan protokol, rentang alamat IP, atau traffic masuk atau keluar. Untuk mengetahui informasi selengkapnya tentang tanda opsional ini, lihat Referensi Duplikasi Paket.
Untuk menghapus endpoint IDS, gunakan perintah gcloud ids endpoints
delete
. Ganti ENDPOINT_NAME
, PROJECT_ID
,
dan ZONE
dengan informasi yang cocok dengan aplikasi Anda:
gcloud ids endpoints delete ENDPOINT_NAME \ [--project=PROJECT_ID] \ [--zone=ZONE] \ [--no-async] \ [GCLOUD_WIDE_FLAG...]
Untuk menjelaskan endpoint IDS, gunakan perintah gcloud ids endpoints
describe
. Ganti ENDPOINT_NAME
, PROJECT_ID
,
dan ZONE
dengan informasi yang cocok dengan aplikasi Anda:
gcloud ids endpoints describe ENDPOINT_NAME \ [--project=PROJECT_ID] \ [--zone=ZONE] \ [GCLOUD_WIDE_FLAG...]
Untuk menampilkan daftar endpoint IDS, gunakan perintah gcloud ids endpoints list
:
gcloud ids endpoints list / [--filter=EXPRESSION] \ [--limit=LIMIT] \ [--page-size=PAGE_SIZE] \ [--sort-by=[FIELD,...]] \ [--uri] \ [GCLOUD_WIDE_FLAG...]
API
Resource endpoint Cloud IDS memiliki kolom berikut:
Kolom | Jenis | Deskripsi kolom |
---|---|---|
createTime | string | [Khusus Output] Stempel waktu pembuatan dalam format teks RFC 3339. |
updateTime | string | [Hanya Output] Stempel waktu pembaruan terakhir dalam format teks RFC 3339. |
name | string | [Khusus Output] Nama endpoint dalam format projects/{project_id}/locations/{locationId}/endpoints/{endpointId} . |
jaringan | string | Nama jaringan VPC yang terhubung ke endpoint IDS. Endpoint dapat berisi nama jaringan VPC itu sendiri (seperti "src-net" ) atau URL lengkap ke jaringan (seperti "projects/{project_id}/global/networks/src-net" ). Kolom ini wajib diisi saat membuat endpoint. |
tingkat keseriusan | string | Tingkat keparahan notifikasi minimum yang dilaporkan oleh endpoint. Kemungkinan nilainya adalah sebagai berikut:
Kolom ini wajib ada saat membuat endpoint. |
deskripsi | string | Deskripsi opsional endpoint. |
endpoint_forwarding_rule | string | [Hanya Output] URL alamat jaringan endpoint tempat traffic akan dikirim oleh Duplikasi Paket. |
endpoint | string | [Khusus Output] Alamat IP internal titik entri jaringan endpoint. |
Untuk membuat endpoint Cloud IDS, gunakan permintaan POST HTTP seperti berikut, dengan mengganti variabel sesuai kebutuhan. Panjang
ENDPOINT_NAME
harus antara 1-63 karakter; hanya boleh berisi
huruf kecil, angka, dan tanda hubung; harus dimulai dengan huruf kecil;
dan tidak boleh diakhiri dengan tanda hubung.
POST https://ids.googleapis.com/v1/projects/PROJECT_NAME/locations/ZONE/endpoints?endpointId=ENDPOINT_NAME { "network": "NETWORK_NAME", "severity": "SEVERITY_LEVEL", }
Untuk menghapus endpoint Cloud IDS, gunakan permintaan HTTP DELETE
seperti berikut, dengan mengganti variabel yang sesuai:
DELETE https://ids.googleapis.com/v1/projects/PROJECT_NAME/locations/ZONE/endpoints?endpointId=ENDPOINT_NAME
Untuk mendapatkan endpoint Cloud IDS, gunakan permintaan HTTP GET
seperti berikut, dengan mengganti variabel yang sesuai:
GET https://ids.googleapis.com/v1/projects/PROJECT_NAME/locations/ZONE/endpoints?endpointId=ENDPOINT_NAME
Untuk menampilkan daftar semua endpoint Cloud IDS dalam suatu zona, gunakan permintaan HTTP GET
seperti berikut, dengan mengganti variabel yang sesuai:
GET https://ids.googleapis.com/v1/projects/PROJECT_NAME/locations/ZONE/endpoints
Atau, untuk mencantumkan semua endpoint Cloud IDS di semua zona, Anda dapat mengganti ZONE
dengan tanda hubung seperti berikut:
GET https://ids.googleapis.com/v1/projects/PROJECT_NAME/locations/-/endpoints
Opsional: Mengonfigurasi pengecualian ancaman
Anda dapat menonaktifkan ID ancaman yang berisik atau tidak perlu dengan menggunakan flag --threat-exceptions
saat membuat atau memperbarui endpoint Cloud IDS. Contoh berikut memperbarui endpoint Cloud IDS yang ada
ENDPOINT_NAME untuk mengecualikan ID ancaman THREAT_ID1 dan
THREAT_ID2:
gcloud ids endpoints update ENDPOINT_NAME
--threat-exceptions=THREAT_ID1,THREAT_ID2