Sdílet prostřednictvím


Řešení potíží s výkonem Microsoft Defender for Endpoint v Linuxu

Platí pro:

Chcete používat Defender pro Endpoint? Zaregistrujte se a získejte bezplatnou zkušební verzi,

Tento článek popisuje, jak zúžit problémy s výkonem související s Defenderem for Endpoint v Linuxu. K dispozici jsou diagnostické nástroje, které vám pomůžou pochopit a zmírnit stávající nedostatek prostředků a procesy, které mají vliv na výkon. Tyto diagnostické nástroje je možné využít také ke zvýšení viditelnosti na portálu Microsoft Defender. Kritické body v jednom nebo několika hardwarových subsystémech způsobují hlavně problémy s výkonem v závislosti na profilu využití prostředků v systému. Někdy jsou aplikace citlivé na vstupně-výstupní prostředky disku a můžou potřebovat větší kapacitu procesoru a někdy některé konfigurace nejsou udržitelné a můžou aktivovat příliš mnoho nových procesů a otevřít příliš mnoho popisovačů souborů.

V závislosti na spuštěných aplikacích a charakteristikách zařízení může při spuštění defenderu for Endpoint v Linuxu docházet k neoptimálnímu výkonu. Konkrétně aplikace nebo systémové procesy, které v krátkém časovém intervalu přistupí k mnoha prostředkům, jako jsou procesor, disk a paměť, můžou vést k problémům s výkonem v Defenderu for Endpoint v Linuxu.

Upozornění

Než začnete, ujistěte se, že na zařízení nejsou aktuálně spuštěné jiné produkty zabezpečení. Více produktů zabezpečení může být v konfliktu a mít vliv na výkon hostitele.

Existují tři různé způsoby řešení potíží s hlučné procesy a adresáři pomocí diagnostických nástrojů z Microsoft Defender for Endpoint v Linuxu:

  • Použití statistik ochrany v reálném čase
  • Použití zdrojů horkých událostí
  • Použití statistik eBPF

Řešení potíží s výkonem pomocí statistik ochrany v reálném čase

Platí pro:

  • Pouze problémy s výkonem související s antivirovým programem

Ochrana v reálném čase (RTP) je funkce Defenderu for Endpoint v Linuxu, která nepřetržitě monitoruje a chrání vaše zařízení před hrozbami. Skládá se z monitorování souborů a procesů a dalších heuristik.

K řešení těchto problémů a jejich zmírnění můžete použít následující kroky:

  1. Zakažte ochranu v reálném čase pomocí některé z následujících metod a sledujte, jestli se výkon zlepší. Tento přístup pomáhá zúžit, jestli Defender for Endpoint v Linuxu přispívá k problémům s výkonem. Pokud vaše zařízení nespravuje vaše organizace, můžete ochranu v reálném čase zakázat z příkazového řádku:

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

    Pokud vaše organizace spravuje vaše zařízení, může správce zakázat ochranu v reálném čase podle pokynů v tématu Nastavení předvoleb pro Defender for Endpoint v Linuxu.

    Poznámka

    Pokud problém s výkonem přetrvává, i když je ochrana v reálném čase vypnutá, může být původcem problému také komponenta detekce a odezvy koncových bodů (EDR). V takovém případě musíte přidat globální vyloučení z antivirové ochrany a EDR. V takovém případě postupujte podle kroků v části Řešení potíží s výkonem pomocí zdrojů horkých událostí.

  2. Pokud chcete najít aplikace, které spouští nejvíce kontrol, můžete použít statistiky shromážděné defenderem for Endpoint v linuxu v reálném čase.

    Poznámka

    Tato funkce je dostupná ve verzi 100.90.70 nebo novější.

    Tato funkce je ve výchozím nastavení povolená v kanálech Dogfood a InsiderFast . Pokud používáte jiný aktualizační kanál, můžete tuto funkci povolit z příkazového řádku:

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

    Tato funkce vyžaduje povolení ochrany v reálném čase. Pokud chcete zkontrolovat stav ochrany v reálném čase, spusťte následující příkaz:

    mdatp health --field real_time_protection_enabled
    

    Ověřte, že real_time_protection_enabled položka je true. V opačném případě ho povolte spuštěním následujícího příkazu:

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

    Pokud chcete shromáždit aktuální statistiky, spusťte:

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

    Poznámka

    Použití --output json (všimněte si dvojité pomlčky) zajistí, že je výstupní formát připravený k analýze.

    Výstup tohoto příkazu zobrazuje všechny procesy a jejich přidruženou aktivitu kontroly.

  3. Zadejte následující příkazy:

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

    Výstupem je seznam čtyř hlavních přispěvatelů k problémům s výkonem. Výstup příkazu je například podobný následujícímu:

    =====================================
    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
    =====================================
    

    Pokud chcete zvýšit výkon Defenderu for Endpoint v Linuxu, vyhledejte pod Total files scanned řádkem ten s nejvyšším číslem a přidejte pro něj vyloučení antivirového softwaru (pečlivě vyhodnoťte, jestli je bezpečné ho vyloučit). Další informace najdete v tématu Konfigurace a ověření vyloučení pro Defender for Endpoint v Linuxu.

    Poznámka

    Aplikace ukládá statistiky do paměti a sleduje pouze aktivitu souborů od jejího spuštění a povolení ochrany v reálném čase. Nezapočítávají se procesy, které byly spuštěny před obdobím, kdy byla ochrana v reálném čase vypnutá, nebo během období, kdy byla ochrana v reálném čase vypnutá. Kromě toho se počítají pouze události, které aktivovaly kontroly.

Řešení potíží s výkonem s využitím zdrojů horkých událostí

Platí pro:

  • Problémy s výkonem souborů a spustitelných souborů, které spotřebovávají většinu cyklů procesoru v celém systému souborů

Zdroje horkých událostí jsou funkce, která zákazníkům umožňuje zjistit, který proces nebo adresář je zodpovědný za vysokou spotřebu prostředků. Pokud chcete zjistit, který proces nebo spustitelný soubor generuje nejvíce šumu, postupujte takto.

Poznámka

Tyto příkazy vyžadují, abyste měli oprávnění uživatele root. Ujistěte se, že se dá použít sudo.

Nejprve zkontrolujte úroveň protokolu na vašem počítači.

mdatp health --field log_level

Pokud není v ladění, musíte ho změnit pro podrobnou sestavu týkající se aktivních souborů nebo spustitelných souborů.

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

Pokud chcete shromáždit aktuální statistiky (pro soubory),

sudo mdatp diagnostic hot-event-sources files

Výstup vypadá podobně jako následující v konzole (jedná se pouze o fragment celého výstupu). Tady první řádek zobrazuje počet (četnost výskytů) a druhý zobrazuje cestu k souboru.

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

Tento příkaz vygeneruje sestavu zdroje horké události, která je uložena v místní složce, kterou můžete dále prozkoumat. Výstup v souboru JSON vypadá takto:

{
    "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": ""
        }
    ]
}

V příkladu vidíme, že největší aktivitu generuje soubor /mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5. Podobně jako u spustitelných souborů

sudo mdatp diagnostic hot-event-sources executables

Výstup na konzole vypadá podobně jako v následujícím příkladu.

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

Toto je výstup uložený v sestavě zdroje horké události ve formátu 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": ""
        }
    ]
}

V tomto příkladu po 18s příkaz zobrazí, že spustitelné soubory; /usr/lib/postgresql/12/bin/psql a /usr/lib/postgresql/12/bin/postgres generují nejvíce aktivity.

Po dokončení šetření můžete změnit úroveň protokolu zpět na "informace".

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

Pokud chcete zvýšit výkon Defenderu for Endpoint v Linuxu, vyhledejte cestu s nejvyšším číslem v řádku počtu a přidejte globální vyloučení procesu (pokud se jedná o spustitelný soubor) nebo globální vyloučení souborů nebo složek (pokud se jedná o soubor) (pečlivě vyhodnoťte, jestli je vyloučení bezpečné). Další informace najdete v tématu Konfigurace a ověření vyloučení pro Defender for Endpoint v Linuxu.

Řešení potíží s výkonem s využitím statistik eBPF

Platí pro:

  • Všechny události souborů nebo procesů, včetně problémů s výkonem na základě volání systému.

Příkaz statistiky eBPF (rozšířený filtr paketů Berkeley) poskytuje přehled o hlavních událostech a procesu, které generují nejvíce událostí souboru, a jejich ID syscall. Při systémových voláních ze systému se ve vašem systému generuje velké množství úloh. K identifikaci takových problémů je možné použít statistiky eBPF.

Pokud chcete shromažďovat aktuální statistiky pomocí statistik eBPF, spusťte:

mdatp diagnostic ebpf-statistics

Výstup se zobrazí přímo v konzole nástroje a bude vypadat podobně jako následující (jedná se pouze o fragment celého výstupu):

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

Tento příkaz monitoruje systém po dobu 20 sekund a zobrazí výsledky. Tady cesta hlavního iniciátoru (postgresql/12/bin/psql) ukazuje cestu procesu, který vygeneroval nejvíce systémových volání.

Pokud chcete zvýšit výkon Defenderu for Endpoint v Top initiator path Linuxu, vyhledejte v řádku ten, který má nejvyšší count hodnotu, a přidejte pro něj globální vyloučení procesů (pečlivě vyhodnoťte, jestli je bezpečné ho vyloučit). Další informace najdete v tématu Konfigurace a ověření vyloučení pro Defender for Endpoint v Linuxu.

Konfigurace globálních vyloučení pro lepší výkon

Nakonfigurujte Microsoft Defender for Endpoint v Linuxu s vyloučeními pro procesy nebo umístění disků, které přispívají k problémům s výkonem. Další informace najdete v tématu Konfigurace a ověření vyloučení Microsoft Defender for Endpoint v systému Linux. Pokud problémy s výkonem přetrvávají, kontaktujte podporu a požádejte o další pokyny a zmírnění rizik.

Viz také

Tip

Chcete se dozvědět více? Engage s komunitou Microsoft Security v naší technické komunitě: Microsoft Defender for Endpoint Tech Community.