Resolver problemas de desempenho de Microsoft Defender para Ponto de Extremidade no Linux
Aplica-se a:
- Servidor do Microsoft Defender para Ponto de Extremidade.
- Microsoft Defender para Servidores
Deseja experimentar o Defender para Ponto de Extremidade? Inscreva-se para uma avaliação gratuita.
Este artigo descreve como reduzir os problemas de desempenho relacionados com o Defender para Endpoint no Linux. Estão disponíveis ferramentas de diagnóstico para o ajudar a compreender e mitigar a escassez de recursos e processos existentes que estão a afetar o desempenho. Estas ferramentas de diagnóstico também podem ser utilizadas para melhorar a visibilidade no portal do Microsoft Defender. Os estrangulamentos num ou mais subsistemas de hardware causam principalmente problemas de desempenho, consoante o perfil de utilização de recursos no sistema. Por vezes, as aplicações são sensíveis aos recursos de E/S do disco e podem precisar de mais capacidade de CPU e, por vezes, algumas configurações não são sustentáveis e podem acionar demasiados novos processos e abrir demasiados descritores de ficheiros.
Consoante as aplicações que está a executar e as características do dispositivo, poderá ter um desempenho inferior ao otimizar a execução do Defender para Endpoint no Linux. Em particular, as aplicações ou processos de sistema que acedem a muitos recursos, como CPU, Disco e Memória num curto período de tempo, podem levar a problemas de desempenho no Defender para Endpoint no Linux.
Aviso
Antes de começar, certifique-se de que outros produtos de segurança não estão atualmente em execução no dispositivo. Vários produtos de segurança podem entrar em conflito e afetar o desempenho do anfitrião.
Existem três formas distintas de resolver problemas de processos e diretórios ruidosos com as Ferramentas de diagnóstico do Microsoft Defender para Ponto de Extremidade no Linux:
- Utilizar estatísticas de proteção em tempo real
- Utilizar Origens de Eventos Frequentes
- Utilizar estatísticas de eBPF
Resolver problemas de desempenho com estatísticas de proteção em tempo real
Aplica-se a:
- Apenas problemas de desempenho relacionados com o antivírus
A proteção em tempo real (RTP) é uma funcionalidade do Defender para Endpoint no Linux que monitoriza e protege continuamente o seu dispositivo contra ameaças. Consiste em monitorização de ficheiros e processos e outras heurísticas.
Os passos seguintes podem ser utilizados para resolver e mitigar estes problemas:
Desative a proteção em tempo real com um dos seguintes métodos e observe se o desempenho melhora. Esta abordagem ajuda a restringir se o Defender para Endpoint no Linux está a contribuir para os problemas de desempenho. Se o seu dispositivo não for gerido pela sua organização, a proteção em tempo real pode ser desativada a partir da linha de comandos:
mdatp config real-time-protection --value disabled
Configuration property updated
Se a sua organização gerir o seu dispositivo, o administrador pode desativar a proteção em tempo real com as instruções em Definir preferências do Defender para Endpoint no Linux.
Observação
Se o problema de desempenho persistir enquanto a proteção em tempo real estiver desativada, a origem do problema também poderá ser o componente de deteção e resposta de pontos finais (EDR). Neste caso, tem de adicionar exclusões globais do Antivírus e do EDR. Neste caso, siga os passos na secção Resolver problemas de desempenho com Origens de Eventos Frequentes.
Para localizar as aplicações que estão a acionar a maioria das análises, pode utilizar estatísticas em tempo real recolhidas pelo Defender para Endpoint no Linux.
Observação
Esta funcionalidade está disponível na versão 100.90.70 ou mais recente.
Esta funcionalidade está ativada por predefinição nos
Dogfood
canais eInsiderFast
. Se estiver a utilizar um canal de atualização diferente, esta funcionalidade pode ser ativada a partir da linha de comandos:mdatp config real-time-protection-statistics --value enabled
Esta funcionalidade requer a ativação da proteção em tempo real. Para marcar a status de proteção em tempo real, execute o seguinte comando:
mdatp health --field real_time_protection_enabled
Verifique se a
real_time_protection_enabled
entrada étrue
. Caso contrário, execute o seguinte comando para ativá-lo:mdatp config real-time-protection --value enabled
Configuration property updated
Para recolher estatísticas atuais, execute:
mdatp diagnostic real-time-protection-statistics --output json
Observação
Utilizar
--output json
(anote o traço duplo) garante que o formato de saída está pronto para análise.O resultado deste comando mostra todos os processos e a respetiva atividade de análise associada.
Escreva os seguintes comandos:
mdatp diagnostic real-time-protection-statistics --sort --top 4
O resultado é uma lista dos quatro principais contribuidores para problemas de desempenho. Por exemplo, o resultado do comando é algo semelhante ao seguinte:
===================================== 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 =====================================
Para melhorar o desempenho do Defender para Endpoint no Linux, localize aquele com o número mais alto abaixo da
Total files scanned
linha e adicione uma exclusão antivírus para o mesmo (avalie cuidadosamente se é seguro excluir). Para obter mais informações, veja Configurar e validar exclusões do Defender para Endpoint no Linux.Observação
A aplicação armazena estatísticas na memória e só controla a atividade dos ficheiros desde que foi iniciada e a proteção em tempo real foi ativada. Os processos que foram iniciados antes ou durante períodos em que a proteção em tempo real estava desativada não são contabilizados. Além disso, apenas são contados os eventos que acionaram análises.
Resolver problemas de desempenho com Origens de Eventos Frequentes
Aplica-se a:
- Problemas de desempenho em ficheiros e executáveis que estão a consumir a maioria dos ciclos de CPU em todo o sistema de ficheiros.
As origens de eventos frequentes são uma funcionalidade que permite aos clientes identificar que processo ou diretório é responsável pelo elevado consumo de recursos. Para investigar que processo/executável está a gerar mais ruído, siga estes passos.
Observação
Estes comandos requerem que tenha permissões de raiz. Certifique-se de que o sudo pode ser utilizado.
Primeiro, marcar o nível de registo no seu computador.
mdatp health --field log_level
Se não estiver em "depuração", terá de alterá-lo para um relatório detalhado sobre ficheiros frequentes/executáveis.
sudo mdatp log level set --level debug
Log level configured successfully
Para recolher estatísticas atuais (para ficheiros),
sudo mdatp diagnostic hot-event-sources files
O resultado é semelhante ao seguinte na consola (este é apenas um fragmento de toda a saída). Aqui, a primeira linha mostra a contagem (frequência de ocorrência) e a segunda mostra o caminho do ficheiro.
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
Este comando gera um relatório de origem de eventos frequente que é guardado na pasta local que pode ser investigado mais aprofundadamente. O resultado tem o seguinte aspeto no ficheiro json;
{
"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": ""
}
]
}
No exemplo, podemos ver que o ficheiro /mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5 gera mais atividade. Além disso, da mesma forma para os executáveis,
sudo mdatp diagnostic hot-event-sources executables
O resultado é semelhante ao seguinte na consola do .
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
Esta é a saída guardada no relatório de origem de eventos frequentes no 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": ""
}
]
}
Neste exemplo, após 18 s, o comando mostra que os executáveis; /usr/lib/postgresql/12/bin/psql e /usr/lib/postgresql/12/bin/postgres geram mais atividade.
Depois de concluir a investigação, pode alterar o nível de registo novamente para "informações".
sudo mdatp log level set --level info
Log level configured successfully
Para melhorar o desempenho do Defender para Endpoint no Linux, localize o caminho com o número mais alto na linha de contagem e adicione uma exclusão de processo global (se for executável) ou uma exclusão global de ficheiros/pastas (se for um ficheiro) para o mesmo (avalie cuidadosamente se é seguro excluir). Para obter mais informações, veja Configurar e validar exclusões do Defender para Endpoint no Linux.
Resolver problemas de desempenho com estatísticas de eBPF
Aplica-se a:
- Todos os eventos de processo/ficheiro, incluindo problemas de desempenho baseados em chamadas do sistema.
O comando de estatísticas do eBPF (filtro de pacotes de Berkeley expandido) fornece informações sobre o evento/processo principal que está a gerar mais eventos de ficheiro, juntamente com os respetivos IDs de syscall. Quando as chamadas de sistema estão a ser efetuadas a partir do sistema, é gerada uma elevada quantidade de carga de trabalho no seu sistema. As estatísticas eBPF podem ser utilizadas para identificar tais problemas.
Para recolher estatísticas atuais com estatísticas eBPF, execute:
mdatp diagnostic ebpf-statistics
O resultado é apresentado diretamente na consola e teria um aspeto semelhante ao seguinte (este é apenas um fragmento de toda a saída):
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
Este comando monitoriza o sistema durante 20 segundos e mostra os resultados. Aqui, o caminho do iniciador superior (postgresql/12/bin/psql) mostra o caminho do processo que gerou mais chamadas de sistema.
Para melhorar o desempenho do Defender para Endpoint no Linux, localize aquele com o mais alto count
da Top initiator path
linha e adicione uma exclusão de processo global para o mesmo (avalie cuidadosamente se é seguro excluir). Para obter mais informações, veja Configurar e validar exclusões do Defender para Endpoint no Linux.
Configurar Exclusões Globais para um melhor desempenho
Configure Microsoft Defender para Ponto de Extremidade no Linux com exclusões para os processos ou localizações do disco que contribuem para os problemas de desempenho. Para mais informações, confira Configurar e validar exclusões no Microsoft Defender para Ponto de Extremidade no Linux. Se ainda tiver problemas de desempenho, contacte o suporte para obter mais instruções e mitigação.
Confira também
Dica
Você deseja aprender mais? Engage com a comunidade de Segurança da Microsoft na nossa Comunidade Tecnológica: Microsoft Defender para Ponto de Extremidade Tech Community.