Mengumpulkan log Synology

Didukung di:

Parser ini mengekstrak kolom dari pesan SYSLOG Synology menggunakan pola grok, yang memetakannya ke UDM. Parser ini menangani berbagai format log, mengidentifikasi login pengguna dan akses resource, serta mengategorikan peristiwa berdasarkan kata kunci, sehingga memperkaya data dengan informasi vendor dan produk.

Sebelum memulai

Pastikan Anda memiliki prasyarat berikut:

  • Instance Google SecOps.
  • Akses istimewa ke Synology DSM.

Menyiapkan feed

Untuk mengonfigurasi feed, ikuti langkah-langkah berikut:

  1. Buka Setelan > Pengelolaan Data > Feed. Jika Anda menggunakan platform khusus SIEM, buka Settings > Feeds.
  2. Klik Tambahkan Feed Berita Baru.
  3. Di halaman berikutnya, klik Konfigurasi satu feed.
  4. Di kolom Feed name, masukkan nama untuk feed; misalnya, Synology Logs.
  5. Pilih Webhook sebagai Jenis sumber.
  6. Pilih Synology sebagai Log type.
  7. Klik Berikutnya.
  8. Opsional: Tentukan nilai untuk parameter input berikut:
    • Pembatas pemisahan: pembatas yang digunakan untuk memisahkan baris log, seperti \n.
    • Namespace aset: namespace aset.
    • Label penyerapan: label yang diterapkan ke peristiwa dari feed ini.
  9. Klik Berikutnya.
  10. Tinjau konfigurasi feed di layar Finalisasi, lalu klik Kirim.
  11. Klik Buat Kunci Rahasia untuk membuat kunci rahasia guna mengautentikasi feed ini.
  12. Salin dan simpan kunci rahasia. Anda tidak dapat melihat kunci rahasia ini lagi. Jika perlu, Anda dapat membuat ulang kunci rahasia baru, tetapi tindakan ini akan membuat kunci rahasia sebelumnya tidak berlaku lagi.
  13. Dari tab Details, salin URL endpoint feed dari kolom Endpoint Information. Anda harus menentukan URL endpoint ini di aplikasi klien Anda.
  14. Klik Done.

Membuat kunci API untuk feed webhook

  1. Buka Google Cloud console > Credentials.

    Buka Kredensial

  2. Klik Create credentials, lalu pilih API key.

  3. Batasi akses kunci API ke Google Security Operations API.

Menentukan URL endpoint

  1. Di aplikasi klien Anda, tentukan URL endpoint HTTPS yang disediakan di feed webhook.
  2. Aktifkan autentikasi dengan menentukan kunci API dan kunci rahasia sebagai bagian dari header kustom dalam format berikut:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Rekomendasi: Tentukan kunci API sebagai header, bukan menentukannya di URL.

  3. Jika klien webhook Anda tidak mendukung header kustom, Anda dapat menentukan kunci API dan kunci rahasia menggunakan parameter kueri dalam format berikut:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    Ganti kode berikut:

    • ENDPOINT_URL: URL endpoint feed.
    • API_KEY: kunci API untuk melakukan autentikasi ke Google Security Operations.
    • SECRET: kunci rahasia yang Anda buat untuk mengautentikasi feed.

Membuat Webhook di Synology untuk Google SecOps

  1. Login ke DiskStation Manager (DSM) di Synology NAS Anda.
  2. Buka Control Panel > Notification > Webhook.
  3. Klik Tambahkan.
  4. Tentukan nilai untuk parameter berikut:

    • Penyedia: Pilih Kustom.
    • Aturan: Pilih jenis pesan yang ingin Anda kirim di webhook.

    • Klik Berikutnya.

    • Provider name: Beri webhook nama yang unik (misalnya, Google SecOps).

    • Subjek: Akan ditambahkan sebagai awalan pesan notifikasi.

    • URL webhook: Masukkan ENDPOINT_URL.

    • Pilih Kirim pesan notifikasi dalam bahasa Inggris.

    • Klik Berikutnya.

    • HTTP Method: Pilih POST.

    • Tambahkan Header X-Webhook-Access-Key, dengan nilai SECRET.

    • Tambahkan Header X-goog-api-key, dengan nilai API_KEY.

    • Klik Terapkan.

  5. Klik Apply untuk menyimpan webhook.

Tabel Pemetaan UDM

Kolom log pemetaan UDM Logika
app target.application Nilai kolom app yang diekstrak oleh filter grok ditetapkan ke target.application.
desc metadata.description Nilai kolom desc yang diekstrak oleh filter grok ditetapkan ke metadata.description.
desc target.file.names Jika kolom desc berisi "Closed)", jalur file dalam tanda kurung akan diekstrak dan ditetapkan ke target.file.names. Jika kolom desc berisi "accessed shared folder", jalur folder dalam tanda kurung akan diekstrak dan ditetapkan ke target.file.names.
host principal.hostname Nilai kolom host yang diekstrak oleh filter grok dari kolom host_and_ip ditetapkan ke principal.hostname.
host_and_ip principal.ip Kolom host_and_ip diurai. Jika alamat IP (ip1) ditemukan, alamat tersebut akan ditetapkan ke principal.ip. Jika alamat IP kedua (ip2) ditemukan, alamat tersebut juga akan ditambahkan ke principal.ip.
intermediary_host intermediary.hostname Nilai kolom intermediary_host yang diekstrak oleh filter grok ditetapkan ke intermediary.hostname. Objek auth kosong dibuat dalam extensions jika pesan berisi "login" atau "login". Stempel waktu dari kolom collection_time log mentah digunakan. Jika pesan berisi "login", nilainya ditetapkan ke USER_LOGIN. Jika pesan berisi "accessed shared folder", nilainya ditetapkan ke USER_RESOURCE_ACCESS. Jika tidak, nilai defaultnya adalah GENERIC_EVENT. Nilai kolom type yang diekstrak oleh filter grok ditetapkan ke metadata.product_event_type. Nilai ditetapkan secara statis ke "SYNOLOGY". Nilai ditetapkan secara statis ke "SYNOLOGY". Jika pesan berisi "failed to sign", nilainya akan ditetapkan ke BLOCK. Jika pesan berisi "success", nilainya ditetapkan ke ALLOW. Jika kolom severity (yang diekstrak oleh grok) adalah "INFO", nilainya akan ditetapkan ke INFORMATIONAL.
severity security_result.severity Nilai kolom severity yang diekstrak oleh filter grok digunakan untuk menentukan security_result.severity. Jika nilainya adalah "INFO", nilai tersebut akan dipetakan ke "INFORMATIONAL".
time metadata.event_timestamp Kolom time, yang diekstrak oleh filter grok, diurai dan dikonversi menjadi stempel waktu. Stempel waktu ini kemudian ditetapkan ke metadata.event_timestamp.
type metadata.product_event_type Nilai kolom type yang diekstrak oleh filter grok ditetapkan ke metadata.product_event_type.
user target.administrative_domain Jika domain diekstrak dari kolom user, domain tersebut akan ditetapkan ke target.administrative_domain.
user target.user.userid Bagian nama pengguna dari kolom user (sebelum "\" jika ada) diekstrak dan ditetapkan ke target.user.userid. Stempel waktu dari kolom collection_time log mentah digunakan.

Log Perubahan

Melihat Log Perubahan untuk parser ini

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