Menggunakan BindPlane dengan Google SecOps

Didukung di:

Dokumen ini menjelaskan Bindplane untuk Google Security Operations.

BindPlane adalah pipeline telemetri, yang dapat mengumpulkan, memproses, dan mengekspor log dari sumber mana pun ke Google SecOps.

Bindplane menawarkan dua edisi khusus untuk Google.

Bindplane mencakup komponen utama berikut:

  • Bindplane Collector. Agen open source, berdasarkan OpenTelemetry (OTel) Collector. Alat ini mengumpulkan log dari berbagai sumber, termasuk log peristiwa Microsoft Windows, dan mengirimkannya ke Google SecOps. Anda dapat menginstal pengumpul di infrastruktur lokal atau di cloud. Komponen ini juga disebut sebagai agen BindPlane BindPlane Distribution for OpenTelemetry (BDOT) Collector, agen pengumpulan, pengumpul, atau agen,
  • Bindplane Server. Platform komprehensif dan terpadu untuk mengelola deployment pengumpul OTel Anda. Deployment ini dapat berada di Google SecOps dan Google Cloud. Bindplane Server dapat berjalan di infrastruktur lokal atau di cloud Bindplane. Untuk mengetahui informasi selengkapnya tentang konsol, lihat Konsol Pengelolaan Bindplane. Komponen ini juga disebut sebagai Konsol Pengelolaan Pipeline Observabilitas (OP) Bindplane atau Konsol Pengelolaan Bindplane.

Edisi Google Bindplane

Bindplane menawarkan dua edisi khusus untuk Google: Bindplane (Edisi Google) dan Bindplane Enterprise (Edisi Google).

BindPlane (Edisi Google)

Semua pelanggan Google SecOps memiliki akses ke Bindplane (Edisi Google) tanpa biaya tambahan. Untuk mempelajari lebih lanjut, lihat Kemampuan Observasi dan Keamanan Terdepan di Industri yang Didukung oleh OpenTelemetry.

Anda dapat menggunakan Bindplane (Google Edition) secara mandiri di cloud Bindplane.

Untuk mempelajari cara mulai menginstal dan menghosting sendiri Bindplane (Edisi Google), lihat Bindplane (Edisi Google).

Bindplane Enterprise (Edisi Google)—untuk pelanggan Google SecOps Enterprise Plus

Bindplane Enterprise (Edisi Google) disertakan untuk pelanggan Google SecOps Enterprise Plus.

Bindplane Enterprise (Edisi Google) direkomendasikan untuk deployment skala besar.

Hubungi tim Akun Google Anda untuk mendapatkan kunci lisensi Bindplane Enterprise (Edisi Google).

Edisi Google Bindplane—perbedaan

Tabel berikut mencantumkan perbedaan dalam edisi Google BindPlane:

Fitur BindPlane (Edisi Google) Bindplane Enterprise (Edisi Google)
Biaya Disertakan tanpa biaya tambahan untuk semua pelanggan Google SecOps Disertakan tanpa biaya untuk pelanggan Google SecOps Enterprise Plus
Perutean/Tujuan Google saja, termasuk Google SecOps, Cloud Logging, BigQuery, dan Cloud Storage melalui Google SecOps Google, termasuk perutean ke tujuan non-Google selama 12 bulan untuk migrasi SIEM
Pemfilteran Filter dasar dengan ekspresi reguler Prosesor pemfilteran lanjutan (misalnya, filter menurut kondisi, kolom, tingkat keparahan, dan sebagainya), pengurangan data, pengambilan sampel log, penghapusan duplikat
Penyamaran T/A Penyamaran PII
Transformasi Menambahkan kolom, memindahkan kolom, mengurai data (KV, JSON, CSV, XML, stempel waktu, mengurai menurut ekspresi reguler), mengganti nama kolom, pemisah peristiwa Mencakup semua kemampuan yang didukung di Bindplane (Edisi Google) plus hapus kolom, hapus nilai kosong, gabungkan
Fitur tingkat platform umum Gateway (menggabungkan data dari agen), agen BindPlane untuk pengumpulan, Lapisan pengelolaan BindPlane untuk di-hosting di cloud atau lokal, semua sumber, pemantauan host senyap melalui pemroses SecOps, antrean persisten, telemetri yang ditingkatkan, HA, RBAC, kedua API penyerapan SecOps didukung, pengaburan kredensial, pengelolaan perangkat lanjutan termasuk pengelompokan agen, penetapan jenis log dinamis Semua kemampuan yang didukung di Bindplane (Edisi Google)

Konsol Pengelolaan Bindplane

Penggunaan konsol Pengelolaan Bindplane bersifat opsional. Banyak pelanggan Google SecOps menggunakan BindPlane Server.

Konsol Pengelolaan BindPlane menawarkan fitur utama berikut:

  • Pengelolaan terpusat. Konsol ini memungkinkan Anda mengelola semua deployment pengumpul OTel di seluruh Google Cloud. Anda dapat melihat status setiap deployment, serta melakukan tugas pengelolaan umum seperti memulai, menghentikan, dan memulai ulang pengumpul.
  • Pemantauan real-time. Konsol ini menyediakan pemantauan real-time terhadap deployment pengumpul OTel Anda. Anda dapat melacak metrik seperti penggunaan CPU, penggunaan memori, dan throughput, serta melihat log dan rekaman aktivitas untuk memecahkan masalah.
  • Peringatan dan notifikasi. Konsol memungkinkan Anda menyiapkan pemberitahuan dan notifikasi untuk peristiwa penting, seperti saat pengumpul data tidak berfungsi atau saat ambang batas metrik terlampaui.
  • Pengelolaan konfigurasi. Konsol ini memungkinkan Anda mengelola konfigurasi pengumpul OTel secara terpusat. Anda dapat mengedit file konfigurasi, menetapkan variabel lingkungan, dan menerapkan kebijakan keamanan ke semua deployment Anda.
  • Integrasi dengan Google Cloud. Anda dapat membuat dan mengelola deployment pengumpul OTel di Google Cloud dan menggunakan konsol untuk mengakses Google Cloud resource Anda.

Arsitektur Agen Bindplane

Bindplane Agent dapat berjalan di Linux atau Docker sebagai server web ringan tanpa dependensi eksternal.

BindPlane menggunakan pengumpul BDOT untuk menstandardisasi pengelolaan telemetri dengan Open Agent Management Protocol (OpAMP). Anda juga dapat membuat dan mengelola distribusi OpenTelemetry Collector kustom dengan BindPlane.

Untuk mempelajari lebih lanjut arsitektur deployment pengumpul Bindplane OpenTelemetry, lihat Bindplane OTel Collector.

Bagian berikut menjelaskan opsi arsitektur yang tersedia.

Agen pengumpulan mengirim log ke agen pengumpulan yang bertindak sebagai gateway

Untuk deployment skala besar, sebaiknya gunakan agen Bindplane Enterprise (Google Edition) yang berfungsi sebagai gateway. Gateway ini menerima telemetri dari pengumpul lain melalui jaringan, secara opsional melakukan pemrosesan tambahan, dan merutekan data ke Google SecOps.

Agen pengumpulan yang bertindak sebagai gateway menggunakan biner yang sama dengan semua agen pengumpulan lainnya.

Diagram berikut menunjukkan agen pengumpulan yang mengirim log ke agen pengumpulan yang bertindak sebagai gateway.

Agen pengumpulan mengirim log ke agen pengumpulan yang bertindak sebagai gateway

Agen pengumpulan mengirim log langsung ke API penyerapan Google SecOps

Diagram berikut menunjukkan agen pengumpulan yang mengirim log langsung ke Google SecOps Ingestion API.

Agen pengumpulan mengirim log langsung ke API penyerapan Google SecOps

Agen pengumpulan mengirim log langsung ke Cloud Logging

Diagram berikut menunjukkan agen pengumpulan yang mengirim log langsung ke Cloud Logging.

Agen pengumpulan mengirim log langsung ke Cloud Logging

Agen pengumpulan mengirim log ke beberapa tujuan

Diagram berikut menunjukkan agen pengumpulan yang mengirim log ke beberapa tujuan.

Agen pengumpulan mengirimkan log ke beberapa tujuan

Jenis deployment BindPlane

Bindplane menawarkan opsi deployment di cloud dan lokal.

Deployment lokal

  • Linux
  • Docker

Untuk mempelajari lebih lanjut, lihat Menginstal Server BindPlane.

Linux

Distribusi Linux:

  • Red Hat, Centos, Oracle Linux 7, 8, 9
  • Debian 11 dan 12
  • Ubuntu LTS 20.04 dan 22.04
  • SUSE Linux 12 dan 15
  • Alma dan Rocky Linux

Untuk mempelajari lebih lanjut, lihat referensi berikut:

Image container Docker

Anda dapat menemukan image container Docker Bindplane di lokasi berikut:

  • Paket GitHub: ghcr.io/observiq/Bindplane-ee
  • Repositori artefak Google: us-central1-docker.pkg.dev/observiq-containers/bindplane/bindplane-ee
  • Docker Hub: observiq/bindplane-ee

Image container diberi tag dengan versi rilis: misalnya, Rilis v1.35.0 akan memiliki tag observiq/bindplane-ee:1.35.0.

Persyaratan dan rekomendasi teknis

Bagian ini menjelaskan persyaratan dan rekomendasi teknis untuk menginstal dan menjalankan Bindplane dengan Google SecOps.

Persyaratan bandwidth

Bindplane mempertahankan koneksi jaringan untuk hal berikut:

  • Pengelolaan pengumpul
  • Pengukuran throughput pengumpul
  • Antarmuka pengguna web dan command line

Persyaratan konektivitas

Bindplane memproses port 3001 secara default. Port ini dapat dikonfigurasi.

Port Bindplane digunakan untuk:

  • Kontrol dan perintah pengumpul menggunakan OpAMP (WebSocket)
  • Permintaan pengukuran throughput pengumpul (permintaan HTTP POST)
  • Pengguna browser dan CLI (HTTP dan WebSocket)

Pengumpul harus dapat memulai koneksi ke BindPlane untuk OpAMP (WebSocket) dan pengukuran throughput (HTTP).

Bindplane tidak pernah memulai koneksi ke pengumpul. Anda dapat mengonfigurasi firewall untuk mencegah Bindplane menjangkau jaringan pengumpul; namun, jaringan pengumpul harus dapat menjangkau Bindplane di port yang dikonfigurasi.

Persyaratan teknis umum pengumpul Bindplane

Untuk mempelajari persyaratan teknis umum untuk pengumpul Bindplane, lihat bagian berikut:

Persyaratan resource pengumpul

Persyaratan resource Bindplane berbeda-beda berdasarkan jumlah pengumpul yang dikelola. Seiring bertambahnya jumlah pengumpul terkelola, penggunaan CPU, memori, throughput/IOPS disk, dan jaringan juga akan meningkat.

Gunakan tabel berikut untuk menentukan ukuran CPU, memori, dan kapasitas penyimpanan:

Jumlah pengumpul Node Bindplane Fault-tolerance Core CPU Memori Database
1-100 1 T/A 2 4 GB bbolt
100-25.000 1 T/A 4 16 GB postgres
1-60.000 3 1 2 8 GB postgres
60.001-125.000 5 1 2 8 GB postgres
125.001-250.000 10 2 2 8 GB postgres

Merencanakan penginstalan dan deployment

Bagian berikut mencakup rekomendasi dan praktik terbaik yang harus Anda pertimbangkan saat merencanakan deployment BindPlane.

Mempertimbangkan penskalaan dan fault tolerance

Pengumpul gateway menerima data telemetri melalui jaringan. Sebaiknya Anda memasangkannya dengan load balancer untuk memberikan toleransi fault dan penskalaan horizontal.

Penskalaan horizontal lebih disukai karena memberikan fault tolerance dan dapat menghilangkan hambatan pengekspor.

Menghitung jumlah pengumpul yang Anda butuhkan

Saat menghitung jumlah pengumpul yang diperlukan untuk workload Anda, pertimbangkan throughput atau kecepatan log yang diantisipasi, dan gunakan tabel berikut. Tabel ini mengasumsikan bahwa setiap pengumpul memiliki empat core CPU dan memori 16 GB. Tabel tidak memperhitungkan prosesor; saat prosesor ditambahkan, persyaratan komputasi akan meningkat.

Throughput telemetri Log/detik Pengumpul
5 GB/bln 250.000 2
10 GB/m 500.000 3
20 GB/bln 1.000.000 5
100 GB/m 5.000.000 25

Menyediakan lebih banyak armada pengumpul untuk fault tolerance

Sediakan lebih banyak armada pengumpul untuk memastikan fault tolerance. Jika satu atau beberapa sistem pengumpul gagal atau di-offline-kan untuk pemeliharaan, pengumpul yang tersisa harus memiliki kapasitas yang cukup untuk mengelola throughput telemetri.

Jika Anda menggunakan sejumlah pengumpul tetap, Anda dapat menerapkan penskalaan vertikal CPU dan memori untuk meningkatkan throughput.

Mengurangi overhead pemrosesan

Secara umum, Anda ingin pengumpul data Anda melakukan sesedikit mungkin pekerjaan. Jika Anda memiliki persyaratan pemrosesan yang berat, akan berguna untuk memindahkan pemrosesan tersebut ke kumpulan pengumpul gateway. Misalnya, alih-alih memfilter telemetri dengan operasi ekspresi reguler yang mahal, Anda dapat meminta pengumpul gateway melakukan tugas tersebut. Umumnya, pengumpul gateway berjalan di sistem khusus. Hal ini membenarkan overhead pemrosesan karena tidak menggunakan daya komputasi layanan lain yang berjalan di sistem yang sama, tidak seperti pengumpul non-gateway yang mungkin berjalan di server database.

Praktik terbaik untuk mode gateway

Saat Anda menggunakan agen pengumpulan Bindplane sebagai gateway—yang dalam mode gateway, rencanakan deployment Anda dengan praktik terbaik berikut:

  • Tempatkan minimal dua pengumpul di belakang load balancer.
  • Setiap pengumpul harus memiliki minimal dua core.
  • Setiap pengumpul harus memiliki memori minimal 8 GB.
  • Setiap pengumpul harus memiliki ruang yang dapat digunakan sebesar 60 GB untuk antrean persisten.

Menggunakan load balancer jika diperlukan

Load balancer diperlukan saat mengoperasikan Bindplane dalam mode ketersediaan tinggi.

Saat Anda menggunakan agen pengumpulan Bindplane dalam mode gateway, gunakan load balancer untuk meningkatkan performa dan redundansi. Load balancing juga memungkinkan penskalaan horizontal armada gateway Anda dan kemampuan untuk menahan kegagalan tanpa menyebabkan gangguan.

Agen pengumpulan Bindplane dapat bekerja dengan berbagai load balancer saat beroperasi dalam mode gateway. Dokumen ini tidak membahas opsi tertentu, karena sebagian besar solusi penyeimbangan beban yang populer mendukung fitur yang diperlukan untuk mengoperasikan beberapa pengumpul data secara andal.

Untuk mempelajari lebih lanjut, lihat Load Balancer.

Port dan protokol load balancing

Bindplane memproses port 3001 secara default.

Untuk mendukung berbagai penerima berbasis jaringan di OpenTelemetry, load balancer harus mendukung:

  • Protokol transport TCP/UDP
  • Protokol aplikasi HTTP dan gRPC

Penentuan ukuran load balancing

Node Bindplane tidak boleh mengelola lebih dari 30.000 pengumpul untuk toleransi kesalahan maksimum. Setiap pengumpul membuka dua koneksi ke Bindplane (satu untuk pengelolaan jarak jauh OpAMP dan satu untuk memublikasikan metrik throughput). Batas ini membantu memastikan Anda tidak melebihi batas koneksi sekitar 65.535 per instance backend yang diterapkan oleh sebagian besar load balancer.

Jika organisasi memiliki 100.000 pengumpul, ukuran cluster tiga akan tidak memadai. Setiap node akan bertanggung jawab atas sekitar 33.000 pengumpul, yang berarti 66.000 koneksi TCP per instance Bindplane. Situasi ini akan semakin buruk jika salah satu node dihentikan untuk pemeliharaan, karena setiap instance Bindplane yang tersisa akan mengelola 50.000 pengumpul, atau 100.000 koneksi TCP.

Praktik terbaik penentuan ukuran load balancing

  • Terapkan health check. Konfigurasi load balancer untuk memastikan pengumpul siap menerima traffic.
  • Mendistribusikan koneksi secara merata. Koneksi harus didistribusikan secara merata di antara pengumpul.
  • Mendukung protokol yang diperlukan. Untuk mendukung berbagai penerima berbasis jaringan di OpenTelemetry, load balancer harus mendukung:

    • Protokol transport TCP/UDP
    • Protokol aplikasi HTTP dan gRPC

Untuk mempelajari lebih lanjut, lihat Ketahanan Pengumpul.

Load balancing jenis sumber

Jenis sumber apa pun yang menerima telemetri dari sistem jarak jauh melalui jaringan adalah kandidat yang cocok untuk load balancing, termasuk yang berikut:

  • OTLP
  • Syslog
  • TCP/UDP
  • HEC Splunk
  • Fluent Forward

Menggunakan mode ketersediaan tinggi di lingkungan produksi

Anda dapat men-deploy instance Bindplane dalam konfigurasi single-instance atau multi-instance. Untuk deployment produksi yang memerlukan ketersediaan tinggi (HA) dan ketahanan, sebaiknya gunakan model deployment multi-instance (HA).

Jika Bindplane mengelola lebih dari 25.000 pengumpul, sebaiknya operasikan Bindplane dalam mode ketersediaan tinggi (HA).

Untuk mempelajari HA di BindPlane, lihat Ketersediaan Tinggi.

Menghitung jumlah pengumpul dan server Bindplane untuk HA

Saat mengoperasikan Bindplane dalam mode HA, Anda perlu mempertimbangkan jumlah pengumpul yang diharapkan untuk ditangani oleh setiap server Bindplane.

Ambil jumlah total instance Bindplane, lalu kurangi jumlah maksimum node yang diperkirakan tidak tersedia karena pemeliharaan. Pastikan setiap node mengelola tidak lebih dari 30.000 pengumpul selama gangguan node.

Postgres untuk HA

Postgres adalah prasyarat saat Anda mengoperasikan Bindplane dalam mode HA.

Prometheus untuk HA

Prometheus diperlukan saat Anda mengoperasikan BindPlane dalam mode HA.

Untuk mempelajari lebih lanjut, lihat Prometheus.

Bus peristiwa untuk HA

Bindplane menggunakan bus peristiwa untuk berkomunikasi antar-komponen dalam Bindplane. Saat mengoperasikan Bindplane dalam mode HA, Anda dapat menggunakan bus peristiwa untuk mengirim peristiwa antar-server Bindplane.

Untuk mempelajari lebih lanjut, lihat Bus Peristiwa.

Menggunakan deployment instance tunggal untuk lingkungan pengujian atau proof-of-concept

Untuk lingkungan pengujian atau bukti konsep, sebaiknya gunakan deployment instance tunggal.

Untuk mempelajari lebih lanjut, lihat Instance Tunggal.

Mengisolasi kredensial backend

Daripada men-deploy kredensial ke semua sistem pengumpul data, Anda dapat menyimpan kredensial secara eksklusif di pengumpul data gateway. Hal ini menyederhanakan rotasi kredensial dan mengurangi permukaan serangan keamanan dengan membatasi deployment kredensial ke sebagian kecil sistem Anda.

Membuat firewall untuk pengumpul gateway Anda

Anda dapat menempatkan pengumpul gateway dalam jaringan perimeter, yang dilindungi firewall dari jaringan internal. Anda dapat mengonfigurasi jaringan untuk mengizinkan pengumpul data lain meneruskan data ke pengumpul data gateway sekaligus memblokir pengumpul data gateway agar tidak mengakses jaringan aplikasi Anda. Dengan begitu, Anda dapat mengirim telemetri ke backend berbasis cloud tanpa memberikan akses langsung ke internet untuk endpoint Anda.

Firewall harus mengizinkan traffic HTTP menjangkau Bindplane di port yang dikonfigurasi.

Memverifikasi konfigurasi firewall

Semua firewall atau proxy terautentikasi antara agen dan internet memerlukan aturan untuk membuka akses ke host berikut:

Jenis Koneksi Tujuan Port
TCP malachiteingestion-pa.googleapis.com 443
TCP asia-northeast1-malachiteingestion-pa.googleapis.com 443
TCP asia-south1-malachiteingestion-pa.googleapis.com 443
TCP asia-southeast1-malachiteingestion-pa.googleapis.com 443
TCP australia-southeast1-malachiteingestion-pa.googleapis.com 443
TCP europe-malachiteingestion-pa.googleapis.com 443
TCP europe-west2-malachiteingestion-pa.googleapis.com 443
TCP europe-west3-malachiteingestion-pa.googleapis.com 443
TCP europe-west6-malachiteingestion-pa.googleapis.com 443
TCP europe-west12-malachiteingestion-pa.googleapis.com 443
TCP me-central1-malachiteingestion-pa.googleapis.com 443
TCP me-central2-malachiteingestion-pa.googleapis.com 443
TCP me-west1-malachiteingestion-pa.googleapis.com 443
TCP northamerica-northeast2-malachiteingestion-pa.googleapis.com 443
TCP accounts.google.com 443
TCP oauth2.googleapis.com 443

Menggunakan PostgreSQL untuk deployment produksi

Postgres diperlukan untuk deployment Bindplane produksi.

Postgres adalah prasyarat untuk mengoperasikan Bindplane dalam mode HA.

Jumlah core CPU dan memori yang tersedia umumnya membatasi performa backend penyimpanan PostgreSQL. Sebaiknya cadangkan penyimpanan PostgreSQL dengan penyimpanan latensi rendah dan throughput tinggi, seperti solid-state drive (SSD).

Jumlah Pengumpul Inti CPU Memori
1-60.000 4 16 GB
60.001-125.000 8 32 GB
125.001-250.000 16 64 GB

Untuk mempelajari lebih lanjut, lihat referensi berikut:

Menerapkan autentikasi yang tepat

BindPlane mendukung autentikasi dengan protokol dan layanan berikut; pastikan protokol dan layanan tersebut diterapkan dengan benar:

Menginstal konsol Bindplane Management

Sebagian besar pelanggan Google SecOps menggunakan konsol Pengelolaan Bindplane. Jika Anda menginstalnya, Anda memerlukan akses ke storage.googleapis.com. Jika Anda hanya menginstal agen, akses ini tidak diperlukan.

Bindplane Cloud juga tersedia untuk pelanggan Google. Download versi gratisnya dan kirim email ke support@bindplane.com untuk meminta upgrade ke versi yang didukung Google.

Ada tiga cara untuk men-deploy konsol Pengelolaan BindPlane:

Menginstal agen Bindplane

Bagian ini menjelaskan cara menginstal agen Bindplane untuk Google SecOps di berbagai sistem operasi host.

Pengumpul agen biasanya menggunakan resource minimal. Namun, saat menangani volume log yang besar, perhatikan konsumsi resource untuk menghindari dampak pada layanan lain. Untuk mengetahui informasi selengkapnya, lihat Persyaratan dan rekomendasi teknis, Merencanakan penginstalan dan deployment, serta Penentuan Ukuran dan Penskalaan Agen.

Untuk mempelajari lebih lanjut cara menginstal Agen OTel, lihat Menginstal dan Meng-uninstal Kolektor BindPlane.

Untuk masalah terkait pengumpul, hubungi dukungan Google Cloud .

Untuk menginstal agen, Anda memerlukan hal berikut:

  • File autentikasi penyerapan Google SecOps

    Untuk mendownload file autentikasi, ikuti langkah-langkah berikut:

    1. Buka konsol Google SecOps.
    2. Buka SIEM Settings > Collection Agent.
    3. Download file autentikasi penyerapan Google SecOps.
  • ID pelanggan Google SecOps

    Untuk menemukan ID pelanggan, ikuti langkah-langkah berikut:

    1. Buka konsol Google SecOps.
    2. Buka Setelan SIEM > Profil.
    3. Salin ID pelanggan dari bagian Detail Organisasi.
  • Windows 2012 SP2 atau yang lebih baru atau host Linux dengan systemd

  • Konektivitas internet

  • Akses GitHub

Alat deployment

Bagian ini menjelaskan alat deployment untuk BindPlane.

GitOps

Deploy resource Bindplane menggunakan model GitOps, yang mencakup hal berikut:

  • Autentikasi Bindplane
  • CLI Bindplane
  • Akses jaringan
  • Integrasi dengan repositori GitHub dan GitHub Actions
  • Mengekspor resource yang ada
  • Mengelola nilai sensitif
  • Membuat alur kerja GitHub Action
  • Petunjuk langkah demi langkah untuk melakukan dan menguji konfigurasi, mengaktifkan peluncuran otomatis, dan memperbarui resource menggunakan pengeditan langsung atau metode ekspor UI
  • Memperbarui nilai sensitif dan menggunakan RBAC

Untuk mempelajari lebih lanjut, lihat GitOps.

Ansible

Untuk mempelajari cara men-deploy BindPlane dengan Ansible, lihat bindplane-agent-ansible.

CLI Bindplane

Untuk mempelajari Bindplane CLI, lihat GitOps.

Terraform

Untuk mempelajari cara menggunakan Terraform guna mengonfigurasi resource Bindplane, lihat Bindplane Provider.

Kubernetes

Untuk mempelajari Kubernetes dengan Bindplane, lihat artikel berikut:

Menginstal agen BindPlane di Windows

Untuk menginstal agen Bindplane di Windows, jalankan perintah PowerShell berikut:

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

Atau, untuk menginstal menggunakan wizard penginstalan, download penginstal terbaru untuk Windows. Setelah Anda mendownload penginstal, buka wizard penginstalan dan ikuti petunjuk untuk mengonfigurasi dan menginstal agen Bindplane.

Untuk mempelajari lebih lanjut cara menginstal agen BindPlane di Windows, lihat Penginstalan Windows.

Menginstal agen BindPlane di Linux

Anda dapat menginstal agen di Linux menggunakan skrip yang secara otomatis menentukan paket mana yang akan diinstal. Anda juga dapat menggunakan skrip yang sama untuk memperbarui penginstalan yang ada.

Untuk menginstal menggunakan skrip penginstalan, jalankan skrip berikut:

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

Untuk mempelajari lebih lanjut cara mengonfigurasi pengumpul, lihat bindplane-otel-collect.

Penginstalan dari paket lokal

Untuk menginstal agen dari paket lokal, gunakan -f dengan jalur ke paket.

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

Penginstalan RPM

Download paket RPM untuk arsitektur Anda dari halaman rilis dan instal paket menggunakan rpm. Lihat contoh berikut untuk menginstal paket amd64:

sudo rpm -U ./observiq-otel-collector_v${VERSION}_linux_amd64.rpm
sudo systemctl enable --now observiq-otel-collector

Ganti VERSION dengan versi paket yang Anda download.

Penginstalan DEB

Download paket DEB untuk arsitektur Anda dari halaman rilis dan instal paket menggunakan dpkg. Lihat contoh berikut untuk menginstal paket amd64:

sudo dpkg -i --force-overwrite ./observiq-otel-collector_v${VERSION}_linux_amd64.deb
sudo systemctl enable --now observiq-otel-collector

Ganti VERSION dengan versi paket yang Anda download.

Untuk mempelajari lebih lanjut, lihat Penginstalan Agen BindPlane.

Mengonfigurasi agen BindPlane

Setelah menginstal agen, layanan observiq-otel-collector akan berjalan dan siap dikonfigurasi.

Anda dapat mengonfigurasi agen secara manual atau menggunakan konsol Bindplane Management.

Jika mengonfigurasi agen secara manual, Anda harus memperbarui parameter pengekspor untuk memastikan bahwa agen diautentikasi dengan Google SecOps.

File konfigurasi pengumpul OTel

Di Linux, file konfigurasi pengumpul dapat ditemukan di /opt/observiq-otel-collector/config.yaml.

Layanan dan log pengumpul OTel

Agen mencatat log ke C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log secara default.

Log error standar untuk proses agen dapat ditemukan di C:\Program Files\observIQ OpenTelemetry Collector\log\observiq_collector.err.

Untuk mempelajari lebih lanjut cara mengonfigurasi pengumpul, lihat bindplane-otel-collect.

Di Linux, untuk melihat log dari pengumpul, jalankan sudo tail -F /opt/observiq-otel-collector/log/collector.log.

Perintah layanan pengumpul OTel Linux umum:

  • Untuk menghentikan layanan pengumpul OTel, jalankan sudo systemctl stop observiq-otel-collector.

  • Untuk memulai layanan pengumpul OTel, jalankan sudo systemctl start observiq-otel-collector.

  • Untuk memulai ulang layanan pengumpul OTel, jalankan sudo systemctl restart observiq-otel-collector.

  • Untuk mengaktifkan layanan pengumpul OTel saat startup, jalankan sudo systemctl enable observiq-otel-collector.

Mulai ulang layanan agen untuk perubahan konfigurasi

Saat mengubah konfigurasi, Anda harus memulai ulang layanan agen agar perubahan konfigurasi diterapkan (sudo systemctl restart observiq-otel-collector).

Menggunakan file konfigurasi contoh default

Secara default, file konfigurasi agen terletak di C:\Program Files\observIQ OpenTelemetry Collector\config.yaml.

Anda dapat mendownload file konfigurasi contoh dan token autentikasi yang digunakan oleh agen dari konsol Google SecOps > SIEM Settings > Collection Agent.

Sesuaikan dua bagian berikut dalam file konfigurasi:

  • Penerima: menentukan log mana yang harus dikumpulkan dan dikirim oleh agen ke Google SecOps.
  • Exporter: menentukan tujuan tempat agen mengirim log. Eksporter berikut didukung:
    • Pengekspor Google SecOps: mengirim log langsung ke Google SecOps Ingestion API.
    • Pengekspor penerusan Google SecOps: mengirim log ke penerus Google SecOps.
    • Pengekspor Cloud Logging: mengirim log ke (Cloud Logging).

Di pengekspor, sesuaikan hal berikut:

  • customer_id: ID pelanggan Google SecOps Anda.
  • endpoint: Endpoint regional Google SecOps Anda.
  • creds: Token autentikasi Anda.

    Atau, Anda dapat menggunakan creds_file_path untuk mereferensikan file kredensial secara langsung. Untuk konfigurasi Windows, hapus jalur dengan garis miring terbalik.

  • log_type: Jenis log. Sebaiknya pilih WINDOWS_DNS sebagai Log Type.

  • ingestion_labels: Label penyerapan. Label ini mengidentifikasi log di Google SecOps.

  • namespace: Namespace opsional.

    Setiap jenis log mengharuskan Anda mengonfigurasi eksportir.

Contoh konfigurasi pengumpulan log

Bagian berikut berisi contoh konfigurasi untuk pengumpulan log.

Mengirim peristiwa Windows dan sysmon langsung ke Google SecOps

Konfigurasi parameter ini dalam contoh:

Contoh konfigurasi:

receivers:
  windowseventlog/sysmon:
    channel: Microsoft-Windows-Sysmon/Operational
    raw: true
  windowseventlog/security:
    channel: security
    raw: true
  windowseventlog/application:
    channel: application
    raw: true
  windowseventlog/system:
    channel: system
    raw: true

processors:
  batch:

exporters:
  chronicle/sysmon:
    endpoint: malachiteingestion-pa.googleapis.com
    creds: '{
  "type": "service_account",
  "project_id": "malachite-projectname",
  "private_key_id": "abcdefghijklmnopqrstuvwxyz123456789",
  "private_key": "-----BEGIN PRIVATE KEY-----abcdefg-----END PRIVATE KEY-----\n",
  "client_email": "account@malachite-projectname.iam.gserviceaccount.com",
  "client_id": "123456789123456789",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/account%40malachite-projectname.iam.gserviceaccount.com",
  "universe_domain": "googleapis.com"
}' 
    log_type: 'WINDOWS_SYSMON'
    override_log_type: false
    raw_log_field: body
    customer_id: 'dddddddd-dddd-dddd-dddd-dddddddddddd'
  chronicle/winevtlog:
    endpoint: malachiteingestion-pa.googleapis.com
    creds: '{
  "type": "service_account",
  "project_id": "malachite-projectname",
  "private_key_id": "abcdefghijklmnopqrstuvwxyz123456789",
  "private_key": "-----BEGIN PRIVATE KEY-----abcdefg-----END PRIVATE KEY-----\n",
  "client_email": "account@malachite-projectname.iam.gserviceaccount.com",
  "client_id": "123456789123456789",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/account%40malachite-projectname.iam.gserviceaccount.com",
  "universe_domain": "googleapis.com"
}'
    log_type: 'WINEVTLOG'
    override_log_type: false
    raw_log_field: body
    customer_id: 'dddddddd-dddd-dddd-dddd-dddddddddddd'

service:
  pipelines:
    logs/sysmon:
      receivers: [windowseventlog/sysmon]
      processors: [batch]
      exporters: [chronicle/sysmon]
    logs/winevtlog:
      receivers: 
        - windowseventlog/security
        - windowseventlog/application
        - windowseventlog/system
      processors: [batch]
      exporters: [chronicle/winevtlog]

Mengirim peristiwa Windows dan syslog langsung ke Google SecOps

Konfigurasi parameter ini dalam contoh:

Contoh konfigurasi:

receivers:
    tcplog:
      listen_address: "0.0.0.0:54525"
    windowseventlog/source0__application:
        attributes:
            log_type: windows_event.application
        channel: application
        max_reads: 100
        poll_interval: 1s
        raw: true
        start_at: end
    windowseventlog/source0__security:
        attributes:
            log_type: windows_event.security
        channel: security
        max_reads: 100
        poll_interval: 1s
        raw: true
        start_at: end
    windowseventlog/source0__system:
        attributes:
            log_type: windows_event.system
        channel: system
        max_reads: 100
        poll_interval: 1s
        raw: true
        start_at: end
exporters:
    chronicle/chronicle_w_labels:
        compression: gzip
        creds: '{ json blob for creds }'
        customer_id: <customer_id>
        endpoint: malachiteingestion-pa.googleapis.com
        ingestion_labels:
            env: dev
        log_type: <applicable_log_type>
        namespace: testNamespace
        raw_log_field: body
service:
    pipelines:
        logs/source0__chronicle_w_labels-0:
            receivers:
                - windowseventlog/source0__system
                - windowseventlog/source0__application
                - windowseventlog/source0__security
            exporters:
                - chronicle/chronicle_w_labels
        logs/source1__chronicle_w_labels-0:
            receivers:
                - tcplog
            exporters:
                - chronicle/chronicle_w_labels

Mengirim peristiwa Windows dan syslog ke penerusan Google SecOps

Konfigurasi parameter ini dalam contoh:

Contoh konfigurasi:

receivers:
tcplog:
    listen_address: "0.0.0.0:54525"
    windowseventlog/source0__application:
        attributes:
            log_type: windows_event.application
        channel: application
        max_reads: 100
        poll_interval: 1s
        raw: true
        start_at: end
    windowseventlog/source0__security:
        attributes:
            log_type: windows_event.security
        channel: security
        max_reads: 100
        poll_interval: 1s
        raw: true
        start_at: end
    windowseventlog/source0__system:
        attributes:
            log_type: windows_event.system
        channel: system
        max_reads: 100
        poll_interval: 1s
        raw: true
        start_at: end
exporters:
    chronicleforwarder/forwarder:
        export_type: syslog
        raw_log_field: body
        syslog:
            endpoint: 127.0.0.1:10514
            transport: udp
service:
    pipelines:
        logs/source0__forwarder-0:
            receivers:
                - windowseventlog/source0__system
                - windowseventlog/source0__application
                - windowseventlog/source0__security
            exporters:
                - chronicleforwarder/forwarder
        logs/source1__forwarder-0:
            receivers:
                - tcplog
            exporters:
                - chronicleforwarder/forwarder

Mengirim syslog langsung ke Google SecOps

Konfigurasi parameter ini dalam contoh:

Contoh konfigurasi:

receivers:
  tcplog:
    listen_address: "0.0.0.0:54525"

exporters:
    chronicle/chronicle_w_labels:
        compression: gzip
        creds: '{ json blob for creds }'
        customer_id: <customer_id>
        endpoint: malachiteingestion-pa.googleapis.com
        ingestion_labels:
            env: dev
        log_type: <applicable_log_type>
        namespace: testNamespace
        raw_log_field: body
service:
    pipelines:
        logs/source0__chronicle_w_labels-0:
            receivers:
                - tcplog
            exporters:
                - chronicle/chronicle_w_labels

Mengumpulkan peristiwa Windows dari jarak jauh dan mengirimkannya langsung ke Google SecOps

Konfigurasi parameter ini dalam contoh:

  • windowseventlogreceiver
    • username
    • password
    • server
  • chronicleexporter
    • namespace
    • ingestion_labels
    • log_type
    • customer_id
    • creds

Contoh konfigurasi:

receivers:
    windowseventlog/system:
        channel: system
        max_reads: 100
        start_at: end
        poll_interval: 10s
        raw: true
        remote:
            username: "username"
            password: "password"
            server: "remote-server"
    windowseventlog/application:
        channel: application
        max_reads: 100
        start_at: end
        poll_interval: 10s
        raw: true
        remote:
            username: "username"
            password: "password"
            server: "server-ip"
    windowseventlog/security:
        channel: security
        max_reads: 100
        start_at: end
        poll_interval: 10s
        raw: true
        remote:
            username: "username"
            password: "password"
            server: "server-ip"
exporters:
    chronicle/chronicle_w_labels:
        compression: gzip
        creds: '{ json blob for creds }'
        customer_id: <customer_id>
        endpoint: malachiteingestion-pa.googleapis.com
        ingestion_labels:
            env: dev
        log_type: WINEVTLOG
        namespace: testNamespace
        raw_log_field: body
service:
    pipelines:
        logs/source0__chronicle_w_labels-0:
            receivers:
                - windowseventlog/system
                - windowseventlog/application
                - windowseventlog/security
            exporters:
                - chronicle/chronicle_w_labels

Mengirim data ke Cloud Logging

Konfigurasi parameter credentials_file dalam contoh.

Contoh konfigurasi:

exporters:
  googlecloud:
    credentials_file: /opt/observiq-otel-collector/credentials.json

Mengkueri database SQL dan mengirim hasilnya ke Google SecOps

Konfigurasi parameter ini dalam contoh:

Contoh konfigurasi:

receivers:
  sqlquery/source0:
    datasource: host=localhost port=5432 user=postgres password=s3cr3t sslmode=disable
    driver: postgres
    queries:
      - logs:
          - body_column: log_body
        sql: select * from my_logs where log_id > $$1
        tracking_column: log_id
        tracking_start_value: "10000"
processors:
  transform/source0_processor0__logs:
    error_mode: ignore
    log_statements:
      - context: log
        statements:
          - set(attributes["chronicle_log_type"], "POSTGRESQL") where true
exporters:
  chronicle/chronicle_sql:
    compression: gzip
    creds: '{
  "type": "service_account",
  "project_id": "malachite-projectname",
  "private_key_id": "abcdefghijklmnopqrstuvwxyz123456789",
  "private_key": "-----BEGIN PRIVATE KEY-----abcdefg-----END PRIVATE KEY-----\n",
  "client_email": "account@malachite-projectname.iam.gserviceaccount.com",
  "client_id": "123456789123456789",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/account%40malachite-projectname.iam.gserviceaccount.com",
  "universe_domain": "googleapis.com"
}' 
    customer_id: customer_id
    endpoint: malachiteingestion-pa.googleapis.com
    log_type: POSTGRESQL
    namespace: null
    raw_log_field: body
    retry_on_failure:
      enabled: false
    sending_queue:
      enabled: false
service:
  pipelines:
    logs/source0_chronicle_sql-0:
      receivers:
        - sqlquery/source0
      processors:
        - transform/source0_processor0__logs
      exporters:
        - chronicle/chronicle_sql

Menghapus log yang cocok dengan ekspresi reguler

Anda dapat mengonfigurasi pengumpul untuk menghapus log yang cocok dengan ekspresi reguler. Hal ini berguna untuk memfilter log yang tidak diinginkan, seperti error yang diketahui atau pesan proses debug.

Untuk menghapus log yang cocok dengan ekspresi reguler, tambahkan pemroses jenis filter/drop-matching-logs-to-Chronicle ke konfigurasi Anda. Prosesor ini menggunakan fungsi IsMatch untuk mengevaluasi isi log terhadap ekspresi reguler. Jika fungsi menampilkan true, log akan dihapus.

Contoh konfigurasi berikut akan menghapus log yang berisi string <EventID>10</EventID> atau <EventID>4799</EventID> di isi log.

Anda dapat menyesuaikan ekspresi reguler agar sesuai dengan pola yang Anda butuhkan. Fungsi IsMatch menggunakan sintaksis ekspresi reguler RE2.

Contoh konfigurasi:

processors:
    filter/drop-matching-logs-to-Chronicle:
        error_mode: ignore
        logs:
            log_record:
                - (IsMatch(body, "<EventID>10</EventID>")) or (IsMatch(body, "<EventID>4799</EventID>"))

Contoh berikut menambahkan pemroses ke pipeline dalam konfigurasi yang sama:

service:
  pipelines:
    logs/winevtlog:
      receivers: 
        - windowseventlog/security
        - windowseventlog/application
        - windowseventlog/system
      processors: 
      - filter/drop-matching-logs-to-Chronicle # Add this line
      - batch
      exporters: [chronicle/winevtlog]

Pengoperasian dan pemeliharaan BindPlane

Bagian ini menjelaskan tindakan operasi dan pemeliharaan rutin.

Memverifikasi konfigurasi OTel

Untuk mempelajari cara memverifikasi konfigurasi OTel BindPlane, lihat OTelBin.

Info rilis pengumpul

BindPlane dapat melakukan polling bindplane-otel-collector/releases untuk mendeteksi rilis kolektor baru. Fitur ini bersifat opsional.

Anda dapat menonaktifkan polling GitHub dengan menyetel agentVersions.syncInterval ke 0 dalam konfigurasi Bindplane Anda:

agentVersions:
syncInterval: 0

Pencadangan dan pemulihan dari bencana (disaster recovery)

Untuk mempelajari pencadangan dan pemulihan dari bencana dengan BindPlane, lihat resource BindPlane.

Pencadangan dan pemulihan dari bencana (disaster recovery) PostgreSQL

Untuk mempelajari pencadangan dan pemulihan dari bencana PostgreSQL dengan BindPlane, lihat dokumentasi PostgreSQL.

Pencadangan dan pemulihan dari bencana BBolt

Untuk mempelajari pencadangan dan pemulihan dari bencana BBolt (tidak digunakan lagi) dengan Bindplane, lihat dokumentasi BBolt Store.

Ketahanan dan coba lagi

Coba lagi diaktifkan secara default di semua tujuan yang mendukungnya. Secara default, permintaan yang gagal akan dicoba lagi setelah lima detik dan mundur secara progresif hingga 30 detik. Setelah lima menit, permintaan akan dibatalkan secara permanen.

Untuk mempelajari lebih lanjut, lihat Ketahanan Pengumpul.

Mengurangi volume log dengan filter tingkat keparahan

Untuk mempelajari cara mengurangi volume log, lihat Mengurangi Volume Log dengan Filter Tingkat Keparahan.

Integrasi Bindplane dengan agen pihak ketiga

Meskipun BindPlane lebih efektif jika Anda menggunakan agen BindPlane untuk pengumpulan di edge, dalam sebagian besar kasus, BindPlane dapat tetap berada dalam infrastruktur yang ada. Misalnya, jika Anda sudah menggunakan Fluent Bit atau Splunk Universal Forwarder, Anda dapat terus melakukannya.

Integrasi Bindplane dengan Splunk

Untuk mempelajari Splunk dengan BindPlane, lihat artikel berikut:

Integrasi Bindplane dengan agen pihak ketiga lainnya

Untuk mempelajari integrasi Bindplane dengan agen pihak ketiga, lihat Menghubungkan OpenTelemetry Collector Lainnya Menggunakan Ekstensi OpAMP.

Pemantauan Host Senyap

Untuk mengetahui informasi tentang penggunaan BindPlane untuk pemantauan host senyap, lihat artikel berikut:

Mengupgrade Bindplane di Linux

Menjalankan perintah penginstalan tanpa flag --init di akhir sudah cukup untuk mengupgrade Bindplane. Jalankan skrip ini di server Bindplane Anda untuk mengupgrade Bindplane. Untuk mempelajari lebih lanjut, lihat Mengupgrade, Mendowngrade, atau Meng-uninstal Bindplane Server.

Memantau BindPlane

Untuk mempelajari cara memantau Bindplane, lihat Memantau Bindplane.

Pemantauan Kubernetes

Untuk mempelajari pemantauan Kubernetes di Bindplane, lihat Pemantauan Kubernetes.

Dokumentasi referensi tambahan

Untuk mempelajari Bindplane (sebelumnya dikenal sebagai observIQ) lebih lanjut, lihat artikel berikut:

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