Mengumpulkan log VMware Tanzu

Didukung di:

Dokumen ini menjelaskan cara menyerap log VMware Tanzu ke Google Security Operations menggunakan Bindplane. Parser mengekstrak log audit dari pesan berformat JSON atau SYSLOG+JSON. Skrip ini mem-parsing data log, menormalisasi kolom ke dalam format UDM, dan memperkaya peristiwa dengan metadata seperti detail pengguna, informasi resource, aktivitas jaringan, dan hasil keamanan, menangani objek JSON tunggal dan JSON yang disematkan dalam pesan syslog.

Sebelum memulai

Pastikan Anda memenuhi prasyarat berikut:

  • Instance Google SecOps
  • Windows 2016 atau yang lebih baru atau host Linux dengan systemd
  • Jika berjalan di belakang proxy, pastikan port firewall terbuka
  • Akses istimewa ke VMware Tanzu

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Penyerapan. Simpan file dengan aman di sistem tempat BindPlane akan diinstal.

Mendapatkan ID pelanggan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Profil.
  3. Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.

Menginstal agen Bindplane

Instal agen Bindplane di sistem operasi Windows atau Linux Anda sesuai dengan petunjuk berikut.

Penginstalan Windows

  1. Buka Command Prompt atau PowerShell sebagai administrator.
  2. Jalankan perintah berikut:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Penginstalan Linux

  1. Buka terminal dengan hak istimewa root atau sudo.
  2. Jalankan perintah berikut:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Referensi penginstalan tambahan

Untuk opsi penginstalan tambahan, lihat panduan penginstalan.

Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps

  1. Akses file konfigurasi:
    • Cari file config.yaml. Biasanya, file ini berada di direktori /etc/bindplane-agent/ di Linux atau di direktori penginstalan di Windows.
    • Buka file menggunakan editor teks (misalnya, nano, vi, atau Notepad).
  2. Edit file config.yaml sebagai berikut:

    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds_file_path: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            log_type: 'VMWARE_TANZU'
            raw_log_field: body
            ingestion_labels:
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
    • Ganti port dan alamat IP sesuai kebutuhan di infrastruktur Anda.
    • Ganti <customer_id> dengan ID pelanggan yang sebenarnya.
    • Perbarui /path/to/ingestion-authentication-file.json ke jalur tempat file autentikasi disimpan di bagian Dapatkan file autentikasi penyerapan Google SecOps.

Mulai ulang agen Bindplane untuk menerapkan perubahan

  • Untuk memulai ulang agen Bindplane di Linux, jalankan perintah berikut:

    sudo systemctl restart bindplane-agent
    
  • Untuk memulai ulang agen Bindplane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Mengonfigurasi Syslog untuk VMware Tanzu

  1. Login ke UI web Tanzu Operations Manager.
  2. Pilih Nama pengguna Anda, lalu klik Setelan.
  3. Pilih Syslog.
  4. Klik Ya untuk mengirim log sistem ke server jarak jauh.
  5. Berikan detail konfigurasi berikut:
    • Alamat: Masukkan alamat IP agen Bindplane.
    • Port: Masukkan nomor port agen Bindplane.
    • Transport Protocol: Pilih UDP atau TCP, bergantung pada konfigurasi agen Bindplane Anda yang sebenarnya.
  6. Klik Simpan.

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
annotations.authorization.k8s.io/decision security_result.action Jika anotasi authorization.k8s.io/decision ada, nilainya akan dikonversi menjadi huruf besar. Jika nilai huruf besar adalah "ALLOW", kolom UDM akan disetel ke ALLOW. Jika tidak, nilai ini akan ditetapkan ke BLOCK.
annotations.authorization.k8s.io/reason security_result.description Jika anotasi authorization.k8s.io/reason ada, nilainya (dengan tanda kutip ganda dihapus) akan digunakan.
apiVersion metadata.product_version Dipetakan secara langsung.
auditID metadata.product_log_id Dipetakan secara langsung.
kind metadata.product_event_type Dipetakan secara langsung.
objectRef.name target.resource.name Dipetakan secara langsung.
objectRef.namespace target.resource.attribute.labels.key, target.resource.attribute.labels.value key disetel ke "namespace", dan value diambil dari objectRef.namespace.
objectRef.resource target.resource.resource_subtype Dipetakan secara langsung.
objectRef.resourceVersion target.resource.attribute.labels.key, target.resource.attribute.labels.value key disetel ke "resourceVersion", dan value diambil dari objectRef.resourceVersion.
objectRef.uid target.resource.product_object_id Dipetakan secara langsung.
requestReceivedTimestamp/timestamp metadata.event_timestamp Parser mencoba mengurai requestReceivedTimestamp terlebih dahulu. Jika tidak ada, kolom ini akan menggunakan kolom timestamp yang diekstrak dari awalan syslog.
requestURI target.url Dipetakan secara langsung.
responseStatus.code network.http.response_code Dipetakan secara langsung setelah dikonversi menjadi bilangan bulat.
sourceIPs principal.ip Semua alamat IP dalam array sourceIPs ditambahkan ke array principal.ip.
stage metadata.description Dipetakan secara langsung.
stageTimestamp metadata.collected_timestamp Dipetakan secara langsung.
user.groups principal.user.group_identifiers Semua grup dalam array user.groups ditambahkan ke array principal.user.group_identifiers.
user.uid principal.user.userid Dipetakan secara langsung.
user.username principal.user.user_display_name Dipetakan secara langsung.
verb network.http.method Dipetakan secara langsung setelah dikonversi menjadi huruf besar. Ditentukan oleh kolom verb. Jika verb adalah "CREATE", jenis peristiwanya adalah USER_RESOURCE_CREATION. Jika verb adalah "PATCH" atau "UPDATE", jenis peristiwanya adalah USER_RESOURCE_UPDATE_CONTENT. Jika verb adalah "DELETE", jenis peristiwanya adalah USER_RESOURCE_DELETION. Jika tidak, jika verb tidak kosong, jenis peristiwanya adalah USER_RESOURCE_ACCESS. Jika tidak satu pun dari kondisi ini terpenuhi, jenis peristiwa akan ditetapkan ke GENERIC_EVENT. Dikodekan secara permanen ke "VMWARE_TANZU". Dikodekan secara permanen ke "VMWARE". Dikodekan secara permanen ke "VMWARE_TANZU". Dikodekan secara permanen ke "CLUSTER".

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.