Memecahkan masalah performa untuk Microsoft Defender untuk Titik Akhir di Linux

Artikel ini menjelaskan cara mempersempit masalah performa yang terkait dengan Defender untuk Titik Akhir di Linux. Alat diagnostik tersedia untuk membantu Anda memahami dan mengurangi kekurangan dan proses sumber daya yang ada yang memengaruhi performa. Alat diagnostik ini juga dapat digunakan untuk meningkatkan visibilitas dalam portal Microsoft Defender. Penyempitan dalam satu atau beberapa subsistem perangkat keras terutama menyebabkan masalah performa, tergantung pada profil pemanfaatan sumber daya pada sistem. Terkadang aplikasi sensitif terhadap sumber daya I/O disk dan mungkin membutuhkan lebih banyak kapasitas CPU, dan terkadang beberapa konfigurasi tidak berkelanjutan, dan dapat memicu terlalu banyak proses baru, dan membuka terlalu banyak deskriptor file.

Bergantung pada aplikasi yang Anda jalankan dan karakteristik perangkat, Anda mungkin mengalami performa yang kurang optimal saat menjalankan Defender untuk Titik Akhir di Linux. Secara khusus, aplikasi atau proses sistem yang mengakses banyak sumber daya seperti CPU, Disk, dan Memori dalam jangka waktu singkat dapat menyebabkan masalah performa di Defender untuk Titik Akhir di Linux.

Warning

Sebelum memulai, pastikan bahwa produk keamanan lain saat ini tidak berjalan pada perangkat. Beberapa produk keamanan dapat berkonflik dan berdampak pada performa host.

Ada tiga cara berbeda untuk memecahkan masalah proses dan direktori yang bising menggunakan alat Diagnostik dari Microsoft Defender untuk Titik Akhir di Linux:

  • Menggunakan Statistik Perlindungan Real Time
  • Menggunakan Sumber Peristiwa Panas
  • Menggunakan Statistik eBPF

Memecahkan masalah performa menggunakan Statistik Perlindungan Real-time

Berlaku untuk:

  • Hanya masalah performa yang terkait dengan antivirus

Perlindungan real time (RTP) adalah fitur Defender untuk Titik Akhir di Linux yang terus memantau dan melindungi perangkat Anda dari ancaman. Ini terdiri dari pemantauan file dan proses dan heuristik lainnya.

Langkah-langkah berikut dapat digunakan untuk memecahkan masalah dan mengurangi masalah ini:

  1. Nonaktifkan perlindungan real time menggunakan salah satu metode berikut dan amati apakah performa meningkat. Pendekatan ini membantu mempersempit apakah Defender untuk Titik Akhir di Linux berkontribusi pada masalah performa. Jika perangkat Anda tidak dikelola oleh organisasi Anda, perlindungan real time dapat dinonaktifkan dari baris perintah:

    mdatp config real-time-protection --value disabled
    
    Configuration property updated
    

    Jika organisasi Anda mengelola perangkat, administrator Anda dapat menonaktifkan perlindungan real-time menggunakan instruksi di Mengatur preferensi untuk Defender untuk Titik Akhir di Linux.

    Note

    Jika masalah performa berlanjut saat perlindungan real time nonaktif, asal masalahnya juga bisa menjadi komponen deteksi dan respons titik akhir (EDR). Dalam hal ini, Anda perlu menambahkan pengecualian global dari Antivirus dan EDR. Dalam hal ini, ikuti langkah-langkah di bagian , Memecahkan masalah performa menggunakan Sumber Peristiwa Panas.

  2. Untuk menemukan aplikasi yang memicu pemindaian terbanyak, Anda dapat menggunakan statistik real time yang dikumpulkan oleh Defender untuk Titik Akhir di Linux.

    Note

    Fitur ini tersedia di versi 100.90.70 atau yang lebih baru.

    Fitur ini diaktifkan secara default pada Dogfood saluran dan InsiderFast . Jika Anda menggunakan saluran pembaruan yang berbeda, fitur ini dapat diaktifkan dari baris perintah:

    mdatp config real-time-protection-statistics --value enabled
    

    Fitur ini memerlukan perlindungan real time untuk diaktifkan. Untuk memeriksa status perlindungan real-time, jalankan perintah berikut:

    mdatp health --field real_time_protection_enabled
    

    Verifikasi bahwa real_time_protection_enabled entrinya adalah true. Jika tidak, jalankan perintah berikut untuk mengaktifkannya:

    mdatp config real-time-protection --value enabled
    
    Configuration property updated
    

    Untuk mengumpulkan statistik saat ini, jalankan:

    mdatp diagnostic real-time-protection-statistics --output json
    

    Note

    Menggunakan --output json (perhatikan tanda hubung ganda) memastikan bahwa format output siap untuk penguraian.

    Output perintah ini menunjukkan semua proses dan aktivitas pemindaian terkait.

  3. Ketik perintah berikut:

    mdatp diagnostic real-time-protection-statistics --sort --top 4
    

    Output adalah daftar empat kontributor teratas untuk masalah performa. Misalnya, output perintah adalah sesuatu seperti berikut:

    =====================================
    Process id: 560
    Name: NetworkManager
    Path: "/usr/sbin/NetworkManager"
    Total files scanned: 261
    Scan time (ns): "3070788919"
    Status: Active
    =====================================
    Process id: 1709561
    Name: snapd
    Path: "/snap/snapd/23545/usr/lib/snapd/snapd"
    Total files scanned: 247
    Scan time (ns): "19926516003"
    Status: Active
    =====================================
    Process id: 596
    Name: systemd-logind
    Path: "/usr/lib/systemd/systemd-logind"
    Total files scanned: 29
    Scan time (ns): "716836547"
    Status: Active
    =====================================
    Process id: 1977683
    Name: cupsd
    Path: "/usr/sbin/cupsd"
    Total files scanned: 20
    Scan time (ns): "985110892"
    Status: Active
    =====================================
    

    Untuk meningkatkan performa Defender untuk Titik Akhir di Linux, temukan yang dengan angka tertinggi di bawah Total files scanned baris dan tambahkan pengecualian antivirus untuk itu (evaluasi dengan hati-hati jika aman untuk dikecualikan). Untuk informasi selengkapnya, lihat Mengonfigurasi dan memvalidasi pengecualian untuk Defender untuk Titik Akhir di Linux.

    Note

    Aplikasi menyimpan statistik dalam memori dan hanya melacak aktivitas file sejak dimulai dan perlindungan real time diaktifkan. Proses yang diluncurkan sebelum atau selama periode ketika perlindungan real time nonaktif tidak dihitung. Selain itu, hanya peristiwa yang memicu pemindaian yang dihitung.

Memecahkan masalah performa menggunakan Sumber Peristiwa Panas

Berlaku untuk:

  • Masalah performa dalam file dan executable yang mengkonsumsi sebagian besar siklus CPU di seluruh sistem file.

Sumber peristiwa panas adalah fitur yang memungkinkan pelanggan mengidentifikasi proses atau direktori mana yang bertanggung jawab atas konsumsi sumber daya yang tinggi. Untuk menyelidiki proses/executable mana yang menghasilkan kebisingan terbanyak, ikuti langkah-langkah ini.

Note

Perintah ini mengharuskan Anda memiliki izin root. Pastikan sudo dapat digunakan.

Pertama, periksa tingkat log pada komputer Anda.

mdatp health --field log_level

Jika tidak ada di "debug" Anda perlu mengubahnya untuk laporan terperinci mengenai file panas / executable.

sudo mdatp log level set --level debug
Log level configured successfully

Untuk mengumpulkan statistik saat ini (untuk file),

sudo mdatp diagnostic hot-event-sources files

Outputnya terlihat mirip dengan yang berikut ini di konsol (ini hanya cuplikan dari seluruh output). Di sini, baris pertama menunjukkan jumlah (frekuensi kemunculan) dan baris kedua menunjukkan jalur file.

Total Events: 11179 Time: 12s. Throughput: 75.3333 events/sec. 
=========== Top 684 Hot Event Sources ===========
count   file path
2832    /mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5
632     /mnt/RamDisk/postgres_data/base/635594/2601
619     /mnt/RamDisk/postgres_data/base/635597/2601
618     /mnt/RamDisk/postgres_data/base/635596/2601
618     /mnt/RamDisk/postgres_data/base/635595/2601
616     /mnt/RamDisk/postgres_data/base/635597/635610
615     /mnt/RamDisk/postgres_data/base/635596/635602
614     /mnt/RamDisk/postgres_data/base/635595/635606
514     /mnt/RamDisk/postgres_data/base/635594/635598_fsm
496     /mnt/RamDisk/postgres_data/base/635597/635610_fsm

Perintah ini menghasilkan laporan sumber peristiwa Hot yang disimpan di folder lokal Anda yang dapat diselidiki lebih lanjut. Output terlihat seperti berikut pada file json;

{
    "startTime": "1729535104539160",
    "endTime": "1729535117570766",
    "totalEvent": "11373",
    "eventSource": [
        {
            "authCount": "2832",
            "csId": "",
            "notifyCount": "0",
            "path": "/mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5",
            "pidCount": "1",
            "teamId": ""
        },
        {
            "authCount": "632",
            "csId": "",
            "notifyCount": "0",
            "path": "/mnt/RamDisk/postgres_data/base/635594/2601",
            "pidCount": "1",
            "teamId": ""
        }
    ]
}

Dalam contoh, kita dapat melihat bahwa file /mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5 menghasilkan aktivitas terbanyak. Juga, demikian pula untuk executable,

sudo mdatp diagnostic hot-event-sources executables

Outputnya terlihat mirip dengan yang berikut ini di konsol.

Total Events: 47382 Time: 18s. Throughput: 157 events/sec.
=========== Top 23 Hot Event Sources ===========
count    executable path
8216    /usr/lib/postgresql/12/bin/psql
5721    /usr/lib/postgresql/12/bin/postgres (deleted)
3557    /usr/bin/bash
378     /usr/bin/clamscan
88      /usr/bin/sudo
70      /usr/bin/dash
30      /usr/sbin/zabbix_agent2
10      /usr/bin/grep
8       /usr/bin/gawk
6       /opt/microsoft/mdatp/sbin/wdavdaemonclient
4       /usr/bin/sleep

Ini adalah output yang disimpan dalam laporan sumber peristiwa panas di json;

{
    "startTime": "1729534260988396",
    "endTime": "1729534280026883",
    "totalEvent": "48165",
    "eventSource": [
        {
            "authCount": "8126",
            "csId": "",
            "notifyCount": "0",
            "path": "/usr/lib/postgresql/12/bin/psql",
            "pidCount": "2487",
            "teamId": ""
        },
        {
            "authCount": "5127",
            "csId": "",
            "notifyCount": "0",
            "path": "/usr/lib/postgresql/12/bin/postgres",
            "pidCount": "2144",
            "teamId": ""
        }
    ]
}

Dalam contoh ini, setelah 18s perintah menunjukkan bahwa executables; /usr/lib/postgresql/12/bin/psql dan /usr/lib/postgresql/12/bin/postgres menghasilkan aktivitas terbanyak.

Setelah menyelesaikan penyelidikan, Anda dapat mengubah tingkat log kembali ke "info".

sudo mdatp log level set --level info
Log level configured successfully

Untuk meningkatkan performa Defender untuk Titik Akhir di Linux, temukan jalur dengan angka tertinggi dalam baris hitungan dan tambahkan pengecualian proses global (jika dapat dieksekusi) atau pengecualian file/folder global (jika itu adalah file) untuk itu (evaluasi dengan hati-hati jika aman untuk dikecualikan). Untuk informasi selengkapnya, lihat Mengonfigurasi dan memvalidasi pengecualian untuk Defender untuk Titik Akhir di Linux.

Memecahkan masalah performa menggunakan Statistik eBPF

Berlaku untuk:

  • Semua peristiwa file/proses, termasuk masalah performa berbasis panggilan sistem.

Perintah statistik eBPF (Filter Paket Berkeley yang diperluas) memberikan wawasan tentang peristiwa/proses teratas yang menghasilkan peristiwa file terbanyak, bersama dengan ID syscall mereka. Ketika panggilan sistem dilakukan dari sistem, ada sejumlah besar beban kerja yang dihasilkan pada sistem Anda. Statistik eBPF dapat digunakan untuk mengidentifikasi masalah tersebut.

Untuk mengumpulkan statistik saat ini menggunakan statistik eBPF, jalankan:

mdatp diagnostic ebpf-statistics

Output langsung ditampilkan di konsol dan akan terlihat mirip dengan yang berikut (ini hanya cuplikan dari seluruh output):

Top initiator paths:
/usr/lib/postgresql/12/bin/psql : 902
/usr/bin/clamscan : 349
/usr/sbin/zabbix_agent2 : 27
/usr/lib/postgresql/12/bin/postgres : 10

Top syscall ids:
80 : 9034
57 : 8932
60 : 8929
59 : 4942
112 : 4898
90 : 179
87 : 170
119 : 32
288 : 19
41 : 15

Perintah ini memantau sistem selama 20 detik dan menunjukkan hasilnya. Di sini jalur inisiator teratas (postgresql/12/bin/psql) menunjukkan jalur proses yang menghasilkan panggilan sistem terbanyak.

Untuk meningkatkan performa Defender untuk Titik Akhir di Linux, temukan yang dengan baris tertinggi count dan tambahkan pengecualian proses global untuk itu (evaluasi dengan hati-hati jika aman untuk dikecualikanTop initiator path). Untuk informasi selengkapnya, lihat Mengonfigurasi dan memvalidasi pengecualian untuk Defender untuk Titik Akhir di Linux.

Mengonfigurasi Pengecualian Global untuk performa yang lebih baik

Konfigurasikan Microsoft Defender untuk Titik Akhir di Linux dengan pengecualian untuk proses atau lokasi disk yang berkontribusi pada masalah performa. Untuk informasi selengkapnya, lihat Mengonfigurasi dan memvalidasi pengecualian untuk Microsoft Defender untuk Titik Akhir di Linux. JIKA Anda masih memiliki masalah performa, hubungi dukungan untuk instruksi dan mitigasi lebih lanjut.

Baca juga