Kör klientanalysen på macOS och Linux
XMDEClientAnalyzer används för att diagnostisera Microsoft Defender för Endpoint problem med hälsotillstånd eller tillförlitlighet på registrerade enheter som kör Antingen Linux eller macOS.
Det finns två sätt att köra verktyget för klientanalys:
- Använda en binär version (inget externt Python-beroende)
- Använda en Python-baserad lösning
Köra den binära versionen av klientanalysen
Ladda ned verktyget XMDE Client Analyzer Binary till den macOS- eller Linux-dator som du behöver undersöka.
Om du använder en terminal laddar du ned verktyget genom att ange följande kommando:wget --quiet -O XMDEClientAnalyzerBinary.zip https://go.microsoft.com/fwlink/?linkid=2297517
Verifiera nedladdningen.
- Linux
echo '2A9BF0A6183831BE43C7BCB7917A40D772D226301B4CDA8EE4F258D00B6E4E97 XMDEClientAnalyzerBinary.zip' | sha256sum -c
- macOS
echo '2A9BF0A6183831BE43C7BCB7917A40D772D226301B4CDA8EE4F258D00B6E4E97 XMDEClientAnalyzerBinary.zip' | shasum -a 256 -c
Extrahera innehållet
XMDEClientAnalyzerBinary.zip
i på datorn. Om du använder en terminal extraherar du filerna genom att ange följande kommando:unzip -q XMDEClientAnalyzerBinary.zip -d XMDEClientAnalyzerBinary
Ändra till verktygets katalog genom att ange följande kommando:
cd XMDEClientAnalyzerBinary
Två nya zip-filer skapas:
- SupportToolLinuxBinary.zip : För alla Linux-enheter
- SupportToolMacOSBinary.zip : För Mac-enheter
Packa upp en av ovanstående 2 zip-filer baserat på den dator som du behöver undersöka. När du använder en terminal packar du upp filen genom att ange något av följande kommandon baserat på operativsystemtyp:
Linux
unzip -q SupportToolLinuxBinary.zip
Mac
unzip -q SupportToolMacOSBinary.zip
Kör verktyget som rot för att generera diagnostikpaket:
sudo ./MDESupportTool -d
Köra den Python-baserade klientanalysen
Obs!
- Analysatorn är beroende av några extra PIP-paket (
decorator
, ,distro
sh
,lxml
ochpsutil
) som installeras i operativsystemet när de är i roten för att generera resultatutdata. Om det inte är installerat försöker analysatorn hämta det från den officiella lagringsplatsen för Python-paket. - Dessutom kräver verktyget för närvarande att Python version 3 eller senare installeras på enheten.
- Om enheten finns bakom en proxyserver kan du skicka proxyservern som en miljövariabel till skriptet
mde_support_tool.sh
. Till exempel:https_proxy=https://myproxy.contoso.com:8080 ./mde_support_tool.sh"
.
Varning
För att köra den Python-baserade klientanalysen krävs installation av PIP-paket som kan orsaka vissa problem i din miljö. För att undvika problem rekommenderar vi att du installerar paketen i en ANVÄNDAR-PIP-miljö.
Ladda ned verktyget XMDE Client Analyzer till den macOS- eller Linux-dator som du behöver undersöka. Om du använder en terminal laddar du ned verktyget genom att köra följande kommando:
wget --quiet -O XMDEClientAnalyzer.zip https://aka.ms/XMDEClientAnalyzer
Verifiera nedladdningen.
- Linux
echo '84C9718FF3D29DA0EEE650FB2FC0625549A05CD1228AC253DBB92C8B1D9F1D11 XMDEClientAnalyzer.zip' | sha256sum -c
- macOS
echo '84C9718FF3D29DA0EEE650FB2FC0625549A05CD1228AC253DBB92C8B1D9F1D11 XMDEClientAnalyzer.zip' | shasum -a 256 -c
Extrahera innehållet i XMDEClientAnalyzer.zip på datorn. Om du använder en terminal extraherar du filerna med hjälp av följande kommando:
unzip -q XMDEClientAnalyzer.zip -d XMDEClientAnalyzer
Ändra katalogen till den extraherade platsen.
cd XMDEClientAnalyzer
Ge verktyget körbar behörighet.
chmod a+x mde_support_tool.sh
Kör som en icke-användare för att installera nödvändiga beroenden.
./mde_support_tool.sh
Om du vill samla in det faktiska diagnostikpaketet och generera resultatarkivfilen kör du igen som rot.
sudo ./mde_support_tool.sh -d
Kommandoradsalternativ
Alla kommandoradsalternativ
usage: MDESupportTool [-h] [--output OUTPUT] [--outdir OUTDIR] [--no-zip]
[--force] [--diagnostic] [--skip-mdatp]
[--bypass-disclaimer] [--interactive] [--delay DELAY]
[--mdatp-log {trace,info,warning,error,debug,verbose}]
[--max-log-size MAX_LOG_SIZE]
{certinfocollection,performance,installation,exclude,ratelimit,skipfaultyrules,trace,observespikes,connectivitytest}
...
MDE Diagnostics Tool
positional arguments:
{certinfocollection,performance,installation,exclude,ratelimit,skipfaultyrules,trace,observespikes,connectivitytest}
certinfocollection Collect cert information: Subject name and Hashes
performance Collect extensive machine performance tracing for
analysis of a performance scenario that can be
reproduced on demand
installation Collect different installation/onboarding reports
exclude Exclude specific process(es) from audit-d monitoring.
ratelimit Set the rate limit for auditd events. Rate limit will
update the limits for auditd events for all the
applications using auditd, which could impact
applications other than MDE.
skipfaultyrules Continue loading rules in spite of an error. This
summarizes the results of loading the rules. The exit
code will not be success if any rule fails to load.
trace Use OS tracing facilities to record Defender
performance traces.
observespikes Collect the process logs in case of spike or mdatp
crash
connectivitytest Perform connectivity test for MDE
optional arguments:
-h, --help show this help message and exit
--output OUTPUT, -o OUTPUT
Output path to export report
--outdir OUTDIR Directory where diagnostics file will be generated.
--no-zip, -nz If set a directory will be created instead of an
archive file.
--force, -f Will overwrite if output directory exists.
--diagnostic, -d Collect extensive machine diagnostic information.
--skip-mdatp Skip any mdatp command. Use this when the mdatp
command is unresponsive.
--bypass-disclaimer Do not display disclaimer banner.
--interactive, -i Interactive diagnostic,
--delay DELAY, -dd DELAY
Delay diagnostic by how many minutes (0~2880), use
this to wait for more debug logs before it collects.
--mdatp-log {trace,info,warning,error,debug,verbose}
Set MDATP log level. If you use interactive or delay
mode, the log level will set to debug automatically,
and reset after 48h.
--max-log-size MAX_LOG_SIZE
Maximum log file size in MB before rotating(Will
restart mdatp).
Diagnostikläge
Diagnostikläget används för att samla in omfattande uppsättning datorinformation, till exempel minne, disk, MDATP-loggar osv. Den här uppsättningen filer ger oss primär information som krävs för att felsöka problem som rör MDE.
Alternativen som stöds är följande:
optional arguments:
-h, --help show this help message and exit
--output OUTPUT, -o OUTPUT
Output path to export report
--outdir OUTDIR Directory where diagnostics file will be generated.
--no-zip, -nz If set a directory will be created instead of an
archive file.
--force, -f Will overwrite if output directory exists.
--diagnostic, -d Collect extensive machine diagnostic information.
--skip-mdatp Skip any mdatp command. Use this when the mdatp
command is unresponsive.
--bypass-disclaimer Do not display disclaimer banner.
--interactive, -i Interactive diagnostic,
--delay DELAY, -dd DELAY
Delay diagnostic by how many minutes (0~2880), use
this to wait for more debug logs before it collects.
--mdatp-log {trace,info,warning,error,debug,verbose}
Set MDATP log level. If you use interactive or delay
mode, the log level will set to debug automatically,
and reset after 48h.
--max-log-size MAX_LOG_SIZE
Maximum log file size in MB before rotating(Will
restart mdatp).
Användningsexempel: sudo ./MDESupportTool -d
Obs!
Funktionen för automatisk reset på loggnivå är endast tillgänglig i 2405 eller senare klientversion.
De filer som genereras när du använder det här läget sammanfattas i följande tabell:
Fil | Anmärkningar |
---|---|
mde_diagnostic.zip |
Loggar och konfigurationer för Defender för Endpoint |
health.txt |
Hälsostatus för Defender för Endpoint (Presentera endast när Defender för Endpoint är installerat) |
health_details_features.txt |
Hälsostatus för andra Defender för Endpoint-funktioner (Presentera endast när Defender för Endpoint är installerat) |
permissions.txt |
Behörighetsproblem med mappar som ägs/används av Defender för Endpoint (Presentera endast när Defender för Endpoint är installerat) |
crashes |
Kraschdumpar som genererats av Defender för Endpoint |
process_information.txt |
Process som körs på datorn när verktyget kördes |
proc_directory_info.txt |
Mappning av det virtuella minnet för Defender för Endpoint-processer (Presentera endast när Defender för Endpoint är installerat) |
auditd_info.txt |
Granskad hälsa, regler, loggar |
auditd_log_analysis.txt |
Sammanfattning av händelser som bearbetats av granskning |
auditd_logs.zip |
Granskade loggfiler |
ebpf_kernel_config.txt |
För närvarande inläst Linux Kernel-konfiguration |
ebpf_enabled_func.txt |
Lista över alla kernelfunktioner som för närvarande är aktiverade för spårning |
ebpf_syscalls.zip |
Information om systemanropsspårning |
ebpf_raw_syscalls.zip |
Spårningshändelser relaterade till råsystemanrop |
ebpf_maps_info.txt |
Information om id och storlek för eBPF-kartor |
syslog.zip |
Filerna under /var/log/syslog |
messages.zip |
Filerna under /var/log/messages |
conflicting_processes_information.txt |
Processer i konflikt med Defender för Endpoint |
exclusions.txt |
Lista över antivirusundantag |
definitions.txt |
Information om antivirusdefinition |
mde_directories.txt |
Lista över filer i Defender för Endpoint-kataloger |
disk_usage.txt |
Information om diskanvändning |
mde_user.txt |
Användarinformation för Defender för Endpoint |
mde_definitions_mount.txt |
Monteringspunkt för Defender för Endpoint-definitioner |
service_status.txt |
Tjänststatus för Defender för Endpoint |
service_file.txt |
Defender för Endpoint Service-fil |
hardware_info.txt |
Maskinvaruinformation |
mount.txt |
Information om monteringspunkt |
uname.txt |
Kernel-information |
memory.txt |
Information om systemminne |
meminfo.txt |
Detaljerad information om systemets minnesanvändning |
cpuinfo.txt |
CPU-information |
lsns_info.txt |
Information om Linux-namnområde |
lsof.txt |
Information om öppna filbeskrivningar i Defender för Endpoint (se anteckningen efter den här tabellen) |
sestatus.txt |
Information om öppna filbeskrivningar i Defender för Endpoint |
lsmod.txt |
Status för moduler i Linux-kerneln |
dmesg.txt |
Meddelanden från kernelringsbufferten |
kernel_lockdown.txt |
kernel lockdown Info |
rtp_statistics.txt |
Statistik för Defender för Endpoint Real Time Protection (RTP) (Presentera endast när Defender för Endpoint är installerat) |
libc_info.txt |
libc-biblioteksinformation |
uptime_info.txt |
Tid sedan den senaste omstarten |
last_info.txt |
Lista över senast inloggade användare |
locale_info.txt |
Visa aktuell nationella inställningar |
tmp_files_owned_by_mdatp.txt |
/tmp-filer som ägs av group:mdatp (Presentera endast när Defender för Endpoint är installerat) |
mdatp_config.txt |
Alla Defender för Endpoint-konfigurationer (Presentera endast när Defender för Endpoint är installerat) |
mpenginedb.db mpenginedb.db-wal mpenginedb.db-shm |
Antivirusdefinitionsfil (Presentera endast när Defender för Endpoint är installerat) |
iptables_rules.txt |
Regler för Linux-iptables |
network_info.txt |
Nätverksinformation |
sysctl_info.txt |
information om kernelinställningar |
hostname_diagnostics.txt |
Diagnostikinformation för värdnamn |
mde_event_statistics.txt |
Händelsestatistik för Defender för Endpoint (Presentera endast när Defender för Endpoint är installerat) |
mde_ebpf_statistics.txt |
Defender för Endpoint eBPF-statistik (Presentera endast när Defender för Endpoint är installerat) |
kernel_logs.zip |
Kernelloggar |
mdc_log.zip |
Microsoft Defender för molnloggar |
netext_config.txt |
|
threat_list.txt |
Lista över hot som identifierats av Defender för Endpoint (Presentera endast när Defender för Endpoint är installerat) |
top_output.txt |
Process som körs på datorn när verktyget kördes |
top_summary.txt |
Analys av minnes- och CPU-användning av processen som körs |
Positionsargument
Samla in prestandainformation
Samla in omfattande spårning av datorprestanda för Defender för Endpoint-processer för analys av ett prestandascenario som kan återskapas på begäran.
-h, --help show this help message and exit
--frequency FREQUENCY
profile at this frequency
--length LENGTH length of time to collect (in seconds)
Användningsexempel: sudo ./MDESupportTool performance --frequency 500
De filer som genereras när du använder det här läget:
Fil | Anmärkningar |
---|---|
perf_benchmark.tar.gz |
Defender för Endpoint bearbetar prestandadata |
Obs!
Filerna som motsvarar diagnostikläget genereras också.
Tar-filerna innehåller filer i formatet <pid of a MDE process>.data
.
Datafilen kan läsas med kommandot :
perf report -i <pid>.data
Köra anslutningstest
Det här läget testar om de molnresurser som krävs av Defender för Endpoint kan nås eller inte.
-h, --help show this help message and exit
-o ONBOARDING_SCRIPT, --onboarding-script ONBOARDING_SCRIPT
Path to onboarding script
-g GEO, --geo GEO Geo string to test <US|UK|EU|AU|CH|IN>
Användningsexempel: sudo ./MDESupportTool connectivitytest -o ~/MicrosoftDefenderATPOnboardingLinuxServer.py
Resultatet skrivs ut på skärmen.
Samla in olika installations-/registreringsrapporter
Det här läget samlar in installationsrelaterad information som distributionsinformation, systemkrav osv.
-h, --help show this help message and exit
-d, --distro Check for distro support
-a, --all Run all checks
Användningsexempel: sudo ./MDESupportTool installation --all
En enda rapport installation_report.json
genereras. Nycklarna i filen är som:
Tangent | Anmärkningar |
---|---|
agent_version | Version av Defender för Endpoint installerad |
onboarding_status | Registrerings- och ringinformationen |
Använda OS-spårning (endast för macOS)
Använd operativsystemets spårningsanläggningar för att registrera prestandaspårningar för Defender för Endpoint.
Obs!
Den här funktionen finns endast i Python-lösningen.
-h, --help show this help message and exit
--length LENGTH Length of time to record the trace (in seconds).
--mask MASK Mask to select with event to trace. Defaults to all
När du kör det här kommandot för första gången installeras en profilkonfiguration.
Mer information om hur du godkänner profilinstallation finns i Apples supportguide.
Användningsexempel ./mde_support_tool.sh trace --length 5
Exkludera läge
Lägg till undantag för gransknings-d-övervakning.
Obs!
Den här funktionen finns endast för Linux.
-h, --help show this help message and exit
-e <executable>, --exe <executable>
exclude by executable name, i.e: bash
-p <process id>, --pid <process id>
exclude by process id, i.e: 911
-d <directory>, --dir <directory>
exclude by target path, i.e: /var/foo/bar
-x <executable> <directory>, --exe_dir <executable> <directory>
exclude by executable path and target path, i.e: /bin/bash /var/foo/bar
-q <q_size>, --queue <q_size>
set dispatcher q_depth size
-r, --remove remove exclusion file
-s, --stat get statistics about common executables
-l, --list list auditd rules
-o, --override Override the existing auditd exclusion rules file for mdatp
-c <syscall number>, --syscall <syscall number>
exclude all process of the given syscall
Användningsexempel: sudo ./MDESupportTool exclude -d /var/foo/bar
AuditD-hastighetsbegränsning
Syntax som kan användas för att begränsa antalet händelser som rapporteras av plugin-programmet auditD. Det här alternativet anger hastighetsbegränsningen globalt för AuditD, vilket orsakar en minskning av alla granskningshändelser. När begränsningen är aktiverad begränsas antalet granskade händelser till 2 500 händelser per sekund. Det här alternativet kan användas i fall där vi ser hög CPU-användning från AuditD-sidan.
Obs!
Den här funktionen finns endast för Linux.
-h, --help show this help message and exit
-e <true/false>, --enable <true/false> enable/disable the rate limit with default values
Användningsexempel: sudo ./mde_support_tool.sh ratelimit -e true
Obs!
Den här funktionen bör användas noggrant eftersom begränsar antalet händelser som rapporteras av det granskade undersystemet som helhet. Detta kan också minska antalet händelser för andra prenumeranter.
AuditD hoppar över felaktiga regler
Med det här alternativet kan du hoppa över de felaktiga regler som lagts till i den granskade regelfilen när du läser in dem. Med det här alternativet kan det granskade undersystemet fortsätta läsa in regler även om det finns en felaktig regel. Det här alternativet sammanfattar resultatet av inläsningen av reglerna. I bakgrunden kör det här alternativet auditctl med -c
alternativet .
Obs!
Den här funktionen är endast tillgänglig i Linux.
-h, --help show this help message and exit
-e <true/false>, --enable <true/false> enable/disable the option to skip the faulty rules. In case no argumanet is passed, the option will be true by default.
Användningsexempel: sudo ./mde_support_tool.sh skipfaultyrules -e true
Obs!
Den här funktionen hoppar över felaktiga regler. Felaktiga regler måste identifieras och åtgärdas ytterligare.
Tips
Vill du veta mer? Engage med Microsofts säkerhetscommunity i vår Tech Community: Microsoft Defender för Endpoint Tech Community.