Řešení potíží s výkonem Microsoft Defender for Endpoint v Linuxu
Platí pro:
- Microsoft Defender for Endpoint Server
- Microsoft Defender pro servery
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:
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í.
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
aInsiderFast
. 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 jetrue
. 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.
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.