Mengumpulkan log A10 Network Load Balancer
Dokumen ini menjelaskan cara mengekspor log A10 Network Load Balancer ke Google Security Operations menggunakan Agen Bindplane. Parser pertama-tama menggunakan pola grok
untuk mengekstrak kolom yang relevan. Kemudian, pernyataan bersyarat (if
) digunakan untuk memetakan kolom yang diekstrak ke model data terpadu (UDM) berdasarkan keberadaan dan kontennya, yang pada akhirnya mengategorikan jenis peristiwa.
Sebelum memulai
- Pastikan Anda memiliki instance Google SecOps.
- Pastikan Anda menggunakan Windows 2016 atau yang lebih baru, atau host Linux dengan
systemd
. - Jika berjalan di belakang proxy, pastikan port firewall terbuka.
- Pastikan Anda memiliki akses istimewa ke Load Balancer A10.
Mendapatkan file autentikasi penyerapan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Agen Pengumpulan.
- Download File Autentikasi Penyerapan. Simpan file dengan aman di sistem tempat 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
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" /quiet
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.sh
Referensi penginstalan tambahan
- Untuk opsi penginstalan tambahan, lihat panduan penginstalan ini.
Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps
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).
- Cari file
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: '/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 ingestion_labels: log_type: A10_LOAD_BALANCER raw_log_field: body 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 Server Syslog di Load Balancer A10
- Buat koneksi SSH ke Load Balancer A10 menggunakan klien SSH.
Masukkan mode konfigurasi dengan menjalankan perintah berikut:
config
Konfigurasi server syslog jarak jauh menggunakan perintah berikut:
logging host <bindplane-server-ip> <port-number>
- Ganti
<bindplane-server-ip>
dengan alamat IP Bindplane dan<port-number>
dengan yang dikonfigurasi di Bindplane; misalnya,514
.
- Ganti
Tetapkan Tingkat keparahan, gunakan perintah berikut:
logging level information
- Tindakan ini akan mengirimkan pesan informasi (seperti peringatan dan error) ke agen Bindplane.
Pastikan logging syslog diaktifkan dengan menjalankan:
logging enable
Simpan konfigurasi untuk memastikan konfigurasi tetap ada setelah perangkat dimulai ulang:
write memory
Contoh konfigurasi CLI lengkap:
config logging host 192.168.1.100 514 logging level info logging enable write memory
Tabel Pemetaan UDM
Kolom log | Pemetaan UDM | Logika |
---|---|---|
dns | additional.fields.dns.value.string_value | Nilai diambil dari kolom dns yang diekstrak oleh pola grok. |
dns_server | additional.fields.dns_server.value.string_value | Nilai diambil dari kolom dns_server yang diekstrak oleh pola grok. |
gslb | additional.fields.gslb.value.string_value | Nilai diambil dari kolom gslb yang diekstrak oleh pola grok. |
host_name | principal.hostname principal.asset.hostname |
Nilai diambil dari kolom host_name yang diekstrak oleh pola grok. |
httpmethod | network.http.method | Nilai diambil dari kolom httpmethod yang diekstrak oleh pola grok. |
partion_id | additional.fields.partion_id.value.string_value | Nilai diambil dari kolom partion_id yang diekstrak oleh pola grok. |
prin_ip | principal.ip principal.asset.ip |
Nilai diambil dari kolom prin_ip yang diekstrak oleh pola grok. |
prin_mac | principal.mac | Nilai diambil dari kolom prin_mac yang diekstrak oleh pola grok, dengan titik dihapus dan titik dua dimasukkan setiap dua karakter. |
prin_port | principal.port | Nilai diambil dari kolom prin_port yang diekstrak oleh pola grok dan dikonversi menjadi bilangan bulat. |
proto | network.ip_protocol | Nilai diambil dari kolom proto yang diekstrak oleh pola grok. Jika kolom message berisi UDP , nilai akan ditetapkan ke UDP . |
sessionid | network.session_id | Nilai diambil dari kolom sessionid yang diekstrak oleh pola grok. |
status_code | network.http.response_code | Nilai diambil dari kolom status_code yang diekstrak oleh pola grok dan dikonversi menjadi bilangan bulat. |
tar_ip | target.ip target.asset.ip |
Nilai diambil dari kolom tar_ip yang diekstrak oleh pola grok. |
tar_mac | target.mac | Nilai diambil dari kolom tar_mac yang diekstrak oleh pola grok, dengan titik dihapus dan titik dua dimasukkan setiap dua karakter. |
tar_port | target.port | Nilai diambil dari kolom tar_port yang diekstrak oleh pola grok dan dikonversi menjadi bilangan bulat. |
waktu | metadata.event_timestamp.seconds | Nilai diuraikan dari kolom time yang diekstrak oleh pola grok, menggunakan beberapa kemungkinan format tanggal. |
url | target.url | Nilai diambil dari kolom url yang diekstrak oleh pola grok. |
pengguna | principal.user.userid | Nilai diambil dari kolom user yang diekstrak oleh pola grok. |
T/A | metadata.event_type | Ditentukan oleh logika parser berdasarkan keberadaan informasi pokok dan target: - NETWORK_CONNECTION : jika informasi pokok dan target ada.- STATUS_UPDATE : jika hanya informasi akun utama yang ada.- GENERIC_EVENT : jika tidak. |
T/A | metadata.log_type | Hardcode ke A10_LOAD_BALANCER . |
T/A | network.application_protocol | Tetapkan ke HTTP jika kolom proto adalah HTTP . |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.