You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: defender-endpoint/run-analyzer-linux.md
+30-30Lines changed: 30 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,15 +1,15 @@
1
1
---
2
2
title: Run the client analyzer on Linux
3
3
description: Run the Defender for Endpoint client analyzer on Linux
4
-
author: denisebmsft
5
-
ms.author: deniseb
4
+
author: emmwalshh
5
+
ms.author: ewalsh
6
6
manager: deniseb
7
7
ms.reviewer: yongrhee
8
8
ms.service: defender-endpoint
9
9
ms.subservice: linux
10
10
ms.localizationpriority: medium
11
11
ms.topic: troubleshooting-general
12
-
ms.date: 01/08/2024
12
+
ms.date: 02/24/2025
13
13
ms.custom: partner-contribution
14
14
ms.collection:
15
15
- m365-security
@@ -28,46 +28,46 @@ f1.keywords: NOCSH
28
28
29
29
> Want to experience Defender for Endpoint? [Sign up for a free trial.](https://go.microsoft.com/fwlink/p/?linkid=2225630)
30
30
31
-
If you're experiencing reliability or device health issues with Defender for Endpoint on Linux, and you contact support, you might be asked to provide the output package of the Microsoft Defender for Endpoint Client Analyzer tool. This article describes how to use the client analyzer tool locally on the device or together with live response. In either case, you can use a Python-based solution or a binary version that has no external Python dependency.
31
+
If you have issues with Microsoft Defender for Endpoint on Linux and need support, you might be asked to provide the output from the Client Analyzer tool. This article explains how to use the tool on your device or with live response. You can use either a Python-based solution or a binary version that doesn't need Python.
32
32
33
33
34
34
## Running the binary version of the client analyzer
35
35
36
-
1. Download the [XMDE Client Analyzer Binary](https://aka.ms/XMDEClientAnalyzerBinary) tool to Linux machine you need to investigate. If you're using a terminal, download the tool by entering the following command:
36
+
1. Download the [XMDE Client Analyzer Binary](https://aka.ms/XMDEClientAnalyzerBinary) tool to the Linux machine that you're to investigating. If you're using a terminal, download the tool by entering the following command:
- **SupportToolLinuxBinary.zip**: For all Linux devices
63
63
- **SupportToolMacOSBinary.zip**: For Mac devices
64
64
65
-
5. Unzip `SupportToolLinuxBinary.zip` file.
65
+
6. Unzip `SupportToolLinuxBinary.zip` file.
66
66
67
67
```bash
68
68
unzip -q SupportToolLinuxBinary.zip
69
69
```
70
-
6. Run the tool as _root_ to generate diagnostic package:
70
+
7. Run the tool as _root_ to generate diagnostic package:
71
71
72
72
```bash
73
73
sudo ./MDESupportTool -d
@@ -76,14 +76,14 @@ If you're experiencing reliability or device health issues with Defender for End
76
76
## Running the Python-based client analyzer
77
77
78
78
> [!NOTE]
79
-
> - The analyzer depends on few extra PIP packages (`decorator`, `sh`, `distro`, `lxml`, and `psutil`) which are installed in the operating system when in root to produce the result output. If not installed, the analyzer attempts to fetch it from the [official repository for Python packages](https://pypi.org/search/?q=lxml).
79
+
> - The analyzer depends on a few extra PIP packages (`decorator`, `sh`, `distro`, `lxml`, and `psutil`) which are installed in the operating system when in root to produce the result output. If not installed, the analyzer attempts to fetch it from the [official repository for Python packages](https://pypi.org/search/?q=lxml).
80
80
> - In addition, the tool currently requires Python version 3 or later to be installed on your device.
81
81
> - If your device is behind a proxy, then you can pass the proxy server as an environment variable to the `mde_support_tool.sh` script. For example: `https_proxy=https://myproxy.contoso.com:8080 ./mde_support_tool.sh"`.
82
82
83
83
> [!WARNING]
84
-
> Running the Python-based client analyzer requires the installation of PIP packages which could cause some issues in your environment. To avoid issues from occurring, it's recommended that you install the packages into a user PIP environment.
84
+
> Running the Python-based client analyzer requires the installation of PIP packages which could cause some issues in your environment. To avoid issues from occurring, we recommend that you install the packages into a user PIP environment.
85
85
86
-
1. Download the [XMDE Client Analyzer](https://aka.ms/XMDEClientAnalyzer) tool on Linux machine you need to investigate. If you're using a terminal, download the tool by entering the following command:
86
+
1. Download the [XMDE Client Analyzer](https://aka.ms/XMDEClientAnalyzer) tool on the Linux machine you need to investigate. If you're using a terminal, download the tool by entering the following command:
@@ -119,7 +119,7 @@ If you're experiencing reliability or device health issues with Defender for End
119
119
./mde_support_tool.sh
120
120
```
121
121
122
-
7. To collect diagnostic package and generate the result archive file, run again as root.
122
+
7. To collect the diagnostic package and generate the result archive file, run again as root.
123
123
124
124
```bash
125
125
sudo ./mde_support_tool.sh -d
@@ -147,7 +147,7 @@ positional arguments:
147
147
analysis of a performance scenario that can be
148
148
reproduced on demand
149
149
installation Collect different installation/onboarding reports
150
-
exclude Exclude specific process(es) from audit-d monitoring.
150
+
exclude Exclude specific processes from audit-d monitoring.
151
151
ratelimit Set the rate limit for auditd events. Rate limit will
152
152
update the limits for auditd events for all the
153
153
applications using auditd, which could impact
@@ -190,7 +190,7 @@ optional arguments:
190
190
### Diagnostics mode
191
191
192
192
Diagnostics mode is used to collect extensive set of machine information, such as memory, disk, MDATP logs, etc.
193
-
This set of files give us primary set of information required to debug any issue related to Defender For Endpoint.
193
+
This set of files gives the primary set of information required to debug any issue related to Defender For Endpoint.
194
194
195
195
The options supported are as follows:
196
196
@@ -225,7 +225,7 @@ optional arguments:
225
225
Usage example: `sudo ./MDESupportTool -d`
226
226
227
227
> [!NOTE]
228
-
> The log level autoreset feature is available only on agent version 101.24052.0002 or above.
228
+
> The log level autoreset feature is available only in agent version 101.24052.0002 or above.
229
229
230
230
The files generated when using this mode are summarized in the following table:
231
231
@@ -245,7 +245,7 @@ The files generated when using this mode are summarized in the following table:
245
245
| `ebpf_enabled_func.txt` | List of all the kernel functions that are currently enabled for tracing |
246
246
| `ebpf_syscalls.zip` | Information about system call tracing |
247
247
| `ebpf_raw_syscalls.zip` | Tracing events related to raw system calls |
248
-
|`ebpf_maps_info.txt`| eBPF maps'id and size info |
248
+
| `ebpf_maps_info.txt` | eBPF maps'ID and size info |
249
249
|`syslog.zip`| The files under /var/log/syslog |
250
250
|`messages.zip`| The files under /var/log/messages |
251
251
|`conflicting_processes_information.txt`| Defender for Endpoint Conflicting Processes |
@@ -274,7 +274,7 @@ The files generated when using this mode are summarized in the following table:
274
274
| `uptime_info.txt` | Time since last restart |
275
275
| `last_info.txt` | Listing of last logged in users |
276
276
| `locale_info.txt` | Show current locale |
277
-
|`tmp_files_owned_by_mdatp.txt`| /tmp files owned by group:mdatp <br/>(Present only when Defender for Endpoint is installed)|
277
+
| `tmp_files_owned_by_mdatp.txt` | /tmp files owned by group:mdatp <br/>(Present only when Defender for Endpoint is installed) |
278
278
| `mdatp_config.txt` | All the Defender for Endpoint configurations <br/>(Present only when Defender for Endpoint is installed) |
279
279
| `mpenginedb.db`<br/>`mpenginedb.db-wal`<br/> `mpenginedb.db-shm` | Antivirus definitions file <br/>(Present only when Defender for Endpoint is installed) |
280
280
| `iptables_rules.txt` | Linux iptables rules |
@@ -290,7 +290,7 @@ The files generated when using this mode are summarized in the following table:
290
290
| `top_output.txt `| Process running in the machine when the tool was run |
291
291
| `top_summary.txt` | Memory and CPU usage analytics of the process running |
292
292
293
-
### Optional argumets for Client Analyzer
293
+
### Optional arguments for Client Analyzer
294
294
Client Analyzer provides the following optional arguments for extra data collection:
This option sets the rate limit globally forAuditD causing a dropin all the audit events. When the limiter is enabled the number of auditd events are limited to 2500 events/sec. This option can be used in cases where we see high CPU usage from AuditD side.
402
+
This option sets the rate limit globally for AuditD causing a drop in all the audit events. When the limiter is enabled, the auditd events are limited to 2500 events/sec. This option can be used in cases where we see high CPU usage from AuditD side.
> This functionality should be carefully used as it limits the number of events being reported by the auditd subsystem as a whole. This could reduce the number of events for other subscribers as well.
417
+
> This functionality should be carefully used as it limits the number of events the auditd subsystem reports as a whole. This could reduce the number of events for other subscribers as well.
> This functionality skips faulty rules. Faulty rules must be further identified and fixed.
436
+
> This functionality skips the faulty rules. Faulty rules must be further identified and fixed.
437
437
438
438
439
439
## Use live response in Defender for Endpoint to collect support logs
@@ -444,7 +444,7 @@ The XMDE Client Analyzer tool can be downloaded as a [binary](https://aka.ms/XMD
444
444
- For execution, the `acl` package is required.
445
445
446
446
> [!IMPORTANT]
447
-
> Window uses the Carriage Return and Line Feed invisible characters to represent the end of one line and beginning of a new line in a file, but Linux systems uses only the Line Feed invisible character at the end of its file lines. When using the following scripts, if done on Windows, this difference can result in errors and failures of the scripts to run. A potential solution to this is to utilize the Windows Subsystem for Linux and the `dos2unix` package to reformat the script so it aligns with the Unix and Linux format standard.
447
+
> Window uses the Carriage Return and Line Feed invisible characters to represent the end of one line and beginning of a new line in a file, but Linux systems uses only the Line Feed invisible character at the end of its file lines. When you use the following scripts, ifdone on Windows, this difference can result in errors and failures of the scripts to run. A potential solution to this is to utilize the Windows Subsystem for Linux and the `dos2unix` package to reformat the script so it aligns with the Unix and Linux format standard.
448
448
449
449
### Install the XMDE Client Analyzer
450
450
@@ -456,7 +456,7 @@ Download and extract the XMDE Client Analyzer. You can use either the binary or
456
456
Due to the limited commands available in live response, the steps detailed must be executed in a bash script. By splitting the installation and execution portion of these commands, it's possible to run the install script once, and run the execution script multiple times.
457
457
458
458
> [!IMPORTANT]
459
-
> The example scripts assume the machine has direct internet access and can retrieve the XMDE Client Analyzer from Microsoft. If the machine does not have direct internet access, then the installation scripts must be updated to fetch the XMDE Client Analyzer from a location the machines can access successfully.
459
+
> The example scripts assume the machine has direct internet access and can retrieve the XMDE Client Analyzer from Microsoft. If the machine doesn't have direct internet access, then the installation scripts must be updated to fetch the XMDE Client Analyzer from a location the machines can access successfully.
460
460
461
461
#### Binary client analyzer install script
462
462
@@ -533,7 +533,7 @@ The following script performs the first six steps of the [Running the Python ver
533
533
Live response doesn't support running the XMDE Client Analyzer or Python directly, so an execution script is necessary.
534
534
535
535
> [!IMPORTANT]
536
-
> The following scripts assume the XMDE Client Analyzer was installed using the same locations from the scripts mentioned earlier. If your organization has chosen to install the scripts into a different location, then the scripts must be updated to align with your organization's chosen installation location.
536
+
> The following scripts assume the XMDE Client Analyzer was installed using the same locations from the scripts mentioned earlier. If your organization chooses to install the scripts into a different location, then the scripts must be updated to align with your organization's chosen installation location.
537
537
538
538
#### Script to execute the binary client analyzer
539
539
@@ -572,7 +572,7 @@ The Python version of the client analyzer accepts command line parameters to per
572
572
#### Run the client analyzer script
573
573
574
574
> [!NOTE]
575
-
> If you have an active live response session you can skip Step 1.
575
+
> If you have an active live response session, you can skip Step 1.
576
576
577
577
1. Initiate a [Live Response session](live-response.md#initiate-a-live-response-session-on-a-device) on the machine you want to investigate.
0 commit comments