Mengumpulkan log FortiDDoS Fortinet

Didukung di:

Panduan ini menjelaskan cara menyerap log Fortinet FortiDDoS ke Google Security Operations menggunakan agen Bindplane.

Fortinet FortiDDoS adalah alat mitigasi serangan DDoS yang melindungi jaringan dan aplikasi dari serangan distributed denial of service. FortiDDoS menyediakan deteksi serangan real-time, mitigasi otomatis, dan pelaporan mendetail untuk serangan di lapisan jaringan dan aplikasi.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Instance Google SecOps.
  • Windows Server 2016 atau yang lebih baru, atau host Linux dengan systemd.
  • Konektivitas jaringan antara agen Bindplane dan perangkat Fortinet FortiDDoS.
  • Jika beroperasi dari balik proxy, pastikan port firewall terbuka sesuai dengan persyaratan agen Bindplane.
  • Akses istimewa ke antarmuka web FortiDDoS dengan izin Baca-Tulis untuk setelan Log & Laporan.

Mendapatkan file autentikasi penyerapan Google SecOps

  1. Login ke konsol Google SecOps.
  2. Buka Setelan SIEM > Agen Pengumpulan.
  3. Klik Download untuk mendownload file autentikasi penyerapan.
  4. Simpan file dengan aman di sistem tempat agen 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
    
  3. Tunggu hingga penginstalan selesai.

  4. Verifikasi penginstalan dengan menjalankan:

    sc query observiq-otel-collector
    

    Layanan akan ditampilkan sebagai RUNNING.

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
    
  3. Tunggu hingga penginstalan selesai.

  4. Verifikasi penginstalan dengan menjalankan:

    sudo systemctl status observiq-otel-collector
    

    Layanan 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.yaml

Windows:

notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"

Edit file konfigurasi

Ganti seluruh konten config.yaml dengan konfigurasi berikut:

receivers:
    udplog:
    listen_address: "0.0.0.0:514"

exporters:
    chronicle/fortiddos:
    compression: gzip
    creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
    customer_id: 'your-customer-id-here'
    endpoint: malachiteingestion-pa.googleapis.com
    log_type: FORTINET_FORTIDDOS
    raw_log_field: body
    ingestion_labels:
        env: production

service:
    pipelines:
    logs/fortiddos_to_chronicle:
        receivers:
        - udplog
        exporters:
        - chronicle/fortiddos

Parameter konfigurasi

Ganti placeholder berikut:

Konfigurasi penerima:

  • listen_address: Alamat IP dan port yang akan diproses. Gunakan 0.0.0.0:514 untuk memantau semua antarmuka di port 514.

Konfigurasi eksportir:

  • 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
  • customer_id: ID Pelanggan dari langkah sebelumnya.
  • 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.
  • log_type: Harus FORTINET_FORTIDDOS.
  • ingestion_labels: Label opsional dalam format YAML.

Simpan file konfigurasi

Setelah mengedit, simpan file:

  • Linux: Tekan Ctrl+O, lalu Enter, lalu Ctrl+X
  • Windows: Klik File > Save

Mulai ulang agen BindPlane untuk menerapkan perubahan

  • Linux

    sudo systemctl restart observiq-otel-collector
    
    1. Pastikan layanan sedang berjalan:

      sudo systemctl status observiq-otel-collector
      
    2. Periksa log untuk mengetahui error:

      sudo journalctl -u observiq-otel-collector -f
      
  • Windows

    Pilih salah satu opsi berikut:

    • Menggunakan Command Prompt atau PowerShell sebagai administrator:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Menggunakan konsol Layanan:

      1. Tekan Win+R, ketik services.msc, lalu tekan Enter.
      2. Temukan observIQ OpenTelemetry Collector.
      3. Klik kanan, lalu pilih Mulai Ulang.

      4. Pastikan layanan sedang berjalan:

        sc query observiq-otel-collector
        
      5. Periksa log untuk mengetahui error:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

Mengonfigurasi logging jarak jauh FortiDDoS Event Log

FortiDDoS mendukung dua jenis logging syslog jarak jauh: Log Peristiwa untuk peristiwa sistem dan Log Serangan untuk peristiwa serangan DDoS. Konfigurasi keduanya untuk mengirim log komprehensif ke Google SecOps.

  1. Login ke antarmuka web FortiDDoS.
  2. Buka Log & Laporan > Konfigurasi Log > Event Log Remote.
  3. Klik Tambahkan untuk membuat konfigurasi server log jarak jauh baru.
  4. Berikan detail konfigurasi berikut:
    • Name: Masukkan nama deskriptif (misalnya, Chronicle-Event-Logs).
    • Alamat: Masukkan alamat IP host agen Bindplane.
    • Port: Masukkan 514.
    • Level Log Minimum: Pilih tingkat keparahan minimum yang akan diteruskan (misalnya, Informasi atau Notifikasi).
    • Fasilitas: Pilih fasilitas syslog (misalnya, local0).
  5. Klik Simpan untuk menyimpan konfigurasi.

Mengonfigurasi logging jarak jauh FortiDDoS Attack Log

Logging jarak jauh log serangan dikonfigurasi per Profil Perlindungan Layanan (SPP). Anda harus mengonfigurasi penerusan log serangan untuk setiap SPP yang ingin dipantau.

  1. Login ke antarmuka web FortiDDoS.
  2. Buka Log & Report > Log Configuration > Attack Log Remote.
  3. Klik Tambahkan untuk membuat konfigurasi server log jarak jauh baru.
  4. Berikan detail konfigurasi berikut:
    • Name: Masukkan nama deskriptif (misalnya, Chronicle-Attack-Logs).
    • SPP: Pilih Profil Perlindungan Layanan yang akan dikonfigurasi.
    • Alamat: Masukkan alamat IP host agen Bindplane.
    • Port: Masukkan 514.
    • Interval: Pilih interval pelaporan (misalnya, 1 menit atau 5 menit).
  5. Klik Simpan untuk menyimpan konfigurasi.
  6. Ulangi langkah 3 hingga 5 untuk setiap SPP yang ingin Anda pantau.

Memverifikasi penerusan syslog

Setelah mengonfigurasi logging jarak jauh, verifikasi bahwa log dikirim ke agen BindPlane:

  1. Di host agen BindPlane, pantau traffic syslog masuk:

    Linux:

    sudo tcpdump -i any -n port 514
    

    Windows:

    Gunakan alat pemantauan jaringan atau periksa log agen BindPlane.

  2. Di appliance FortiDDoS, buat pesan log pengujian:

    Pengujian log peristiwa:

    • Buat perubahan konfigurasi di antarmuka web FortiDDoS untuk membuat log peristiwa.

    Pengujian log serangan:

    • Tunggu interval pelaporan yang dikonfigurasi (1 atau 5 menit). FortiDDoS melaporkan secara berkala dan memerlukan waktu tambahan 2 menit untuk menggabungkan pelaporan. Misalnya, log yang dilaporkan untuk tanda 5 menit akan ditampilkan di server syslog pada tanda 7 menit.
  3. Pastikan log muncul di konsol Google SecOps dalam waktu 5 hingga 10 menit.

Tabel pemetaan UDM

Kolom log Pemetaan UDM Logika
tambahan tambahan Nilai disalin secara langsung
additional.fields.additional_label.key Tetapkan ke "type"
jenis additional.fields.additional_label.value.string_value Nilai disalin secara langsung
additional.fields.src_label.key Disetel ke "device_id"
devid additional.fields.src_label.value.string_value Nilai disalin secara langsung
log_id security_result.detection_fields.log_id_label.value Nilai disalin secara langsung
security_result.detection_fields.log_id_label.key Ditetapkan ke "log_id"
metadata metadata Nilai disalin secara langsung
desc_Data metadata.description Nilai disalin secara langsung
sip,dip,user metadata.event_type Disetel ke "NETWORK_CONNECTION" jika sip dan dip tidak kosong, atau "USER_UNCATEGORIZED" jika pengguna tidak kosong, atau "STATUS_UPDATE" jika sip tidak kosong, atau "GENERIC_EVENT"
jaringan jaringan Nilai disalin secara langsung
utama utama Nilai disalin secara langsung
sip principal.asset.ip Nilai disalin secara langsung
sip principal.ip Nilai disalin secara langsung
date,time,tz principal.labels.date_label.value Digabungkan dari tanggal, waktu, tz dengan spasi
principal.labels.date_label.key Ditetapkan ke "date"
dir principal.labels.direction_label.value Nilai disalin secara langsung
principal.labels.direction_label.key Ditetapkan ke "direction"
dport principal.port Dikonversi ke bilangan bulat
pengguna principal.user.userid Nilai disalin secara langsung
security_result security_result Nilai disalin secara langsung
direction security_result.detection_fields.direction_label.value Nilai disalin secara langsung
security_result.detection_fields.direction_label.key Ditetapkan ke "direction"
dropcount security_result.detection_fields.dropcount_label.value Nilai disalin secara langsung
security_result.detection_fields.dropcount_label.key Ditetapkan ke "dropcount"
evecode security_result.detection_fields.evecode_label.value Nilai disalin secara langsung
security_result.detection_fields.evecode_label.key Ditetapkan ke "evecode"
evesubcode security_result.detection_fields.evesubcode_label.value Nilai disalin secara langsung
security_result.detection_fields.evesubcode_label.key Ditetapkan ke "evesubcode"
fasilitas security_result.detection_fields.facility_label.value Nilai disalin secara langsung
security_result.detection_fields.facility_label.key Ditetapkan ke "fasilitas"
level security_result.detection_fields.level_label.value Nilai disalin secara langsung
security_result.detection_fields.level_label.key Ditetapkan ke "level"
msg_id security_result.detection_fields.msg_id_label.value Nilai disalin secara langsung
security_result.detection_fields.msg_id_label.key Tetapkan ke "msg_id"
spp_name security_result.detection_fields.spp_name_label.value Nilai disalin secara langsung
security_result.detection_fields.spp_name_label.key Disetel ke "spp_name"
spp security_result.detection_fields.spp_label.value Nilai disalin secara langsung
security_result.detection_fields.spp_label.key Tetapkan ke "spp"
sppoperatingmode security_result.detection_fields.sppoperatingmode_label.value Nilai disalin secara langsung
security_result.detection_fields.sppoperatingmode_label.key Ditetapkan ke "sppoperatingmode"
subnet_name security_result.detection_fields.subnet_name_label.value Nilai disalin secara langsung
security_result.detection_fields.subnet_name_label.key Disetel ke "subnet_name"
subnetid security_result.detection_fields.subnetid_label.value Nilai disalin secara langsung
security_result.detection_fields.subnetid_label.key Disetel ke "subnetid"
subtype security_result.detection_fields.subtype_label.value Nilai disalin secara langsung
security_result.detection_fields.subtype_label.key Tetapkan ke "subtype"
target target Nilai disalin secara langsung
penurunan target.asset.ip Nilai disalin secara langsung
penurunan target.ip Nilai disalin secara langsung

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