Ř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 dokument obsahuje pokyny, jak zúžit problémy s výkonem související s Defenderem for Endpoint v Linuxu pomocí dostupných diagnostických nástrojů, abyste dokázali pochopit a zmírnit stávající nedostatek prostředků a procesy, které systém do takových situací vedou. Problémy s výkonem způsobují hlavně kritické body v jednom nebo několika hardwarových subsystémech 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.
Ř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 zařízení spravuje vaše organizace, může ochranu v reálném čase zakázat správce 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 komponenta detekce a odezvy koncového bodu (EDR). V takovém případě postupujte podle kroků v části Řešení potíží s výkonem pomocí analyzátoru Microsoft Defender for Endpoint klienta v tomto článku.
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.
V systému Linux si pomocí příkazu stáhněte ukázkový analyzátor Pythonu high_cpu_parser.py :
wget -c https://raw.githubusercontent.com/microsoft/mdatp-xplat/master/linux/diagnostic/high_cpu_parser.py
Výstup tohoto příkazu by měl být podobný následujícímu:
--2020-11-14 11:27:27-- https://raw.githubusercontent.com/microsoft.mdatp-xplat/master/linus/diagnostic/high_cpu_parser.py Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.xxx.xxx Connecting to raw.githubusercontent.com (raw.githubusercontent.com)| 151.101.xxx.xxx| :443... connected. HTTP request sent, awaiting response... 200 OK Length: 1020 [text/plain] Saving to: 'high_cpu_parser.py' 100%[===========================================>] 1,020 --.-K/s in 0s
Zadejte následující příkazy:
mdatp diagnostic real-time-protection-statistics --output json | python high_cpu_parser.py
Výstupem výše uvedeného je seznam hlavních přispěvatelů k problémům s výkonem. První sloupec je identifikátor procesu (PID), druhý sloupec je název procesu a poslední sloupec je počet naskenovaných souborů seřazených podle dopadu. Například výstup příkazu bude vypadat přibližně takto:
... > mdatp diagnostic real-time-protection-statistics --output json | python high_cpu_parser.py | head 27432 None 76703 73467 actool 1249 73914 xcodebuild 1081 73873 bash 1050 27475 None 836 1 launchd 407 73468 ibtool 344 549 telemetryd_v1 325 4764 None 228 125 CrashPlanService 164
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í. 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 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 pomocí nástroje Microsoft Defender for Endpoint Client Analyzer
Platí pro:
- Problémy s výkonem všech dostupných komponent Defenderu for Endpoint, jako jsou av a EDR
Nástroj Microsoft Defender for Endpoint Client Analyzer (MDECA) může shromažďovat trasování, protokoly a diagnostické informace za účelem řešení potíží s výkonem na zařízeních nasazených v Linuxu.
Poznámka
- Nástroj Microsoft Defender for Endpoint Client Analyzer je pravidelně používán službami zákaznické podpory (CSS) společnosti Microsoft ke shromažďování informací, jako jsou (mimo jiné) IP adresy a názvy počítačů, které vám pomůžou při řešení potíží s Microsoft Defender for Endpoint. Další informace o našem prohlášení o zásadách ochrany osobních údajů najdete v prohlášení společnosti Microsoft o zásadách ochrany osobních údajů.
- Jako obecný osvědčený postup doporučujeme aktualizovat agenta Microsoft Defender for Endpoint na nejnovější dostupnou verzi a před dalším šetřením ověřit, že problém přetrvává.
Pokud chcete spustit klientský analyzátor pro řešení potíží s výkonem, přečtěte si téma Spuštění klientského analyzátoru v macOS a 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.
Řešení potíží s výkonem AuditD
Pozadí:
Microsoft Defender for Endpoint v distribucích operačního systému Linux využívá architekturu AuditD ke shromažďování určitých typů telemetrických událostí.
Systémové události zachycené pravidly přidanými do
/etc/audit/rules.d/
se přidají do audit.log a můžou ovlivnit auditování hostitele a upstreamové shromažďování.Události přidané Microsoft Defender for Endpoint v Linuxu se označí
mdatp
klíčem.Pokud je služba AuditD chybně nakonfigurovaná nebo offline, můžou některé události chybět. Informace o řešení takového problému najdete v tématu Řešení potíží s chybějícími událostmi nebo upozorněními pro Microsoft Defender for Endpoint v Linuxu.
U některých serverových úloh se můžou vyskytovat dva problémy:
High CPU
spotřeba prostředků zmdatp_audisp_plugin
procesu./var/log/audit/audit.log
se z velkého nebo často rotujícího.
K těmto problémům může docházet na serverech s mnoha událostmi, které zahltěly AuditD. K těmto problémům může dojít v případě, že existuje více příjemců pro AuditD, příliš mnoho pravidel s kombinací Microsoft Defender for Endpoint a příjemců třetích stran nebo vysoké zatížení, které generuje velké množství událostí. Pokud chcete tyto problémy vyřešit, začněte tím, že na ukázkovém ovlivněném serveru shromažďujte protokoly MDEClientAnalyzer .
Jako osvědčený postup doporučujeme nakonfigurovat protokoly AuditD tak, aby se při dosažení limitu maximální velikosti souboru obměňovaly. Tato konfigurace zabraňuje shromažďování protokolů AuditD v jednom souboru a obměněné soubory protokolů je možné přesunout, aby se ušetřilo místo na disku. Chcete-li toho dosáhnout, můžete v souboru auditd.conf nastavit hodnotu na max_log_file_action
rotate
.
Poznámka
Obecně se doporučuje aktualizovat agenta Microsoft Defender for Endpoint na nejnovější dostupnou verzi a potvrdit, že problém stále přetrvává, než se prošetřuje. Že existují další konfigurace, které můžou ovlivnit zatížení procesoru podsystému AuditD. Konkrétně v souboru auditd.conf je možné hodnotu pro disp_qos
nastavit na , lossy
aby se snížila vysoká spotřeba procesoru. To ale znamená, že během špičky využití procesoru může dojít k vyřazení některých událostí.
XMDEClientAnalyzer
Při použití XMDEClientAnalyzeru se v následujících souborech zobrazí výstup, který poskytuje přehledy, které vám pomůžou při řešení problémů.
auditd_info.txt
auditd_log_analysis.txt
auditd_info.txt
Obsahuje obecnou konfiguraci AuditD a zobrazuje následující informace:
Jaké procesy se registrují jako uživatelé AuditD.
Auditctl -s
output withenabled=2
(Navrhuje, že auditovaný je v neměnném režimu (vyžaduje restartování, aby se projevily všechny změny konfigurace.)Auditctl -l
output (Zobrazuje, jaká pravidla jsou aktuálně načtena do jádra, která se můžou lišit od toho, co existuje na disku v nástroji/etc/auditd/rules.d/mdatp.rules
. Také ukazuje, která pravidla souvisejí s Microsoft Defender for Endpoint.)
auditd_log_analysis.txt
Obsahuje důležité agregované informace, které jsou užitečné při zkoumání problémů s výkonem AuditD.
Která komponenta vlastní nejvíce hlášených událostí (Microsoft Defender for Endpoint události se označí pomocí
key=mdatp
).Hlavní iniciátory generování sestav.
Nejběžnější systémová volání (události sítě nebo systému souborů a další).
Jaké cesty systému souborů jsou nejhlušnější.
Pokud chcete zmírnit většinu problémů s výkonem AuditD, můžete implementovat vyloučení AuditD. Pokud daná vyloučení nezlepší výkon, můžeme použít možnost omezovače rychlosti. Tím se úplně sníží počet událostí generovaných AuditD.
Poznámka
Vyloučení by měla být provedena pouze pro iniciátory nebo cesty s nízkou hrozbou a vysokým šumem. Nevylučujte například /bin/bash, u kterého hrozí vytvoření velkého slepého bodu. Při definování vyloučení je třeba se vyhnout běžným chybám.
Typy vyloučení
Nástroj pro podporu XMDEClientAnalyzer obsahuje syntaxi, kterou lze použít k přidání konfiguračních pravidel vyloučení AuditD.
Vyloučení AuditD – nápověda k syntaxi nástroje podpory:
Autor: iniciátor
-
-e/ -exe
Úplná binární cesta > Odebere všechny události tímto iniciátorem.
Podle cesty
-
-d / -dir
Úplná cesta k adresáři > Odebere události systému souborů, které cílí na tento adresář.
Příklady:
Pokud /opt/app/bin/app
zapisuje do /opt/app/cfg/logs/1234.log
nástroje , můžete použít nástroj podpory k vyloučení s různými možnostmi:
-e /opt/app/bin/app
-d /opt/app/cfg
-x /usr/bin/python /etc/usercfg
-d /usr/app/bin/
Další příklady:
./mde_support_tool.sh exclude -p <process id>
./mde_support_tool.sh exclude -e <process name>
Pokud chcete vyloučit více než jednu položku, zřetězení vyloučení na jeden řádek:
./mde_support_tool.sh exclude -e <process name> -e <process name 2> -e <process name3>
Příznak -x se používá k vyloučení přístupu k podadresářům ze strany konkrétních iniciátorů, například:
./mde_support_tool.sh exclude -x /usr/sbin/mv /tmp
Výše uvedené vyloučení monitorování podsložky /tmp při přístupu procesem mv.
Omezovač rychlosti
Nástroj pro podporu XMDEClientAnalyzer obsahuje syntaxi, kterou je možné použít k omezení počtu událostí hlášených modulem plug-in auditD. Tato možnost nastaví limit četnosti pro AuditD globálně, což způsobí pokles všech událostí auditu.
Poznámka
Tato funkce by se měla pečlivě používat, protože omezuje počet událostí hlášených auditovaným subsystémem jako celkem. To by mohlo snížit počet událostí i pro ostatní předplatitele.
K povolení nebo zakázání tohoto limitu rychlosti můžete použít možnost ratelimit.
Zapnout: ./mde_support_tool.sh ratelimit -e true
Vypnout: ./mde_support_tool.sh ratelimit -e false
Když je povolený parametr ratelimit, přidá se do pole AuditD pravidlo pro zpracování 2500 událostí za sekundu.
Poznámka
Pokud potřebujete pomoc s analýzou a zmírněním problémů s výkonem souvisejících s AuditD nebo s nasazením vyloučení AuditD ve velkém měřítku, obraťte se na podporu Microsoftu.
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.