Mengumpulkan log Sophos XG Firewall

Didukung di:

Dokumen ini menjelaskan cara mengumpulkan log Firewall Sophos Next Gen (XG) menggunakan Bindplane. Parser mengekstrak log, menormalisasi key-value pair, dan memetakannya ke UDM. Alat ini menangani berbagai format log, mengonversi stempel waktu, memperkaya data jaringan, dan mengategorikan peristiwa berdasarkan ID log dan aktivitas jaringan.

Sebelum memulai

  • Pastikan Anda memiliki instance Google Security Operations.
  • Pastikan Anda menggunakan Windows 2016 atau yang lebih baru, atau host Linux dengan systemd.
  • Jika berjalan di belakang proxy, pastikan port firewall terbuka.
  • Pastikan Anda memiliki akses istimewa ke Sophos XG Firewall.

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

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: '/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
            ingestion_labels:
                log_type: SYSLOG
                namespace: sophos_firewall
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Ganti port dan alamat IP sesuai kebutuhan di infrastruktur Anda.

  4. Ganti <customer_id> dengan ID pelanggan yang sebenarnya.

  5. 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 server syslog Sophos Firewall

  1. Login ke Sophos XG Firewall.
  2. Buka Konfigurasi > Layanan sistem > Setelan log.
  3. Di bagian Server syslog, klik Tambahkan.
  4. Berikan detail konfigurasi berikut:
    • Name: masukkan nama unik untuk pengumpul Google SecOps.
    • Alamat IP/Domain: masukkan alamat IP Bindplane.
    • Port: masukkan nomor port Bindplane.
    • Fasilitas: pilih DAEMON.
    • Tingkat keparahan: pilih Informasi.
    • Format: pilih Format standar perangkat.
  5. Klik Simpan.
  6. Kembali ke halaman Setelan Log dan pilih jenis log tertentu untuk diteruskan ke server syslog.

Mengonfigurasi Setelan Log Firewall Sophos XG

  1. Pilih log Firewall dasar (log kebijakan keamanan) berikut:
    • Aturan kebijakan
    • Traffic tidak valid
    • ACL lokal
    • Serangan DoS
    • Paket yang dialihkan ICMP dibatalkan
    • Paket yang dirutekan sumber yang di-drop
    • Traffic terfragmentasi yang dihapus
    • Pemfilteran MAC
    • Pemfilteran pasangan IP-MAC
    • Pencegahan pemalsuan IP
    • Tunnel VPN SSL
    • Server aplikasi yang dilindungi
    • Detak jantung
  2. Pilih log Perlindungan web (log pemfilteran web dan log pemfilteran aplikasi) berikut:
    • Filter web
    • Filter aplikasi
  3. Pilih log Network protection (IPS log) berikut:
    • Anomali
    • Tanda Tangan
  4. Pilih log Log sistem berikut:
    • Peristiwa sistem

Tabel Pemetaan UDM

Kolom Log Pemetaan UDM Logika
activityname security_result.detection_fields.activityname Nilai dari kolom activityname.
app_category security_result.detection_fields.Application Category, application_category Nilai dari kolom app_category.
app_filter_policy_id security_result.detection_fields.app_filter_policy_id Nilai dari kolom app_filter_policy_id.
app_is_cloud security_result.detection_fields.app_is_cloud Nilai dari kolom app_is_cloud.
app_name principal.application Nilai dari kolom app_name.
app_resolved_by security_result.detection_fields.app_resolved_by Nilai dari kolom app_resolved_by.
app_risk security_result.detection_fields.Application Risk, application_risk Nilai dari kolom app_risk.
app_technology application_technology Nilai dari kolom app_technology.
application principal.application Nilai dari kolom application.
application_category security_result.detection_fields.Application Category Nilai dari kolom application_category.
application_risk security_result.detection_fields.Application Risk Nilai dari kolom application_risk.
application_technology security_result.detection_fields.Application Technology Nilai dari kolom application_technology.
bytes_received network.received_bytes Nilai dari kolom bytes_received.
bytes_sent network.sent_bytes Nilai dari kolom bytes_sent.
category application_category Nilai dari kolom category.
category_type security_result.detection_fields.category_type Nilai dari kolom category_type.
client_host_name network.dhcp.client_hostname Nilai dari kolom client_host_name.
client_physical_address network.dhcp.chaddr Nilai dari kolom client_physical_address.
con_event security_result.detection_fields.con_event Nilai dari kolom con_event.
con_id security_result.detection_fields.con_id Nilai dari kolom con_id.
connevent security_result.detection_fields.connevent Nilai dari kolom connevent.
connid security_result.detection_fields.connid Nilai dari kolom connid.
date event.timestamp Diuraikan dari kolom date dan time, disesuaikan untuk zona waktu.
device_id intermediary.asset.asset_id Nilai dari kolom device_id, diberi awalan dengan ID:.
device_model intermediary.hostname Nilai dari kolom device_model.
device_name intermediary.hostname Nilai dari kolom device_name.
device_serial_id intermediary.asset.asset_id Nilai dari kolom device_serial_id, diberi awalan dengan ID:.
domain principal.administrative_domain, target.hostname Nilai dari kolom domain.
dst_country target.location.country_or_region Nilai dari kolom dst_country.
dst_country_code target.location.country_or_region Nilai dari kolom dst_country_code.
dst_ip target.ip Nilai dari kolom dst_ip.
dst_mac target.mac Nilai dari kolom dst_mac.
dst_port target.port Nilai dari kolom dst_port.
dst_trans_ip target.nat_ip Nilai dari kolom dst_trans_ip.
dst_trans_port target.nat_port Nilai dari kolom dst_trans_port.
dst_zone security_result.detection_fields.dst_zone Nilai dari kolom dst_zone.
dstzone security_result.detection_fields.dstzone Nilai dari kolom dstzone.
dstzonetype security_result.detection_fields.dstzonetype Nilai dari kolom dstzonetype.
duration network.session_duration.seconds Nilai dari kolom duration.
ether_type security_result.detection_fields.ether_type Nilai dari kolom ether_type.
exceptions security_result.detection_fields.exceptions Nilai dari kolom exceptions.
fw_rule_id security_result.rule_id Nilai dari kolom fw_rule_id.
fw_rule_name security_result.rule_name Nilai dari kolom fw_rule_name.
fw_rule_section security_result.rule_set Nilai dari kolom fw_rule_section.
fw_rule_type security_result.rule_type Nilai dari kolom fw_rule_type.
gw_id_request security_result.detection_fields.gw_id_request Nilai dari kolom gw_id_request.
gw_name_request security_result.detection_fields.gw_name_request Nilai dari kolom gw_name_request.
hb_health security_result.detection_fields.hb_health Nilai dari kolom hb_health.
hb_status security_result.detection_fields.hb_status Nilai dari kolom hb_status.
http_category security_result.detection_fields.http_category Nilai dari kolom http_category.
http_category_type security_result.detection_fields.http_category_type Nilai dari kolom http_category_type.
http_status network.http.response_code Nilai dari kolom http_status.
in_display_interface security_result.detection_fields.in_display_interface Nilai dari kolom in_display_interface.
in_interface security_result.detection_fields.in_interface Nilai dari kolom in_interface.
ipaddress principal.ip, network.dhcp.ciaddr Nilai dari kolom ipaddress.
log_component metadata.product_event_type, security_result.detection_fields.log_component Nilai dari kolom log_component.
log_id metadata.product_log_id Nilai dari kolom log_id.
log_msg metadata.description Nilai dari kolom message setelah menghapus message=.
log_occurrence security_result.detection_fields.log_occurrence Nilai dari kolom log_occurrence.
log_subtype security_result.detection_fields.log_subtype, security_result.action Nilai dari kolom log_subtype.
log_type security_result.detection_fields.log_type Nilai dari kolom log_type.
log_version security_result.detection_fields.log_version Nilai dari kolom log_version.
message metadata.description Nilai dari kolom message.
nat_rule_id security_result.detection_fields.nat_rule_id Nilai dari kolom nat_rule_id.
nat_rule_name security_result.detection_fields.nat_rule_name Nilai dari kolom nat_rule_name.
out_display_interface security_result.detection_fields.out_display_interface Nilai dari kolom out_display_interface.
out_interface security_result.detection_fields.out_interface Nilai dari kolom out_interface.
packets_received network.received_packets Nilai dari kolom packets_received.
packets_sent network.sent_packets Nilai dari kolom packets_sent.
priority security_result.severity Dipetakan dari kolom priority atau severity berdasarkan tabel penelusuran.
protocol network.ip_protocol Diuraikan dari kolom protocol menggunakan tabel pemetaan.
reason security_result.detection_fields.reason, security_result.summary Nilai dari kolom reason.
recv_bytes network.received_bytes Nilai dari kolom recv_bytes.
recv_pkts network.received_packets Nilai dari kolom recv_pkts.
referer network.http.referral_url Nilai dari kolom referer.
rule_id security_result.rule_id Nilai dari kolom rule_id.
rule_name security_result.rule_name Nilai dari kolom rule_name.
sent_bytes network.sent_bytes Nilai dari kolom sent_bytes.
sent_pkts network.sent_packets Nilai dari kolom sent_pkts.
severity priority Nilai dari kolom severity.
src_country principal.location.country_or_region Nilai dari kolom src_country.
src_country_code principal.location.country_or_region Nilai dari kolom src_country_code.
src_ip principal.ip Nilai dari kolom src_ip.
src_mac principal.mac Nilai dari kolom src_mac.
src_port principal.port Nilai dari kolom src_port.
src_trans_ip principal.nat_ip Nilai dari kolom src_trans_ip.
src_trans_port principal.nat_port Nilai dari kolom src_trans_port.
src_zone security_result.detection_fields.src_zone Nilai dari kolom src_zone.
srczone security_result.detection_fields.srczone Nilai dari kolom srczone.
srczonetype security_result.detection_fields.srczonetype Nilai dari kolom srczonetype.
status security_result.action_details, security_result.action Nilai dari kolom status.
status_code network.http.response_code Nilai dari kolom status_code.
target.url target.url Nilai dari kolom url.
time event.timestamp Diuraikan dari kolom date dan time, disesuaikan untuk zona waktu.
timestamp event.timestamp Diuraikan dari kolom timestamp.
tran_dst_ip target.nat_ip Nilai dari kolom tran_dst_ip.
tran_dst_port target.nat_port Nilai dari kolom tran_dst_port.
tran_src_ip principal.nat_ip Nilai dari kolom tran_src_ip.
tran_src_port principal.nat_port Nilai dari kolom tran_src_port.
url target.url Nilai dari kolom url.
used_quota security_result.detection_fields.used_quota Nilai dari kolom used_quota.
user_agent network.http.user_agent, network.http.parsed_user_agent Nilai dari kolom user_agent. Versi yang diuraikan juga dibuat.
user_gp extensions.auth.type Jika user_gp adalah vpn, tetapkan extensions.auth.type ke VPN.
user_name principal.user.userid, principal.user.email_addresses Nilai dari kolom user_name. Jika berisi @, juga ditambahkan ke email_addresses.
web_policy_id security_result.detection_fields.web_policy_id Nilai dari kolom web_policy_id.
T/A event.idm.read_only_udm.metadata.event_timestamp Disalin dari event.timestamp.
T/A event.idm.read_only_udm.metadata.log_type Skema penyerapan Chronicle menentukan jenis log sebagai SOPHOS_FIREWALL.
T/A event.idm.read_only_udm.metadata.vendor_name Nilai konstanta SOPHOS.
T/A event.idm.read_only_udm.metadata.product_name Nilai konstanta SOPHOS Firewall.
T/A event.idm.read_only_udm.network.application_protocol Ditetapkan ke DHCP jika kolom ipaddress ada. Jika tidak, berasal dari kolom protocol.
T/A event.idm.read_only_udm.metadata.event_type Ditentukan oleh logika berdasarkan keberadaan kolom lain (misalnya, NETWORK_HTTP, NETWORK_CONNECTION, NETWORK_DHCP, STATUS_UPDATE, GENERIC_EVENT).
T/A event.idm.read_only_udm.security_result.action Diperoleh dari kolom status atau log_subtype.

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