Mengumpulkan log switch Extreme Networks
Dokumen ini menjelaskan cara menyerap log switch Extreme Networks ke Google Security Operations menggunakan BindPlane. Parser mengekstrak kolom dari pesan syslog menggunakan pola grok dan logika bersyarat. Proses ini memetakan kolom yang diekstrak ke UDM, menangani peristiwa login, update status, dan peristiwa umum, serta memperkaya data dengan konteks tambahan seperti protokol, VLAN, dan peran pengguna.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps
- Windows 2016 atau yang lebih baru atau host Linux dengan
systemd
- Jika berjalan di belakang proxy, pastikan port firewall terbuka
- Akses istimewa ke perangkat switch Extreme Networks
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" /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.
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_file_path: '/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 log_type: 'EXTREME_SWITCH' raw_log_field: body ingestion_labels: 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 Syslog untuk switch jaringan Extreme
- Login ke switch menggunakan CLI atau Konsol.
Masukkan perintah configure untuk mengakses tingkat konfigurasi global:
device# configure terminal
Masukkan perintah alamat IP syslog-server untuk menambahkan server syslog:
- Ganti
<bindplane-ip>
dengan alamat IP agen Bindplane yang sebenarnya.
logging syslog-server <bindplane_ip>
- Ganti
Masukkan perintah format untuk mengonfigurasi format RFC-5424 untuk pesan:
format RFC-5424
Tabel Pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
account_type |
target.user.user_role |
Jika account_type adalah "Administrative" atau "admin", tetapkan ke "ADMINISTRATOR". Jika tidak, petakan ke target.user.attribute.roles.name . |
application |
target.application |
Dipetakan secara langsung. |
attr |
additional.fields |
Diuraikan untuk mengekstrak WWN dan membuat key-value pair dengan kunci "wwn" dan WWN yang diekstrak sebagai nilai string. |
class |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "class" dan nilai kolom class sebagai nilai string. |
Cause |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "Penyebab" dan nilai kolom Cause sebagai nilai string. Objek kosong dibuat jika tidak ada kolom autentikasi tertentu. |
Info |
security_result.summary |
Dipetakan secara langsung. |
interface |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "interface" dan nilai kolom interface sebagai nilai string. |
ip |
principal.ip |
Dipetakan secara langsung. |
intermediary_ip |
intermediary.ip |
Dipetakan secara langsung. |
kv_data |
Bervariasi | Digunakan untuk mengekstrak pasangan nilai kunci dan memetakannya ke kolom UDM yang berbeda berdasarkan kunci. Misalnya, VrIpAddr dipetakan ke intermediary.ip , IP dan Addr dipetakan ke principal.ip , SlppRxPort dipetakan ke principal.port , dan berbagai kolom rc* dipetakan ke security_result.detection_fields . |
log_data |
Bervariasi | Diparsing untuk mengekstrak informasi tentang login, logout, dan peristiwa lainnya pengguna. Digunakan untuk mengisi kolom seperti principal.ip , principal.resource.name , target.user.userid , target.application , security_result.summary , security_result.description , dan metadata.description . |
log_type |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "log" dan nilai kolom log_type sebagai nilai string. |
message |
Bervariasi | Pesan log asli. Diuraikan untuk mengekstrak berbagai kolom. Stempel waktu diekstrak dari kolom timestamp (jika ada dan dalam format "yyyy-mm-ddTHH:mm:ss") atau dari kolom message menggunakan pola grok. Jika diekstrak dari kolom pesan, ini adalah stempel waktu dalam pesan log itu sendiri. Ditentukan berdasarkan keberadaan flag has_principal , has_target , user_login , dan user_logout . Dapat berupa "USER_LOGIN", "USER_LOGOUT", "STATUS_UPDATE", atau "GENERIC_EVENT". Dipetakan dari kolom msgid . Nilai statis: "EXTREME_SWITCH". Dipetakan dari kolom ver . Nilai statis: "EXTREME_SWITCH". |
msgid |
metadata.product_log_id |
Dipetakan secara langsung. |
port |
principal.port |
Dipetakan dan dikonversi langsung ke bilangan bulat. |
protocol |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "Protocol" dan nilai kolom protocol sebagai nilai string. |
rcPortVLacpAdminEnable |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcPortVLacpAdminEnable" dan nilainya. |
rcSyslogHostAddress |
principal.hostname |
Dipetakan secara langsung. |
rcSyslogHostAddressType |
security_result.detection_fields |
Membuat key-value pair dengan kunci "rcSyslogHostAddressType" dan nilainya. |
rcSyslogHostEnable |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcSyslogHostEnable" dan nilainya. |
rcSyslogHostFacility |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcSyslogHostFacility" dan nilainya. |
rcSyslogHostMapErrorSeverity |
security_result.detection_fields |
Membuat key-value pair dengan kunci "rcSyslogHostMapErrorSeverity" dan nilainya. |
rcSyslogHostMapFatalSeverity |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcSyslogHostMapFatalSeverity" dan nilainya. |
rcSyslogHostMapInfoSeverity |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcSyslogHostMapInfoSeverity" dan nilainya. |
rcSyslogHostMapWarningSeverity |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcSyslogHostMapWarningSeverity" dan nilainya. |
rcSyslogHostRowStatus |
security_result.detection_fields |
Membuat key-value pair dengan kunci "rcSyslogHostRowStatus" dan nilainya. |
rcSyslogHostSeverity |
security_result.detection_fields |
Membuat pasangan nilai kunci dengan kunci "rcSyslogHostSeverity" dan nilainya. |
resource |
principal.resource.name |
Dipetakan secara langsung. |
sec_description |
security_result.description |
Dipetakan secara langsung. |
seqnum |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "seqnum" dan nilai kolom seqnum sebagai nilai string. |
session_id |
network.session_id |
Dipetakan secara langsung. |
severity |
security_result.severity |
Dipetakan dengan konversi: "KRITIS", "ERROR", "TINGGI" dipetakan secara langsung; "INFO" dipetakan ke "INFORMASI"; "PERINGATAN" dipetakan ke "SEDANG"; "RENDAH", "SEDANG", dan "INFORMASI" dipetakan secara langsung. |
SlppIncomingVlanId |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "SlppIncomingVlanId" dan nilai kolom SlppIncomingVlanId sebagai nilai string. |
SlppRxVlan |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "SlppRxVlan" dan nilai kolom SlppRxVlan sebagai nilai string. |
SlppSrcMacAddress |
principal.mac |
Dipetakan secara langsung. |
Status |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "Status" dan nilai kolom Status sebagai nilai string. |
swname |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "swname" dan nilai kolom swname sebagai nilai string. |
timestamp |
metadata.event_timestamp |
Diuraikan dan dikonversi menjadi objek stempel waktu. |
tz |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "tz" dan nilai kolom tz sebagai nilai string. |
Type |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "Type" dan nilai kolom Type sebagai nilai string. |
username |
target.user.userid |
Dipetakan secara langsung. |
ver |
metadata.product_version |
Dipetakan secara langsung. |
VrId |
additional.fields |
Membuat pasangan nilai kunci dengan kunci "VrId" dan nilai kolom VrId sebagai nilai string. |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.