Mengumpulkan log switch Ubiquiti Unifi

Didukung di:

Dokumen ini menjelaskan cara menyerap log switch Ubiquiti Unifi ke Google Security Operations menggunakan Bindplane. Parser mengekstrak kolom dari pesan syslog menggunakan pola grok, mengonversi data log mentah ke dalam format terstruktur yang sesuai dengan Model Data Terpadu (UDM). Proses ini menangani berbagai format log, mengekstrak informasi penting seperti stempel waktu, nama host, deskripsi, dan detail jaringan, serta memperkaya data dengan konteks tambahan sebelum menggabungkannya ke peristiwa UDM akhir.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Instance Google SecOps
  • Host Windows 2016 atau yang lebih baru atau Linux dengan systemd
  • Jika beroperasi dari balik proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen BindPlane
  • Akses istimewa ke UI Pengontrol Ubiquiti

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Download File Autentikasi Penyerapan. Simpan file dengan aman di sistem tempat BindPlane akan diinstal.

Mendapatkan ID pelanggan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Profil.
  3. 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

  1. Buka Command Prompt atau PowerShell sebagai administrator.
  2. Jalankan perintah berikut:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Penginstalan Linux

  1. Buka terminal dengan hak istimewa root atau sudo.
  2. 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

Mengonfigurasi agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps

  1. Akses file konfigurasi:

    1. Cari file config.yaml. Biasanya, file ini berada di direktori /etc/bindplane-agent/ di Linux atau di direktori penginstalan di Windows.
    2. Buka file menggunakan editor teks (misalnya, nano, vi, atau Notepad).
  2. 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: 'UBIQUITI_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.
    • Ganti /path/to/ingestion-authentication-file.json dengan jalur tempat file autentikasi disimpan di bagian Mendapatkan 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 switch Ubiquiti untuk mengirim Syslog Bidang Kontrol

  1. Login ke UI Unifi Controller.
  2. Buka Unifi Network.
  3. Buka Settings > Control Plane > Integrations tab.
  4. Temukan bagian Logging Aktivitas (Syslog).
  5. Aktifkan opsi SIEM Server.
  6. Berikan detail konfigurasi berikut:
    • Klik Edit kategori dan tambahkan kategori log yang diperlukan.
    • Alamat Server: Masukkan alamat IP agen Bindplane.
    • Port: Masukkan nomor port agen Bindplane (UDP diperlukan).
  7. Klik Terapkan Perubahan.

Mengonfigurasi switch Ubiquiti untuk mengirim Syslog CyberSecure

  1. Login ke UI Unifi Controller.
  2. Buka Unifi Network.
  3. Buka Setelan > CyberSecure > tab Pencatatan Traffic.
  4. Temukan bagian Logging Aktivitas (Syslog).
  5. Aktifkan opsi SIEM Server.
  6. Berikan detail konfigurasi berikut:
    • Klik Edit kategori dan tambahkan kategori log yang diperlukan.
    • Alamat Server: Masukkan alamat IP agen Bindplane.
    • Port: Masukkan nomor port agen Bindplane (UDP diperlukan).
    • Nonaktifkan Log Debug.
  7. Klik Terapkan Perubahan.

Tabel Pemetaan UDM

Kolom log Pemetaan UDM Logika
anomalies security_result.detection_fields[].key: "anomalies"
security_result.detection_fields[].value: Nilai anomalies dari log
Dipetakan langsung dari kolom anomalies dalam log mentah.
application observer.application Dipetakan langsung dari kolom application dalam log mentah.
assoc_status security_result.detection_fields[].key: "assoc_status"
security_result.detection_fields[].value: Nilai assoc_status dari log
Dipetakan langsung dari kolom assoc_status dalam log mentah.
asset_details observer.asset.product_object_id: Diekstrak menggunakan pola grok %{GREEDYDATA:asset_id},%{GREEDYDATA:asset_version}
asset_software.version: Diekstrak menggunakan pola grok %{GREEDYDATA:asset_id},%{GREEDYDATA:asset_version}
Kolom asset_details diuraikan menggunakan pola grok untuk mengekstrak asset_id dan asset_version.
asset_id observer.asset.product_object_id Dipetakan langsung dari kolom asset_id yang diekstrak dari asset_details.
asset_version observer.asset.software.version Dipetakan langsung dari kolom asset_version yang diekstrak dari asset_details.
bssid principal.mac Dipetakan langsung dari kolom bssid dalam log mentah.
description metadata.description Dipetakan langsung dari kolom description dalam log mentah.
device metadata.product_name Dipetakan langsung dari kolom device dalam log mentah. Jika device tidak ada, nilai "UBIQUITI_SWITCH" akan digunakan.
dns_resp_seen security_result.detection_fields[].key: "dns_resp_seen"
security_result.detection_fields[].value: Nilai dns_resp_seen dari log
Dipetakan langsung dari kolom dns_resp_seen dalam log mentah.
DST target.ip Dipetakan langsung dari kolom DST dalam log mentah.
DPT principal.port Dipetakan langsung dari kolom DPT dalam log mentah setelah dikonversi menjadi bilangan bulat.
event_type security_result.detection_fields[].key: "event_type"
security_result.detection_fields[].value: Nilai event_type dari log
Dipetakan langsung dari kolom event_type dalam log mentah.
host principal.hostname Dipetakan langsung dari kolom host dalam log mentah.
ID additional.fields[].key: "ID"
additional.fields[].value.string_value: Nilai ID dari log
Dipetakan langsung dari kolom ID dalam log mentah.
IN additional.fields[].key: "IN"
additional.fields[].value.string_value: Nilai IN dari log
Dipetakan langsung dari kolom IN dalam log mentah.
interface additional.fields[].key: "interface"
additional.fields[].value.string_value: interface nilai dari log
Dipetakan langsung dari kolom interface dalam log mentah.
LEN additional.fields[].key: "LEN"
additional.fields[].value.string_value: Nilai LEN dari log
Dipetakan langsung dari kolom LEN dalam log mentah.
mac principal.mac Dipetakan langsung dari kolom mac dalam log mentah.
metadata.event_type metadata.event_type Diperoleh dari logika parser. Ditetapkan ke "STATUS_SHUTDOWN" jika state adalah "Down", "STATUS_STARTUP" jika state adalah "Up", "STATUS_UPDATE" jika kv_msg dan DST ada atau principal_present benar, dan "GENERIC_EVENT" jika tidak.
metadata.log_type metadata.log_type: "UBIQUITI_SWITCH" Nilai konstan yang ditetapkan oleh parser.
metadata.vendor_name metadata.vendor_name: "UBIQUITI" Nilai konstan yang ditetapkan oleh parser.
principal_ip principal.ip Dipetakan langsung dari kolom principal_ip dalam log mentah.
process_id observer.process.pid Dipetakan langsung dari kolom process_id dalam log mentah.
product_event_type metadata.product_event_type Dipetakan langsung dari kolom product_event_type dalam log mentah.
PROTO network.ip_protocol Dipetakan langsung dari kolom PROTO dalam log mentah. Jika PROTO adalah "ICMPv6", nilainya akan diubah menjadi "ICMP".
query_1 target.administrative_domain Dipetakan langsung dari kolom query_1 dalam log mentah.
query_server_1 target.ip Dipetakan langsung dari kolom query_server_1 dalam log mentah.
radio security_result.detection_fields[].key: "radio"
security_result.detection_fields[].value: radio nilai dari log
Dipetakan langsung dari kolom radio dalam log mentah.
satisfaction_now security_result.detection_fields[].key: "satisfaction_now"
security_result.detection_fields[].value: Nilai satisfaction_now dari log
Dipetakan langsung dari kolom satisfaction_now dalam log mentah.
source_port principal.port Dipetakan langsung dari kolom source_port dalam log mentah setelah dikonversi menjadi bilangan bulat.
SPT target.port Dipetakan langsung dari kolom SPT dalam log mentah setelah dikonversi menjadi bilangan bulat.
SRC principal.ip, principal.hostname Dipetakan langsung dari kolom SRC dalam log mentah.
sta principal.mac Dipetakan langsung dari kolom sta dalam log mentah.
state additional.fields[].key: "state"
additional.fields[].value.string_value: Nilai state dari log
Dipetakan langsung dari kolom state dalam log mentah.
timestamp metadata.event_timestamp Dipetakan langsung dari kolom timestamp dalam log mentah setelah diuraikan oleh filter tanggal.
TTL additional.fields[].key: "TTL"
additional.fields[].value.string_value: Nilai TTL dari log
Dipetakan langsung dari kolom TTL dalam log mentah.
vap metadata.ingestion_labels[].key: "Vap"
metadata.ingestion_labels[].value: Nilai vap dari log
Dipetakan langsung dari kolom vap dalam log mentah.
version metadata.product_version Dipetakan langsung dari kolom version dalam log mentah.

Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.