Mengumpulkan log Elastic Windows Event Log Beats
Dokumen ini menjelaskan cara menyerap log Elastic Windows Event Log Beats ke Google Security Operations menggunakan agen Bindplane.
Winlogbeat adalah agen pengiriman log peristiwa khusus Windows dari Elastic yang mengumpulkan Log Peristiwa Windows dan meneruskannya ke berbagai tujuan. Agen ini berjalan sebagai layanan Windows di sistem Windows dan dapat mengumpulkan peristiwa dari Application, Security, System, dan saluran log peristiwa Windows lainnya.
Sebelum memulai
Pastikan Anda memiliki prasyarat berikut:
- Instance Google SecOps
- Windows Server 2016 atau yang lebih baru, atau host Linux dengan
systemduntuk menjalankan agen Bindplane - Konektivitas jaringan antara agen Bindplane dan server Logstash
- Konektivitas jaringan antara Logstash dan agen Bindplane
- Jika beroperasi dari balik proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen Bindplane
- Sistem Windows tempat Winlogbeat akan diinstal untuk mengumpulkan log peristiwa
- Akses administrator ke sistem Windows untuk penginstalan Winlogbeat
- Server Logstash (versi 7.x atau 8.x) untuk pemrosesan perantara
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-collectorStatus layanan harus 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-collectorStatus layanan harus 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/winlogbeat: compression: gzip creds_file_path: '<CREDS_FILE_PATH>' customer_id: '<CUSTOMER_ID>' endpoint: <REGION_ENDPOINT> log_type: ELASTIC_WINLOGBEAT raw_log_field: body ingestion_labels: env: production source: winlogbeat service: pipelines: logs/winlogbeat_to_chronicle: receivers: - tcplog exporters: - chronicle/winlogbeatGanti placeholder berikut:
Konfigurasi penerima:
listen_address: Setel ke0.0.0.0:1514untuk memproses semua antarmuka di port 1514 (TCP). Anda dapat mengubah nomor port jika diperlukan, tetapi pastikan nomor tersebut cocok dengan konfigurasi output syslog Logstash.
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>: ID Pelanggan dari langkah sebelumnya<REGION_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:
Contoh konfigurasi:
receivers: tcplog: listen_address: "0.0.0.0:1514" exporters: chronicle/winlogbeat: 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: ELASTIC_WINLOGBEAT raw_log_field: body ingestion_labels: env: production source: winlogbeat service: pipelines: logs/winlogbeat_to_chronicle: receivers: - tcplog exporters: - chronicle/winlogbeat
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"
Menginstal dan mengonfigurasi Logstash
Logstash diperlukan sebagai perantara untuk menerima peristiwa dari Winlogbeat dan meneruskannya ke agen Bindplane melalui syslog. Winlogbeat tidak memiliki kemampuan output syslog native.
Instal Logstash
- Download Logstash dari halaman download Elastic.
- Instal Logstash di server Windows atau Linux:
Linux (Debian/Ubuntu):
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - sudo apt-get install apt-transport-https echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list sudo apt-get update && sudo apt-get install logstashLinux (RHEL/CentOS):
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch sudo tee /etc/yum.repos.d/logstash.repo <<EOF [logstash-8.x] name=Elastic repository for 8.x packages baseurl=https://artifacts.elastic.co/packages/8.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md EOF sudo yum install logstashWindows:
- Download file ZIP dari halaman download Elastic.
- Ekstrak ke
C:\logstash.
Mengonfigurasi pipeline Logstash
Buat file konfigurasi pipeline baru:
Linux:
sudo nano /etc/logstash/conf.d/winlogbeat-to-syslog.confWindows:
notepad "C:\logstash\config\winlogbeat-to-syslog.conf"
Tambahkan konfigurasi berikut:
input { beats { port => 5044 } } output { syslog { host => "<BINDPLANE_AGENT_IP>" port => 1514 protocol => "tcp" rfc => "rfc5424" appname => "winlogbeat" facility => "user-level" severity => "informational" } }Ganti
<BINDPLANE_AGENT_IP>dengan alamat IP server yang menjalankan agen Bindplane.
Contoh konfigurasi Logstash
input { beats { port => 5044 } } output { syslog { host => "192.168.1.100" port => 1514 protocol => "tcp" rfc => "rfc5424" appname => "winlogbeat" facility => "user-level" severity => "informational" } }
Mulai Logstash
Linux:
Mulai Logstash:
sudo systemctl start logstash sudo systemctl enable logstashPastikan Logstash berjalan:
sudo systemctl status logstashPeriksa log Logstash:
sudo tail -f /var/log/logstash/logstash-plain.log
Windows:
cd C:\logstash\bin logstash.bat -f C:\logstash\config\winlogbeat-to-syslog.confUntuk penggunaan produksi, instal Logstash sebagai layanan Windows menggunakan NSSM atau alat serupa.
Menginstal Winlogbeat di sistem Windows
Download Winlogbeat
- Download Winlogbeat dari halaman download Elastic.
- Pilih penginstal ZIP atau MSI untuk Windows.
Instal Winlogbeat
Menggunakan penginstal MSI:
- Jalankan penginstal MSI.
- Ikuti wizard penginstalan.
- Instal ke lokasi default:
C:\Program Files\Winlogbeat.
Menggunakan file ZIP:
- Ekstrak file ZIP ke
C:\Program Files\Winlogbeat. - Buka PowerShell sebagai administrator.
Buka direktori Winlogbeat:
cd 'C:\Program Files\Winlogbeat'Jalankan skrip penginstalan:
.\install-service-winlogbeat.ps1
- Ekstrak file ZIP ke
Mengonfigurasi Winlogbeat untuk mengirim log ke Logstash
Buka file konfigurasi Winlogbeat:
notepad "C:\Program Files\Winlogbeat\winlogbeat.yml"Konfigurasi log peristiwa yang akan dikumpulkan. Temukan bagian
winlogbeat.event_logsdan konfigurasikan sebagai berikut:winlogbeat.event_logs: - name: Application ignore_older: 72h - name: System - name: Security - name: Microsoft-Windows-Sysmon/Operational ignore_older: 72h - name: Windows PowerShell event_id: 400, 403, 600, 800 - name: Microsoft-Windows-PowerShell/Operational event_id: 4103, 4104, 4105, 4106 - name: ForwardedEvents tags: [forwarded]Beri komentar pada bagian output Elasticsearch dengan menambahkan
#di awal setiap baris:#output.elasticsearch: # hosts: ["localhost:9200"]Batalkan komentar dan konfigurasi bagian output Logstash:
output.logstash: hosts: ["<LOGSTASH_SERVER_IP>:5044"]Ganti
<LOGSTASH_SERVER_IP>dengan alamat IP server Logstash Anda.
Contoh konfigurasi Winlogbeat
winlogbeat.event_logs: - name: Application ignore_older: 72h - name: System - name: Security - name: Microsoft-Windows-Sysmon/Operational ignore_older: 72h output.logstash: hosts: ["192.168.1.50:5044"]
Simpan file konfigurasi
Simpan dan tutup file tersebut.
Mulai layanan Winlogbeat
- Buka PowerShell sebagai administrator.
Mulai layanan Winlogbeat:
Start-Service winlogbeatPastikan layanan sedang berjalan:
Get-Service winlogbeatStatusnya akan ditampilkan sebagai Running.
Periksa log Winlogbeat untuk mengetahui error:
Get-Content "C:\ProgramData\winlogbeat\Logs\winlogbeat" -Tail 50
Memverifikasi alur log
Memverifikasi koneksi Winlogbeat ke Logstash
Di server Logstash, periksa log Logstash:
Linux:
sudo tail -f /var/log/logstash/logstash-plain.logWindows:
type C:\logstash\logs\logstash-plain.log
Cari pesan yang menunjukkan koneksi Beats:
[INFO ][logstash.inputs.beats] Beats inputs: Starting input listener {:address=>"0.0.0.0:5044"}
Memverifikasi koneksi agen Logstash ke Bindplane
Di server agen Bindplane, periksa log agen:
Linux:
sudo journalctl -u observiq-otel-collector -fWindows:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Cari pesan yang menunjukkan penyerapan log berhasil.
Memverifikasi log di Google SecOps
- Login ke konsol Google SecOps.
- Buka Penelusuran.
Jalankan kueri penelusuran untuk memverifikasi bahwa log Winlogbeat sedang di-ingest:
metadata.log_type = "ELASTIC_WINLOGBEAT"Pastikan log peristiwa Windows muncul di hasil penelusuran.
Pemecahan masalah
Winlogbeat tidak terhubung ke Logstash
Verifikasi konektivitas jaringan antara Winlogbeat dan Logstash:
Test-NetConnection -ComputerName <LOGSTASH_IP> -Port 5044Periksa apakah aturan Windows Firewall mengizinkan koneksi keluar di port 5044.
Verifikasi bahwa Logstash memproses port 5044:
Linux:
sudo netstat -tulpn | grep 5044Windows:
netstat -an | findstr 5044
Logstash tidak meneruskan ke agen BindPlane
Verifikasi konektivitas jaringan antara agen Logstash dan Bindplane:
Linux:
telnet <BINDPLANE_IP> 1514Windows:
Test-NetConnection -ComputerName <BINDPLANE_IP> -Port 1514
Periksa apakah aturan firewall mengizinkan koneksi TCP di port 1514.
Verifikasi bahwa agen Bindplane sedang memproses di port 1514:
Linux:
sudo netstat -tulpn | grep 1514Windows:
netstat -an | findstr 1514
Log tidak muncul di Google SecOps
- Pastikan ID pelanggan dan file autentikasi penyerapan sudah benar.
- Periksa log agen BindPlane untuk mengetahui error autentikasi.
- Verifikasi bahwa endpoint regional cocok dengan region instance Google SecOps Anda.
- Pastikan
log_typedisetel keELASTIC_WINLOGBEATpersis seperti yang ditunjukkan.
Tabel pemetaan UDM
Informasi pemetaan kolom tidak tersedia untuk parser ini.
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.