Mengumpulkan log BMC AMI Defender
Dokumen ini menjelaskan cara menyerap log BMC AMI Defender ke Google Security Operations menggunakan agen Bindplane.
BMC AMI Datastream for z/OS adalah program agen mainframe yang memantau aktivitas sistem z/OS serta mengumpulkan, memproses, dan mengirimkan catatan System Management Facility (SMF) ke sistem SIEM terdistribusi secara real time. Agen memformat ulang rekaman SMF dari RACF, ACF2, Top Secret, TCP/IP, CICS, IMS, dan peristiwa sistem dan aplikasi z/OS lainnya sebagai pesan syslog yang kompatibel dengan RFC 3164 dan mengirimkannya melalui protokol UDP, TCP, atau TLS.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Windows Server 2016 atau yang lebih baru, atau host Linux dengan
systemduntuk agen Bindplane - Konektivitas jaringan antara host agen Bindplane dan LPAR z/OS yang menjalankan BMC AMI Datastream
- Jika beroperasi dari balik proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen Bindplane
- BMC AMI Datastream for z/OS versi 6.1 atau yang lebih baru diinstal dan berjalan di z/OS LPAR
- Akses untuk mengedit file parameter dalam set data amihlq.PARM di z/OS (biasanya memerlukan akses TSO/ISPF atau otoritas pengiriman tugas batch)
- Otoritas untuk mengubah konfigurasi BMC AMI Datastream (biasanya memerlukan akses BACA RACF ke set data parameter)
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
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 aktif (berjalan).
Referensi penginstalan tambahan
Untuk opsi penginstalan dan pemecahan masalah tambahan, lihat Panduan penginstalan agen BindPlane.
Mengonfigurasi agen BindPlane untuk menyerap syslog dan mengirimkannya ke Google SecOps
Cari file konfigurasi
Linux:
sudo nano /etc/bindplane-agent/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Edit file konfigurasi
Ganti seluruh konten
config.yamldengan konfigurasi berikut:receivers: tcplog: listen_address: "0.0.0.0:1514" exporters: chronicle/bmc_datastream: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: 'your-customer-id-here' endpoint: malachiteingestion-pa.googleapis.com log_type: BMC_AMI_DEFENDER raw_log_field: body service: pipelines: logs/datastream_to_chronicle: receivers: - tcplog exporters: - chronicle/bmc_datastreamGanti placeholder berikut:
Konfigurasi penerima:
listen_address: Alamat IP dan port yang akan diproses:0.0.0.0:1514untuk memantau semua antarmuka di port 1514 (direkomendasikan untuk Linux non-root)0.0.0.0:514untuk memantau semua antarmuka di port syslog standar (memerlukan root di Linux)- Alamat IP tertentu untuk memproses permintaan di satu antarmuka
Konfigurasi pengekspor:
creds_file_path: Jalur lengkap ke file autentikasi penyerapan:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id:customer IDAnda. Untuk mengetahui detailnya, lihat Mendapatkan ID pelanggan Google SecOps.endpoint: URL endpoint regional:- Amerika Serikat:
malachiteingestion-pa.googleapis.com - Eropa:
europe-malachiteingestion-pa.googleapis.com - Asia:
asia-southeast1-malachiteingestion-pa.googleapis.com - Lihat Endpoint Regional untuk mengetahui daftar lengkapnya
- Amerika Serikat:
log_type:BMC_AMI_DEFENDER
Contoh konfigurasi untuk syslog UDP
Jika Anda lebih memilih transpor UDP (latensi lebih rendah, kirim dan lupakan):
receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/bmc_datastream: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: 'a1b2c3d4-e5f6-g7h8-i9j0-k1l2m3n4o5p6' endpoint: malachiteingestion-pa.googleapis.com log_type: BMC_AMI_DEFENDER raw_log_field: body service: pipelines: logs/datastream_to_chronicle: receivers: - udplog exporters: - chronicle/bmc_datastream
Simpan file konfigurasi
Setelah mengedit, simpan file:
- Linux: Tekan
Ctrl+O, laluEnter, laluCtrl+X - Windows: Klik File > Save
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 layanan:
- Tekan
Win+R, ketikservices.msc, lalu tekan Enter. - Temukan observIQ OpenTelemetry Collector.
- Klik kanan, lalu pilih Mulai Ulang.
- Tekan
Pastikan layanan sedang berjalan:
sc query observiq-otel-collectorPeriksa log untuk mengetahui error:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Mengonfigurasi penerusan syslog BMC AMI Defender
Edit file parameter menggunakan TSO/ISPF
- Login ke TSO/ISPF di LPAR z/OS tempat BMC AMI Datastream diinstal.
- Dari ISPF Primary Option Menu, masukkan 2 untuk memilih EDIT.
Di Edit - Entry Panel, masukkan berikut ini:
- ISPF Library: Masukkan nama set data parameter dalam format
'amihlq.PARM', dengan amihlq adalah penentu tingkat tinggi yang dipilih selama penginstalan (misalnya,'PROD.CZAGENT.PARM'). - Member: Masukkan
$$$CONFG.
- ISPF Library: Masukkan nama set data parameter dalam format
Press Enter to open the member for editing.
Configure the SIEM type
- In the
$$$CONFGanggota, temukan bagian berlabel Switches for setting the SIEM type. Batalkan komentar pada satu jenis SIEM dengan menghapus titik koma di awal dari baris yang sesuai:
- Untuk format syslog standar, hapus komentar:
SWITCH ON(RFC3164) - Untuk Common Event Format, hapus komentar:
SWITCH ON(CEF) - Untuk format JSON, hapus komentar:
SWITCH ON(JSON) - Untuk format LEEF IBM QRadar, hapus komentar:
SWITCH ON(LEEF) - Untuk format Splunk, hapus komentar:
SWITCH ON(Splunk)
- Untuk format syslog standar, hapus komentar:
Tekan F3 untuk menyimpan dan keluar dari anggota.
Mengonfigurasi server syslog
Dari Edit - Entry Panel, masukkan hal berikut:
- ISPF Library: Masukkan
'amihlq.PARM'(sama seperti sebelumnya). - Anggota: Masukkan
$$$SERVR.
- ISPF Library: Masukkan
Press Enter to open the member for editing.
Locate the section corresponding to your selected SIEM type. For example:
- For RFC3164: Locate the section labeled
; RFC3164 - For CEF: Locate the section labeled
; CEF - TRANS(TCP) Recommended - For JSON: Locate the section labeled
; JSON - TRANS(TCP) Recommended
- For RFC3164: Locate the section labeled
Uncomment the SERVER statement by removing the leading semicolon.
Edit the SERVER statement with the following values:
- Replace
ip.addr.examplewith the IP address of the Bindplane agent host (for example,192.168.1.100). If using TCP (recommended), the statement should look like:
SERVER 192.168.1.100:1514 TRANS(TCP) MAXMSG(2000)If using UDP, the statement should look like:
SERVER 192.168.1.100:514 TRANS(UDP) MAXMSG(2000)
- Replace
If you selected CEF, JSON, or Splunk format and are using TCP transport, locate the OPTIONS statement section and uncomment the FRAMING parameter:
OPTIONS FRAMING(OCTETCOUNT)Press F3 to save and exit the member.
Refresh the BMC AMI Datastream configuration
- From the ISPF Primary Option Menu, enter 6 to select COMMAND.
On the TSO Command Processor screen, enter the following MVS console command:
F czagentname,PARMSReplace
czagentnamewith the name of the BMC AMI Datastream started task (typicallyCZAGENTor the instance name configured during installation).Press Enter to execute the command.
Verify the configuration was refreshed by checking the system log for message CZA0001I indicating the parameter file was successfully processed.
Verify syslog transmission
- From the ISPF Primary Option Menu, enter 6 to select COMMAND.
Enter the following command to display BMC AMI Datastream statistics:
F czagentname,STATSPress Enter to execute the command.
Check the system log for message CZA0350I showing the number of messages sent to the syslog server.
Verify the Bindplane agent is receiving messages by checking the Bindplane agent logs:
- Linux:
sudo journalctl -u observiq-otel-collector -f - Windows: Check
C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log
- Linux:
Alternative: Edit parameter file using batch job
If you do not have TSO/ISPF access, you can edit the parameter files using a batch job:
Create a batch job with the following JCL:
//EDITPARM JOB (ACCT),'EDIT DATASTREAM PARMS', // CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID //STEP1 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //SYSUT1 DD * SWITCH ON(RFC3164) /* //SYSUT2 DD DSN=amihlq.PARM($$$CONFG),DISP=SHR //STEP2 EXEC PGM=IEBGENER //SYSPRINT DD SYSOUT=* //SYSIN DD DUMMY //SYSUT1 DD * SERVER 192.168.1.100:1514 TRANS(TCP) MAXMSG(2000) /* //SYSUT2 DD DSN=amihlq.PARM($$$SERVR),DISP=SHRGanti
amihlqdengan kualifikasi tingkat tinggi untuk penginstalan BMC AMI Datastream Anda.Ganti
192.168.1.100:1514dengan alamat IP dan port host agen Bindplane Anda.Kirimkan tugas dan verifikasi penyelesaian yang berhasil (kode yang ditampilkan 0).
Keluarkan perintah MODIFY untuk memperbarui konfigurasi seperti yang dijelaskan di bagian sebelumnya.
Tabel pemetaan UDM
| Kolom Log | Pemetaan UDM | Logika |
|---|---|---|
| aceeadsp | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceeaudt | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceeflg1 | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceelogu | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceeoper | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceepriv | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceeracf | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceeroa | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| aceespec | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| additional.fields | additional.fields | Informasi tambahan tentang acara |
| auth | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_audit | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_bypass | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_exit | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_normal | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_oper | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_soft | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_special | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| auth_trusted | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| authinfo | security_result.description | Deskripsi hasil keamanan |
| event | metadata.product_event_type | Jenis peristiwa khusus produk |
| event_type | metadata.event_type | Jenis acara (misalnya, USER_LOGIN, NETWORK_CONNECTION) |
| eventdesc | metadata.description | Deskripsi peristiwa |
| grup | additional.fields | Informasi tambahan tentang acara |
| hostname | principal.hostname, principal.asset.hostname | Nama host prinsipal, Nama host aset |
| jobid | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| jobnm | additional.fields | Informasi tambahan tentang acara |
| jsauth | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| nama | principal.user.user_display_name | Nama tampilan pengguna |
| pgm | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| privstatd | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_always | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_audit | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_cmdviol | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_globalaudit | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_setropts | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_special | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_user | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| reas_verify | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| rtype | additional.fields | Informasi tambahan tentang acara |
| saf | additional.fields | Informasi tambahan tentang acara |
| safd | additional.fields | Informasi tambahan tentang acara |
| security_result.detection_fields | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| tingkat keseriusan, | security_result.severity, security_result.severity_details | Tingkat keparahan hasil keamanan, Informasi mendetail tentang tingkat keparahan |
| sid | additional.fields | Informasi tambahan tentang acara |
| timestamp | metadata.event_timestamp | Stempel waktu saat peristiwa terjadi |
| tokflg1 | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| tokflg3 | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| tokpriv | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| toksus | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| tokudus | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| userid | principal.user.userid | ID Pengguna |
| pelanggaran | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| user_warning | security_result.detection_fields | Kolom yang digunakan untuk menentukan hasil keamanan |
| worktyped | additional.fields | Informasi tambahan tentang acara |
| metadata.product_name | Nama produk | |
| metadata.vendor_name | Nama vendor/perusahaan |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.