Mengumpulkan log Pulse Secure
Dokumen ini menjelaskan cara mengumpulkan log Pulse Secure menggunakan penerusan Google Security Operations.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan penyerapan data ke Google Security Operations.
Label penyerapan mengidentifikasi parser yang menormalisasi data log mentah ke dalam format UDM terstruktur. Informasi dalam dokumen ini berlaku untuk parser
dengan label penyerapan PULSE_SECURE_VPN
.
Mengonfigurasi Pulse Secure VPN
Untuk mengonfigurasi Pulse Secure VPN, lakukan salah satu hal berikut:
- Mengonfigurasi Pulse Secure VPN versi 8.3R3 dan yang lebih lama
- Mengonfigurasi Pulse Secure VPN versi 8.3R4 dan yang lebih baru
Mengonfigurasi Pulse Secure VPN versi 8.3R3 dan yang lebih lama
- Login ke konsol Pulse Connect Secure.
- Di konsol Pulse Connect Secure, pilih System > Log/monitoring > Settings. Anda dapat memilih Setelan dari tab Peristiwa, tab Akses pengguna, atau tab Akses admin.
- Di bagian Pilih peristiwa untuk dicatat, centang semua kotak yang sesuai dengan peristiwa.
- Di bagian Server syslog, lakukan hal berikut:
- Di kolom Server name/IP, tentukan alamat IP penerusan Google Security Operations.
- Dalam daftar Fasilitas, pilih LOCAL0. Daftar Fasilitas menyediakan
delapan fasilitas:
LOCAL0
hinggaLOCAL7
. Anda dapat menggunakan salah satu setelan ini untuk memetakan fasilitas di server syslog Anda. - Dalam daftar Type, pilih UDP atau TCP.
- Klik Tambahkan.
- Opsional: Untuk menambahkan beberapa server syslog untuk log peristiwa, akses admin, atau akses pengguna, ulangi langkah 2 hingga 4.
- Klik Simpan perubahan.
- Untuk memastikan bahwa format log standar ditetapkan sebagai default, lakukan hal berikut:
- Buka konsol Pulse connect secure.
- Di tab Peristiwa, tab Akses pengguna, dan tab Akses admin, tetapkan Filter ke Standar.
- Jika filter standar tidak ditetapkan sebagai filter default, klik Jadikan default.
- Klik Simpan.
Mengonfigurasi Pulse Secure VPN versi 8.3R4 dan yang lebih baru
- Di konsol Pulse connect secure, klik tab Events, tab User access, atau tab Admin access, lalu tetapkan Filters ke New filter.
- Di kolom Nama filter, masukkan nama untuk filter.
Di bagian Export format, pilih Custom dan masukkan format berikut di kolom:
[SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%
Klik Simpan.
Berdasarkan versi perangkat Anda untuk mengaktifkan konfigurasi syslog, lakukan salah satu hal berikut:
- Mengaktifkan logging syslog di Pulse Secure VPN
- Mengaktifkan logging syslog di Ivanti Connect Secure
Mengaktifkan logging syslog di Pulse Secure VPN
- Di konsol Pulse connect secure, pilih System > Log/monitoring > Settings. Anda dapat memilih Setelan dari tab Peristiwa, tab Akses pengguna, atau tab Akses admin.
- Di bagian Pilih peristiwa yang akan dicatat, centang semua kotak kecuali kotak Akses HTML5, Pesan kontrol penerimaan, dan Permintaan yang tidak diautentikasi.
- Di kolom Server syslog, masukkan informasi tentang server syslog.
- Di bagian Server syslog, lakukan hal berikut:
- Di kolom Server name/IP, masukkan nama server atau alamat IP penerusan Google Security Operations.
- Dalam daftar Fasilitas, pilih LOCAL0.
- Dalam daftar Filter, pilih filter yang Anda buat sebelumnya.
- Klik Tambahkan.
- Opsional: Untuk menambahkan beberapa server syslog untuk peristiwa, akses administrator, atau log akses pengguna, ulangi langkah 2 hingga 4.
- Klik Simpan perubahan.
Mengaktifkan logging syslog di Ivanti Connect Secure
- Di konsol Pulse connect secure, klik tab Events, tab User access, atau tab Admin access, lalu pilih Filters.
- Klik tab Filter baru.
Di bagian Export format, pilih Custom dan masukkan format berikut di kolom:
[SecureConnect] %date% %time% - %node% - [%sourceip%] %user%(%realm%)[%role%] - %msg%
Klik Simpan.
Klik System > Log/monitoring, lalu pilih tab Settings.
Di kolom Ukuran log maksimum, tentukan ukuran log maksimum dan pilih peristiwa yang akan dicatat lognya.
Tentukan konfigurasi server sebagai berikut:
Di kolom Server name/IP, tentukan nama domain yang sepenuhnya memenuhi syarat atau alamat IP penerusan Google Security Operations untuk server syslog.
Jika Anda memilih Transport Layer Security (TLS) dari daftar jenis, nama server harus cocok dengan CN di subjectDN dalam sertifikat yang diperoleh dari server.
Dalam daftar Fasilitas, pilih tingkat fasilitas server syslog.
Dalam daftar Type, pilih jenis koneksi ke server syslog sebagai UDP, TCP, atau TLS. TLS menggunakan protokol kriptografi untuk menyediakan komunikasi yang aman.
Jika Anda memilih TLS, pilih sertifikat klien yang diinstal untuk digunakan dalam mengautentikasi server syslog. Sertifikat klien ditentukan di jendela Configuration > Certificates > Client auth certificates. Sertifikat klien harus diinstal di perangkat sebelum dapat digunakan. Hubungi certificate authority Anda untuk mendapatkan sertifikat.
Di daftar Filter, pilih Kustom.
Klik Tambahkan.
Mengonfigurasi penerusan Google Security Operations untuk menyerap log Pulse Secure
- Pilih Setelan SIEM > Forwarder.
- Klik Tambahkan penerusan baru.
- Di kolom Nama penerusan, masukkan nama unik untuk penerusan.
- Klik Kirim, lalu klik Konfirmasi. Forwarder ditambahkan dan jendela Add collector configuration akan muncul.
- Di kolom Collector name, ketik nama unik untuk pengumpul.
- Pilih Pulse Secure sebagai Jenis log.
- Pilih Syslog sebagai Collector type.
- Konfigurasikan parameter input wajib berikut:
- Protokol: tentukan protokol koneksi yang digunakan pengumpul untuk memproses data syslog.
- Alamat: tentukan alamat IP atau nama host target tempat pengumpul berada dan memproses data syslog.
- Port: tentukan port target tempat pengumpul berada dan memproses data syslog.
- Klik Kirim.
Untuk mengetahui informasi selengkapnya tentang penerus Google Security Operations, lihat Mengelola konfigurasi penerus melalui UI Google Security Operations.
Jika Anda mengalami masalah saat membuat penerusan, hubungi dukungan Google Security Operations.
Referensi pemetaan kolom
Parser ini mengekstrak kolom dari log VPN Pulse Secure, yang menangani format Windows Event Logs dan syslog. Layanan ini menormalisasi beragam struktur log ke dalam format umum, mengategorikan peristiwa seperti login, logout, koneksi, dan perubahan kebijakan, serta memperkayanya dengan data kontekstual seperti agen pengguna, alamat IP, dan stempel waktu.
Tabel pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
tindakan | security_result.action_details |
Dipetakan langsung dari kolom action . |
application | principal.application |
Dipetakan langsung dari kolom application . |
bytes_read | network.received_bytes |
Dipetakan langsung dari kolom bytes_read dan dikonversi menjadi bilangan bulat tidak bertanda. |
bytes_written | network.sent_bytes |
Dipetakan langsung dari kolom bytes_written dan dikonversi menjadi bilangan bulat tidak bertanda. |
client_host | principal.hostname , principal.asset.hostname |
Dipetakan langsung dari kolom client_host . |
cmd | principal.process.command_line |
Dipetakan langsung dari kolom cmd . |
connection_status | security_result.detection_fields.value.string_value |
Dipetakan langsung dari kolom connection_status . |
data_time | metadata.event_timestamp.seconds |
Diuraikan dari kolom data_time menggunakan berbagai format stempel waktu (MM-dd-yyyy HH:mm:ss Z, RFC 3339, ISO8601, MMM d HH:mm:ss, MMM d HH:mm:ss). |
devname | principal.hostname , principal.asset.hostname |
Dipetakan langsung dari kolom devname . |
dstip | target.ip , target.asset.ip |
Dipetakan langsung dari kolom dstip . |
dstport | target.port |
Dipetakan langsung dari kolom dstport dan dikonversi menjadi bilangan bulat. |
dstcountry | target.location.country_or_region |
Dipetakan langsung dari kolom dstcountry jika bukan "Reserved" atau kosong. |
durasi | network.session_duration.seconds |
Dipetakan langsung dari kolom duration dan dikonversi menjadi bilangan bulat. |
dvc | intermediary.hostname atau intermediary.ip |
Jika kolom dvc dapat dikonversi menjadi alamat IP, kolom tersebut dipetakan ke intermediary.ip . Jika tidak, nilai ini dipetakan ke intermediary.hostname . |
dvc_hostname | intermediary.hostname , principal.hostname , principal.asset.hostname atau intermediary.ip , principal.ip , principal.asset.ip |
Jika kolom dvc_hostname dapat dikonversi menjadi alamat IP, kolom tersebut dipetakan ke kolom IP masing-masing. Jika tidak, alamat IP akan dipetakan ke kolom nama host masing-masing. |
event_type | metadata.product_event_type |
Dipetakan langsung dari kolom event_type . |
failure_reason | security_result.description |
Dipetakan langsung dari kolom failure_reason . Jika pesan berisi "karena host", teks "host" ditambahkan di depan alasan kegagalan. |
has_principal | event.idm.read_only_udm.principal (kehadiran) |
Ditetapkan ke "true" jika ada kolom utama yang diisi, "false" jika tidak. Diperoleh berdasarkan logika parser. |
has_target | event.idm.read_only_udm.target (kehadiran) |
Ditetapkan ke "true" jika ada kolom target yang diisi, "false" jika tidak. Diperoleh berdasarkan logika parser. |
has_target_user | event.idm.read_only_udm.target.user.userid (kehadiran) |
Ditetapkan ke "true" jika target.user.userid diisi, "false" jika tidak. Diperoleh berdasarkan logika parser. |
host_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom host_ip . |
host_mac | principal.mac |
Dipetakan langsung dari kolom host_mac , mengganti tanda hubung dengan titik dua. |
http_method | network.http.method |
Dipetakan langsung dari kolom http_method . |
http_response | network.http.response_code |
Dipetakan langsung dari kolom http_response dan dikonversi menjadi bilangan bulat. |
info_desc | about.labels.value |
Dipetakan langsung dari kolom info_desc . |
ip_new | target.ip , target.asset.ip |
Dipetakan langsung dari kolom ip_new . |
level | security_result.severity , security_result.severity_details |
security_result.severity berasal dari kolom level ("error"/"warning" -> TINGGI, "notice" -> SEDANG, "information"/"info" -> RENDAH). Nilai mentah level juga dipetakan ke security_result.severity_details . |
logid | metadata.product_log_id |
Dipetakan langsung dari kolom logid . |
locip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom locip . |
pesan | metadata.description |
Digunakan untuk mengekstrak berbagai kolom menggunakan filter grok dan kv. Jika pesan berisi "EventID", pesan tersebut diproses sebagai log aktivitas Windows. |
message_info | metadata.description |
Dipetakan langsung ke metadata.description jika tidak digunakan dalam pola grok yang lebih spesifik. |
msg | metadata.product_event_type , metadata.description |
Jika kolom msg ada, jenis produk akan diekstrak dan dipetakan ke metadata.product_event_type , dan pesan yang tersisa akan dipetakan ke metadata.description . |
msg_hostname | principal.hostname , principal.asset.hostname |
Dipetakan langsung dari kolom msg_hostname . |
msg_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom msg_ip . |
msg_user_agent | network.http.user_agent , network.http.parsed_user_agent , metadata.product_version |
String agen pengguna dipetakan ke network.http.user_agent , agen pengguna yang diuraikan dipetakan ke network.http.parsed_user_agent , dan versi produk (jika ada) dipetakan ke metadata.product_version . |
network_duration | network.session_duration.seconds |
Dipetakan langsung dari kolom network_duration dan dikonversi menjadi bilangan bulat. |
policyid | security_result.rule_id |
Dipetakan langsung dari kolom policyid . |
policyname | security_result.rule_name |
Dipetakan langsung dari kolom policyname . |
policytype | security_result.rule_type |
Dipetakan langsung dari kolom policytype . |
priority_code | about.labels.value |
Dipetakan langsung dari kolom priority_code dan juga digunakan untuk mendapatkan about.labels.value untuk kunci "Severity" (lihat Logika). |
prod_name | metadata.product_name |
Dipetakan langsung dari kolom prod_name . |
product_type | metadata.product_event_type |
Dipetakan langsung dari kolom product_type . |
product_version | metadata.product_version |
Dipetakan langsung dari kolom product_version . |
proto | network.ip_protocol |
Dipetakan ke network.ip_protocol setelah dikonversi menjadi nama protokol IP menggunakan pencarian. |
pwd | principal.process.file.full_path |
Dipetakan langsung dari kolom pwd . |
realm | principal.group.attribute.labels.value |
Dipetakan langsung dari kolom realm . |
rcvdbyte | network.received_bytes |
Dipetakan langsung dari kolom rcvdbyte dan dikonversi menjadi bilangan bulat tidak bertanda. |
remip | target.ip |
Dipetakan langsung dari kolom remip . |
resource_name | target.resource.name |
Dipetakan langsung dari kolom resource_name setelah menghapus spasi kosong di awal/akhir dan tanda hubung. |
resource_status | security_result.description |
Dipetakan langsung dari kolom resource_status . |
resource_user_group | principal.user.group_identifiers |
Dipetakan langsung dari kolom resource_user_group . |
resource_user_name | principal.user.userid |
Dipetakan langsung dari kolom resource_user_name . |
roles | principal.user.group_identifiers |
Dipetakan langsung dari kolom roles . |
sentbyte | network.sent_bytes |
Dipetakan langsung dari kolom sentbyte dan dikonversi menjadi bilangan bulat tidak bertanda. |
session_id | network.session_id |
Dipetakan langsung dari kolom session_id . |
sessionid | network.session_id |
Dipetakan langsung dari kolom sessionid . |
srcip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom srcip . |
srcport | principal.port |
Dipetakan langsung dari kolom srcport dan dikonversi menjadi bilangan bulat. |
srccountry | principal.location.country_or_region |
Dipetakan langsung dari kolom srccountry jika bukan "Reserved" atau kosong. |
subjenis | metadata.product_event_type |
Digunakan bersama dengan type untuk membentuk metadata.product_event_type . |
target_file | target.file.full_path |
Dipetakan langsung dari kolom target_file . |
target_host | target.hostname , target.asset.hostname |
Dipetakan langsung dari kolom target_host . |
target_ip | target.ip , target.asset.ip |
Dipetakan langsung dari kolom target_ip . |
target_port | target.port |
Dipetakan langsung dari kolom target_port dan dikonversi menjadi bilangan bulat. |
target_url | target.url |
Dipetakan langsung dari kolom target_url . |
waktu | metadata.event_timestamp.seconds |
Diuraikan dari kolom time menggunakan format "yyyy-MM-dd HH:mm:ss". |
jenis | metadata.product_event_type |
Digunakan bersama dengan subtype untuk membentuk metadata.product_event_type . |
u_event_source_ip | principal.ip , principal.asset.ip , atau target.ip |
Jika target_ip atau target_host ada, u_event_source_ip dipetakan ke principal.ip dan principal.asset.ip . Jika tidak, jika target_ip , target_host , dan target_url semuanya kosong, u_event_source_ip dipetakan ke target.ip . |
u_observer_ip | observer.ip |
Dipetakan langsung dari kolom u_observer_ip . |
u_prin_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom u_prin_ip . |
pengguna | target.user.userid |
Dipetakan langsung dari kolom user . |
user_agent | network.http.user_agent , network.http.parsed_user_agent |
String agen pengguna dipetakan ke network.http.user_agent , dan agen pengguna yang diuraikan dipetakan ke network.http.parsed_user_agent . |
user_group_identifier | target.user.group_identifiers atau principal.user.group_identifiers |
Dipetakan ke target.user.group_identifiers dalam sebagian besar kasus. Dipetakan ke principal.user.group_identifiers dalam peristiwa perubahan IP (USER_UNCATEGORIZED) dan pembatasan Realm. |
user_ip | principal.ip , principal.asset.ip |
Dipetakan langsung dari kolom user_ip . Jika kosong dan u_event_source_ip tidak kosong, nilai u_event_source_ip akan diambil. |
nama pengguna | principal.user.userid atau target.user.userid |
Dipetakan ke principal.user.userid dalam sebagian besar kasus. Dipetakan ke target.user.userid dalam beberapa skenario tertentu (misalnya, saat detect_user_logout_failed salah (false) dan detect_policy_change_failed salah (false)). |
username_removed | target.user.userid |
Dipetakan langsung dari kolom username_removed . |
vd | principal.administrative_domain |
Dipetakan langsung dari kolom vd . |
metadata.vendor_name
, metadata.product_name
, metadata.event_type
, metadata.log_type
, network.ip_protocol
, security_result.action
, security_result.severity
, dan extensions.auth.type
diturunkan atau ditetapkan oleh logika parser berdasarkan kondisi yang dijelaskan di kolom Logika.
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.