Mengumpulkan log VPN F5

Didukung di:

Dokumen ini menjelaskan cara menyerap log VPN F5 ke Google Security Operations menggunakan BindPlane. Parser mengekstrak informasi yang relevan dengan keamanan dari log. Alat ini menggunakan ekspresi reguler untuk mengidentifikasi dan mengurai kolom utama seperti stempel waktu, alamat IP, dan nama host, lalu menyusun data ini ke dalam format Model Data Terpadu (UDM) Google SecOps untuk dianalisis.

Sebelum memulai

Pastikan Anda memenuhi prasyarat berikut:

  • Instance Google SecOps
  • Windows 2016 atau yang lebih baru, atau host Linux dengan systemd
  • Jika dijalankan di belakang proxy, port firewall terbuka
  • Akses istimewa ke F5 BIG-IP APM (Access Policy Manager)

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:
    • 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).
  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: 'F5_VPN'
            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

  1. Untuk memulai ulang agen Bindplane di Linux, jalankan perintah berikut:

    sudo systemctl restart bindplane-agent
    
  2. 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 F5 BIG-IP APM v11.x dan yang lebih baru

  1. Login ke F5 BIG-IP APM menggunakan CLI atau SSH.
  2. Masukkan perintah berikut untuk menambahkan server syslog:

    tmsh syslog remote server {<Name> {host <bindplane-ip> remote-port <bindplane-port>}}
    

    Pastikan untuk mengganti parameter berikut:

    • <Name>: Masukkan nama sumber F5 BIG-IP APM (misalnya, BIGIP_APM).
    • <bindplane-ip>: Masukkan alamat IP agen Bindplane.
    • <bindplane-port>: Masukkan nomor port agen Bindplane.
  3. Masukkan perintah berikut untuk menyimpan perubahan:

    tmsh save sys config partitions all
    

Tabel pemetaan UDM

Kolom log Pemetaan UDM Logika
cmd_data principal.process.command_line Nilai diekstrak dari kolom msg
errdefs_msgno additional.fields.errdefs_msgno.string_value Nilai diekstrak dari kolom msg
event_time metadata.event_timestamp Nilai diuraikan dan dikonversi menjadi stempel waktu
hostname principal.hostname, observer.hostname, principal.asset.hostname, observer.asset.hostname, hostip Nilai diekstrak dari kolom pesan dan digunakan untuk mengisi kolom nama host di UDM. Juga digunakan untuk mengisi kolom hostip
msg security_result.description Nilai diekstrak dari kolom pesan dan digunakan untuk mengisi kolom deskripsi dalam objek security_result
prin_ip principal.ip, principal.asset.ip Nilai diekstrak dari kolom pesan dan digunakan untuk mengisi kolom alamat IP di UDM
additional.fields.Canonical_Info.string_value Nilai berasal dari pesan log
additional.fields.IDP.string_value Nilai berasal dari pesan log
additional.fields.Plugin_Support.string_value Nilai berasal dari pesan log
additional.fields.SMB Stage.string_value Nilai berasal dari pesan log
additional.fields.SP.string_value Nilai berasal dari pesan log
additional.fields.Timezone.string_value Nilai berasal dari pesan log
additional.fields.Tunnel Type.string_value Nilai berasal dari pesan log
additional.fields.UI_Mode.string_value Nilai berasal dari pesan log
additional.fields.Version.string_value Nilai berasal dari pesan log
additional.fields.from_rule_item.string_value Nilai berasal dari pesan log
additional.fields.policy_result.string_value Nilai berasal dari pesan log
additional.fields.ppp_id.string_value Nilai berasal dari pesan log
additional.fields.resource.string_value Nilai berasal dari pesan log
additional.fields.rule.string_value Nilai berasal dari pesan log
additional.fields.server_vip_ip.string_value Nilai berasal dari pesan log
additional.fields.server_vip_name.string_value Nilai berasal dari pesan log
additional.fields.to_rule_item.string_value Nilai berasal dari pesan log
additional.fields.tunnel_resource.string_value Nilai berasal dari pesan log
metadata.description Nilai berasal dari pesan log
metadata.event_type Nilai di-hardcode dalam kode parser untuk beberapa peristiwa dan berasal dari pesan log untuk peristiwa lainnya
metadata.log_type Nilai ditetapkan ke jenis batch
metadata.product_event_type Nilai berasal dari pesan log
metadata.product_name Nilai di-hardcode dalam kode parser
metadata.vendor_name Nilai di-hardcode dalam kode parser
network.application_protocol Nilai berasal dari pesan log
network.direction Nilai berasal dari pesan log
network.http.method Nilai berasal dari pesan log
network.http.parsed_user_agent Nilai ini berasal dari kolom network.http.user_agent
network.http.referral_url Nilai berasal dari pesan log
network.http.response_code Nilai berasal dari pesan log
network.http.user_agent Nilai berasal dari pesan log
network.ip_protocol Nilai berasal dari pesan log
network.received_bytes Nilai berasal dari pesan log
network.sent_bytes Nilai berasal dari pesan log
network.session_id Nilai berasal dari pesan log
network.tls.cipher Nilai berasal dari pesan log
network.tls.version Nilai berasal dari pesan log
observer.asset.hostname Nilai ditetapkan ke kolom nama host
observer.asset.ip Nilai ditetapkan ke kolom hostip
observer.hostname Nilai ditetapkan ke kolom nama host
observer.ip Nilai ditetapkan ke kolom hostip
principal.application Nilai berasal dari pesan log
principal.asset.hostname Nilai ditetapkan ke kolom nama host
principal.asset.ip Nilai ditetapkan ke kolom hostip atau kolom prin_ip jika ada
principal.asset.product_object_id Nilai berasal dari pesan log
principal.hostname Nilai ditetapkan ke kolom nama host
principal.ip Nilai ditetapkan ke kolom hostip atau kolom prin_ip jika ada
principal.location.country_or_region Nilai berasal dari pesan log
principal.platform Nilai berasal dari pesan log
principal.port Nilai berasal dari pesan log
principal.process.command_line Nilai berasal dari pesan log
principal.process.pid Nilai berasal dari pesan log
principal.resource.name Nilai berasal dari pesan log
principal.resource.type Nilai di-hardcode dalam kode parser untuk beberapa peristiwa dan berasal dari pesan log untuk peristiwa lainnya
principal.user.email_addresses Nilai berasal dari pesan log
principal.user.userid Nilai berasal dari pesan log
security_result.action Nilai berasal dari pesan log
security_result.description Nilai berasal dari pesan log
security_result.rule_name Nilai berasal dari pesan log
security_result.severity Nilai berasal dari pesan log
security_result.severity_details Nilai berasal dari pesan log
security_result.summary Nilai berasal dari pesan log
src.ip Nilai berasal dari pesan log
src.location.country_or_region Nilai berasal dari pesan log
src.port Nilai berasal dari pesan log
target.asset.hostname Nilai berasal dari pesan log
target.asset.ip Nilai berasal dari pesan log
target.hostname Nilai berasal dari pesan log
target.ip Nilai berasal dari pesan log
target.port Nilai berasal dari pesan log
target.process.command_line Nilai berasal dari pesan log
target.process.pid Nilai berasal dari pesan log
target.resource.id Nilai berasal dari pesan log
target.url Nilai berasal dari pesan log
target.user.userid Nilai berasal dari pesan log

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