Mengumpulkan log AlgoSec Security Management
Versi Parser: 4.0
Dokumen ini menjelaskan cara menyerap log AlgoSec Security Management ke Google Security Operations menggunakan agen Bindplane.
AlgoSec Security Management Suite (ASMS) menyediakan pengelolaan kebijakan keamanan jaringan di seluruh firewall, SDN, dan platform cloud. Suite ini mencakup Firewall Analyzer untuk analisis risiko dan kepatuhan, FireFlow untuk otomatisasi pengelolaan perubahan, dan AppViz untuk visibilitas konektivitas aplikasi.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Windows Server 2016 atau yang lebih baru, atau host Linux dengan
systemd - Konektivitas jaringan antara agen Bindplane dan peralatan AlgoSec
- Jika beroperasi dari balik proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen Bindplane
- Akses istimewa ke AlgoSec Firewall Analyzer, FireFlow, dan AppViz
Mendapatkan kredensial Google SecOps untuk agen Bindplane
Untuk mengautentikasi agen Bindplane ke Google SecOps, pilih salah satu metode berikut:
- Deployment baru: Gunakan Chronicle API (Opsi 1).
- Deployment lama: Terus menggunakan file autentikasi penyerapan (Opsi 2) hingga Ingestion API dihentikan pada 20 Juli 2027.
Opsi 1: Membuat akun layanan untuk Chronicle API (direkomendasikan)
- Login ke Google Cloud konsol dan pilih project Google Cloud yang ditautkan ke instance Google SecOps Anda.
- Buka IAM & Admin > Service Accounts.
- Klik Create service account.
- Berikan detail konfigurasi berikut:
- Service account name: Masukkan nama akun (misalnya,
bindplane-ingest). - Deskripsi akun layanan: Masukkan deskripsi (misalnya,
Bindplane agent log ingestion).
- Service account name: Masukkan nama akun (misalnya,
- Klik Create and continue.
- Di bagian Grant this service account access to project, klik Select a role, lalu pilih Chronicle Editor.
- Klik Continue lalu klik Done.
- Klik akun layanan yang Anda buat, lalu buka tab Keys.
- Klik Add key > Create new key.
- Pilih JSON, lalu klik Create. File kunci akan didownload ke komputer Anda.
- Simpan file kunci sebagai
ingestion-auth.jsondi direktori pengumpul Bindplane (/opt/observiq-otel-collector/ingestion-auth.jsondi Linux atauC:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.jsondi Windows), atau perbaruicreds_file_pathdiconfig.yamlagar cocok dengan jalur tempat Anda menyimpannya. - Buka IAM & Admin > Settings dan salin Project number. Anda akan memerlukannya untuk konfigurasi pengekspor.
Opsi 2: Mendownload file autentikasi penyerapan (lama)
- Login ke konsol Google SecOps.
- Buka SIEM Settings > Collection Agents.
- Download file autentikasi penyerapan.
- Simpan file dengan aman di sistem tempat agen Bindplane akan diinstal.
Mendapatkan ID pelanggan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Profil.
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
- Buka Command Prompt atau PowerShell sebagai administrator.
Jalankan perintah berikut:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietTunggu hingga penginstalan selesai.
Verifikasi penginstalan dengan menjalankan:
sc query observiq-otel-collectorLayanan akan ditampilkan sebagai RUNNING.
Penginstalan Linux
- Buka terminal dengan hak istimewa root atau sudo.
Jalankan perintah berikut:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.shTunggu hingga penginstalan selesai.
Verifikasi penginstalan dengan menjalankan:
sudo systemctl status observiq-otel-collectorLayanan akan ditampilkan sebagai active (running).
Referensi penginstalan tambahan
Untuk opsi pemasangan dan pemecahan masalah tambahan, lihat Panduan pemasangan agen Bindplane.
Mengonfigurasi agen Bindplane untuk menyerap syslog dan mengirimkannya ke Google SecOps
Cari file konfigurasi
Linux:
sudo nano /opt/observiq-otel-collector/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Mengedit file konfigurasi
Ganti seluruh konten
config.yamldengan konfigurasi berikut:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/algosec: protocol: https # Region of your instance, for example us, europe, asia-southeast1 location: <LOCATION> # Project number of the Google Cloud project linked to the instance project: '<PROJECT_NUMBER>' compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: '<customer_id>' endpoint: chronicle.googleapis.com log_type: ALGOSEC raw_log_field: body service: pipelines: logs/algosec_to_chronicle: receivers: - udplog exporters: - chronicle/algosec
Parameter konfigurasi
Ganti placeholder berikut:
Konfigurasi penerima:
listen_address: Alamat IP dan port yang akan diproses:0.0.0.0untuk memproses semua antarmuka (direkomendasikan)- Port
514adalah port syslog standar (memerlukan root di Linux; gunakan1514untuk non-root)
Konfigurasi pengekspor:
creds_file_path: Jalur lengkap ke file kunci JSON akun layanan (Opsi 1):- Linux:
/opt/observiq-otel-collector/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id: ID Pelanggan yang disalin dari konsol Google SecOpslocation: Ganti<LOCATION>dengan region instance Google SecOps Anda (misalnya,us,europe, atauasia-southeast1). Pengekspor mengawalichronicle.googleapis.comdengan nilai ini. Lihat Endpoint Regional untuk mengetahui daftar lengkapnya.project: Ganti<PROJECT_NUMBER>dengan nomor project dari IAM & Admin > Settings.endpoint: Tetap tetapkan kechronicle.googleapis.com.
Pengekspor API penyerapan lama
Jika Anda menggunakan file autentikasi penyerapan dari Opsi 2, ganti blok
exportersdengan kode berikut. Tetapkancreds_file_pathke jalur ke file autentikasi penyerapan, dan jika instance Anda berada di luar AS, gantimalachiteingestion-pa.googleapis.comdengan endpoint regional Anda (misalnya,europe-malachiteingestion-pa.googleapis.com).exporters: chronicle/algosec: compression: gzip creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: ALGOSEC raw_log_field: body
Simpan file konfigurasi
- Setelah mengedit, simpan file:
- Linux: Tekan
Ctrl+O, laluEnter, laluCtrl+X - Windows: Klik File > Save
- Linux: Tekan
Mulai ulang agen Bindplane untuk menerapkan perubahan
Untuk memulai ulang agen Bindplane di Linux, jalankan perintah berikut:
sudo systemctl restart observiq-otel-collectorPastikan layanan sedang berjalan:
sudo systemctl status observiq-otel-collectorPeriksa log untuk mengetahui error:
sudo journalctl -u observiq-otel-collector -f
Untuk memulai ulang agen Bindplane di Windows, pilih salah satu opsi berikut:
Command Prompt atau PowerShell sebagai administrator:
net stop observiq-otel-collector && net start observiq-otel-collectorKonsol Services:
- Tekan
Win+R, ketikservices.msc, lalu tekan Enter. - Cari observIQ OpenTelemetry Collector.
- Klik kanan, lalu pilih Restart.
Pastikan layanan sedang berjalan:
sc query observiq-otel-collectorPeriksa log untuk mengetahui error:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Tekan
Mengonfigurasi syslog untuk Firewall Analyzer
- Login ke appliance AFA menggunakan SSH.
Buka direktori konfigurasi syslog-ng:
cd /etc/syslog-ngCadangkan konfigurasi yang ada:
cp syslog-ng.conf syslog-ng.conf.origEdit file konfigurasi syslog-ng:
vi syslog-ng.confTambahkan baris berikut untuk menentukan server syslog jarak jauh:
destination d_remote { udp("<BINDPLANE_IP>" port(514)); }; log { source(s_sys); destination(d_remote); };- Ganti
<BINDPLANE_IP>dengan alamat IP agen Bindplane.
- Ganti
Simpan dan keluar dari editor.
Mulai ulang layanan syslog-ng untuk menerapkan perubahan:
service syslog-ng restartOpsional: Verifikasi konfigurasi Syslog:
- Buka Administration > Syslog Server Settings.
- Klik Test Connectivity.
Mengonfigurasi syslog untuk FireFlow
- Login ke mesin FireFlow sebagai root.
Buka file
/etc/syslog.confuntuk mengedit:vi /etc/syslog.confTambahkan baris berikut ke file:
local0.*@<BINDPLANE_IP>- Ganti
<BINDPLANE_IP>dengan alamat IP server agen Bindplane.
- Ganti
Mengonfigurasi Syslog untuk AppViz
- Login ke peralatan AppViz melalui SSH.
Buka direktori konfigurasi syslog-ng:
cd /etc/syslog-ngCadangkan konfigurasi yang ada:
cp syslog-ng.conf syslog-ng.conf.origEdit file konfigurasi syslog-ng:
vi syslog-ng.confTambahkan kode berikut untuk menentukan server syslog jarak jauh:
destination d_remote { udp("<BINDPLANE_IP>" port(514)); }; log { source(s_sys); destination(d_remote); };- Ganti
<BINDPLANE_IP>dengan alamat IP agen Bindplane.
- Ganti
Simpan dan keluar dari editor.
Mulai ulang layanan syslog-ng untuk menerapkan perubahan:
service syslog-ng restartVerifikasi konfigurasi syslog:
- Di antarmuka AppViz, buka Administration > Syslog Server Settings.
- Klik Uji Konektivitas.
Mengonfigurasi syslog untuk peristiwa login dan logout
- Login ke ASMS appliance melalui SSH.
Buka direktori konfigurasi syslog-ng:
cd /etc/syslog-ngCadangkan konfigurasi yang ada:
cp syslog-ng.conf syslog-ng.conf.origEdit file konfigurasi syslog-ng:
vi syslog-ng.confTambahkan kode berikut untuk menentukan server syslog jarak jauh:
destination d_remote { udp("<BINDPLANE_IP>" port(514)); }; log { source(s_sys); destination(d_remote); };- Ganti
<BINDPLANE_IP>dengan alamat IP agen Bindplane.
- Ganti
Simpan dan keluar dari editor.
Mulai ulang layanan syslog-ng untuk menerapkan perubahan:
service syslog-ng restart
Tabel pemetaan UDM
| Kolom Log | Pemetaan UDM | Logika |
|---|---|---|
by_user |
principal.user.user_display_name |
Nilai kolom by_user dari log mentah ditetapkan ke kolom UDM ini. |
collection_time |
metadata.event_timestamp |
Kolom seconds dan nanos digabungkan untuk membuat stempel waktu. |
comm |
target.process.command_line |
Nilai kolom comm yang diekstrak dari kolom desc menggunakan grok ditetapkan ke kolom UDM ini. |
datetime |
metadata.event_timestamp |
Tanggal dan waktu diekstrak dari log mentah dan digunakan untuk mengisi stempel waktu peristiwa. |
desc |
metadata.description |
Nilai kolom desc dari log mentah ditetapkan ke kolom UDM ini jika tidak ada deskripsi lain yang tersedia. |
dest_ip |
target.ip |
Nilai kolom dest_ip dari log mentah ditetapkan ke kolom UDM ini. |
dest_port |
target.port |
Nilai kolom dest_port dari log mentah ditetapkan ke kolom UDM ini. |
details |
security_result.summary |
Nilai kolom details dari log mentah ditetapkan ke kolom UDM ini. |
device |
principal.asset.hostname |
Nilai kolom device dari log mentah ditetapkan ke kolom UDM ini. |
dst_ip |
target.ip |
Nilai kolom dst_ip dari log mentah ditetapkan ke kolom UDM ini. |
dst_port |
target.port |
Nilai kolom dst_port dari log mentah ditetapkan ke kolom UDM ini. |
event_id |
metadata.product_event_type |
Nilai kolom event_id dari log mentah ditetapkan ke kolom UDM ini. ID ini juga digunakan dalam logika parser untuk menentukan metadata.event_type dan kolom lainnya. |
event_name |
metadata.product_event_type |
Nilai kolom event_name dari log mentah ditetapkan ke kolom UDM ini. |
firewall |
target.hostname |
Nilai kolom firewall dari log mentah ditetapkan ke kolom UDM ini. |
host |
principal.hostname |
Nilai kolom host dari log mentah ditetapkan ke kolom UDM ini. |
host_type |
principal.asset.category |
Nilai kolom host_type dari log mentah ditetapkan ke kolom UDM ini. |
iporhost |
principal.ip/principal.hostname/target.ip/target.hostname/observer.ip/observer.hostname |
Jika nilainya adalah alamat IP, nilai tersebut akan dipetakan ke principal.ip,target.ip, atau observer.ip, bergantung pada sumber log dan jenis peristiwa. Jika berupa nama host, maka dipetakan ke principal.hostname,target.hostname, atau observer.hostname. |
IP |
principal.ip |
Nilai kolom IP dari log mentah ditetapkan ke kolom UDM ini. |
kv_data |
security_result.summary |
Nilai kolom kv_data dari log mentah ditetapkan ke kolom UDM ini. |
log_type |
metadata.log_type |
Dihardcode ke ALGOSEC. |
metric |
security_result.action_details |
Nilai kolom metric dari log mentah ditetapkan ke kolom UDM ini. |
msg |
security_result.summary/security_result.description |
Nilai kolom msg dari log mentah digunakan untuk mengisi ringkasan atau deskripsi hasil keamanan, bergantung pada konteksnya. Hal ini juga digunakan untuk kolom extractrisk_level,risk_count,risk_code, dan risk_title. |
pid |
target.process.pid |
Nilai kolom pid yang diekstrak dari kolom desc menggunakan grok ditetapkan ke kolom UDM ini. |
product |
metadata.product_name |
Nilai kolom product dari log mentah ditetapkan ke kolom UDM ini. |
report |
security_result.description |
Nilai kolom report dari log mentah disertakan dalam deskripsi hasil keamanan. |
report_data.Device IP |
target.ip |
Nilai kolom Device IP dari data JSON yang diuraikan ditetapkan ke kolom UDM ini. |
report_data.Highest Risk Level |
security_result.description |
Nilai kolom Highest Risk Level dari data JSON yang diuraikan disertakan dalam deskripsi hasil keamanan. Informasi ini juga digunakan untuk menentukan tingkat keparahan hasil keamanan. |
report_data.Security Rating Score |
security_result.description |
Nilai kolom Security Rating Score dari data JSON yang diuraikan disertakan dalam deskripsi hasil keamanan. |
Requestor.Email |
principal.user.email_addresses |
Nilai kolom Email dalam objek Request dari data JSON yang diuraikan ditetapkan ke kolom UDM ini. |
Requestor.Name |
principal.user.user_display_name |
Nilai kolom Name dalam objek Requestor dari data JSON yang diuraikan ditetapkan ke kolom UDM ini. |
RequestType |
target.resource.attribute.labels |
Nilai kolom RequestType dari log mentah ditambahkan sebagai label ke resource target. |
risk_title |
security_result.summary |
Nilai kolom risk_title dari log mentah ditetapkan ke kolom UDM ini. |
src_ip |
principal.ip |
Nilai kolom src_ip dari log mentah ditetapkan ke kolom UDM ini. |
src_port |
principal.port |
Nilai kolom src_port dari log mentah ditetapkan ke kolom UDM ini. |
status |
security_result.description/security_result.action_details |
Nilai kolom status dari log mentah disertakan dalam deskripsi hasil keamanan atau detail tindakan, bergantung pada konteksnya. Informasi ini juga digunakan untuk menentukan tingkat keparahan hasil keamanan. |
target_app |
target.application |
Nilai kolom target_app dari log mentah ditetapkan ke kolom UDM ini. |
TemplateName |
metadata.description |
Nilai kolom TemplateName dari log mentah ditetapkan ke kolom UDM ini. |
url |
security_result.url_back_to_product |
Nilai kolom url dari log mentah ditetapkan ke kolom UDM ini. |
user |
principal.user.userid |
Nilai kolom user dari log mentah ditetapkan ke kolom UDM ini. |
vendor |
metadata.vendor_name |
Nilai kolom vendor dari log mentah ditetapkan ke kolom UDM ini. |
version |
metadata.product_version |
Nilai kolom version dari log mentah ditetapkan ke kolom UDM ini. |
WorkFlow |
target.resource.attribute.labels |
Nilai kolom WorkFlow dari log mentah ditambahkan sebagai label ke resource target. |
(Parser Logic) |
extensions.auth.type |
Dihardcode ke MACHINE. |
(Parser Logic) |
security_result.action |
Ditentukan berdasarkan event_id dan kolom lainnya. Biasanya ditetapkan ke ALLOW or BLOCK. |
(Parser Logic) |
security_result.category |
Dikodekan secara permanen ke POLICY_VIOLATION untuk peristiwa Firewall Analyzer. |
(Parser Logic) |
security_result.description |
Dibuat berdasarkan kolom lain, memberikan konteks dan detail tentang peristiwa. |
(Parser Logic) |
security_result.severity |
Ditentukan berdasarkan event_id,msg, dan kolom lainnya. Biasanya disetel ke LOW,MEDIUM, atau `HIGH. |
(Parser Logic) |
metadata.event_type |
Ditentukan berdasarkan event_id dan kolom lainnya. Contohnya mencakup USER_LOGIN,USER_LOGOUT,USER_RESOURCE_ACCESS,GENERIC_EVENT,STATUS_UNCATEGORIZED,SCAN_HOST,NETWORK_CONNECTION, dan STATUS_UPDATE. |
Log Perubahan
Melihat Log Perubahan untuk parser ini
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.