Implemente a segurança dos endpoints Microsoft Defender em dispositivos Linux usando a ferramenta de implementação Defender

A ferramenta de implementação do Defender fornece um processo de inclusão eficiente e amigável para Microsoft Defender para Endpoint em dispositivos Linux. Permite que os utilizadores instalem e integrem Microsoft Defender para Endpoint através de um único pacote que pode ser transferido a partir do portal Microsoft Defender. Isto elimina a necessidade de instalar o Defender utilizando comandos CLI ou scripts de instalação e, depois, em separado, integrar o dispositivo com o pacote de integração do portal.

A ferramenta defender-deployment suporta a inclusão manual e em massa através de ferramentas de terceiros, como o Chef, Ansible, Puppet e SaltStack. A ferramenta suporta vários parâmetros que pode utilizar para personalizar implementações de grande escala, o que permite ter instalações personalizadas em vários ambientes.

Pré-requisitos e requisitos de sistema

Antes de começar, consulte Pré-requisitos para Microsoft Defender para Endpoint no Linux para obter uma descrição dos pré-requisitos e requisitos de sistema. Além disso, os seguintes requisitos também têm de ser cumpridos:

  • Permitir ligação ao URL: msdefender.download.prss.microsoft.com. Antes de começar a implementação, certifique-se de que executa o teste de conectividade, que verifica se os URLs utilizados pelo Defender para Ponto Final estão acessíveis ou não.
  • O ponto final tem de ter o wget ou o curl instalados.

A ferramenta de implementação impõe o seguinte conjunto de verificações de pré-requisitos, que, se não forem cumpridas, abortarão o processo de implementação:

  • Memória do dispositivo: superior a 1 GB
  • Espaço disponível em disco no dispositivo: superior a 2 GB
  • Versão da biblioteca Glibc no dispositivo: mais recente do que a 2.17
  • Versão da compilação do Defender: Tem de ser suportada e não ter expirado. Para verificar a data de validade do produto, execute o comando -mdatp health.

Sugestão

Antes de executar a ferramenta de implementação para integrar o Defender no servidor Linux, recomenda-se que execute a ferramenta com a opção --pre-req para ajudar a identificar e corrigir eventuais problemas que possam afetar a implementação.

Implementação: guia passo a passo

  1. Transfira a ferramenta de implementação do Defender a partir do portal do Defender, seguindo os passos abaixo.

    1. Aceda a Definições>Pontos finais>Gestão de dispositivos>Integração.

    2. No menu suspenso do Passo 1, selecione Linux como sistema operativo.

    3. Em Transferir e aplicar pacotes ou ficheiros de integração, selecione o botão Transferir pacote na secção ferramenta de implementação do Defender.

    Nota

    Uma vez que este pacote instala e integra o agente, é um pacote específico do inquilino e não pode ser utilizado entre inquilinos.

    Captura de ecrã a mostrar o botão de transferência do pacote.

  2. Numa linha de comandos, extraia os conteúdos do arquivo:

    unzip GatewayLinuxDefenderDeploymentTool.zip
    
    Archive: GatewayLinuxDefenderDeploymentTool.zip
    inflating: defender_deployment_tool.sh
    
  3. Conceda permissões executáveis ao script.

    chmod +x defender_deployment_tool.sh
    
  4. Execute o script com o seguinte comando para instalar e integrar Microsoft Defender para Endpoint no ponto final.

    sudo bash defender_deployment_tool.sh
    

    Este comando instala a versão mais recente do agente a partir do canal de produção e integra o dispositivo no portal do Defender. O dispositivo pode demorar entre 5 a 20 minutos a aparecer no Inventário de Dispositivos.

    Nota

    Se tiver configurado um proxy ao nível do sistema para redirecionar o Defender para o tráfego do Ponto Final, certifique-se de que também configura o proxy com a ferramenta de implementação do Defender. Consulte a ajuda da linha de comandos (--ajuda) para obter as opções de proxy disponíveis.

  5. Pode personalizar ainda mais a implementação ao transmitir parâmetros para a ferramenta com base nos seus requisitos. Utilize a opção --help para ver todas as opções disponíveis:

     ./defender_deployment_tool.sh --help
    

    Captura de ecrã a mostrar a saída do comando de ajuda.

    A tabela seguinte fornece exemplos de comandos para cenários úteis.

    Cenário Comando
    Verifique se há pré-requisitos não cumpridos sudo ./defender_deployment_tool.sh --pre-req
    Executar o teste de conectividade sudo ./defender_deployment_tool.sh --connectivity-test
    Implementar numa localização personalizada sudo ./defender_deployment_tool.sh --install-path /usr/microsoft/
    Implementar a partir de um repositório de pacotes configurado localmente sudo ./defender_deployment_tool.sh --use-local-repo

    Esta opção não pode ser combinada com --channel ou --clean.
    Implementar a partir de um canal específico sudo ./defender_deployment_tool.sh --channel insiders-slow
    Instalar com um proxy sudo ./defender_deployment_tool.sh --http-proxy <http://username:password@proxy_host:proxy_port>
    Implementar uma versão específica do agente sudo ./defender_deployment_tool.sh --mdatp 101.25042.0003 --channel prod
    Atualizar para uma versão específica do agente sudo ./defender_deployment_tool.sh --upgrade --mdatp 101.24082.0004
    Reverter para uma versão específica do agente sudo ./defender_deployment_tool.sh --downgrade --mdatp 101.24082.0004
    Desinstalar o Defender sudo ./defender_deployment_tool.sh --removePara obter mais informações, consulte Exclusão ou desinstalação de Microsoft Defender para Endpoint no Linux
    Integre apenas se o Defender já estiver instalado sudo ./defender_deployment_tool.sh --only-onboard
    Offboard Defender sudo ./defender_deployment_tool.sh --offboard MicrosoftDefenderATPOffboardingLinuxServer.py
    (Nota: antes de utilizar a opção --offboard, tem primeiro de transferir o script de desativação mais recente a partir do portal do Defender, em Sistema > Definições > Endpoints > Desativação). Para outros métodos de desassociação, consulte Desassociar ou desinstalar o Microsoft Defender para Endpoint no Linux.

Monitorizar o progresso da implementação no portal Microsoft Defender

À medida que a ferramenta de implementação do Defender é executada, envia um evento de progresso para o portal do Defender no início e no fim de cada etapa de implementação. Estes eventos permitem-lhe acompanhar o estado da implementação de todos os seus dispositivos sem iniciar sessão em cada um deles, e identificar a etapa em que uma implementação falhada parou.

Verifique o estado de integração de um dispositivo no inventário de dispositivos. Para verificar o estado de integração de toda a frota, utilize uma consulta de pesquisa avançada. Para ver o progresso passo a passo, consulte a linha temporal do dispositivo. Vai ao inventário de dispositivos, seleciona o dispositivo e depois seleciona Linha do Tempo.

Para filtrar eventos de implementação na linha temporal, introduza DefenderDeployment na caixa de pesquisa da linha temporal. Cada evento aparece como Defender deployment tool: <step> succeeded ou Defender deployment tool: <step> failed e inclui quaisquer detalhes adicionais que a ferramenta indique para esse passo. A captura de ecrã seguinte mostra uma instalação bem-sucedida.

Captura de ecrã da linha temporal do dispositivo filtrada para mostrar os eventos bem-sucedidos da ferramenta de implementação do Defender.

Linha temporal de implantação

Uma execução bem-sucedida de instalação e integração produz a seguinte sequência de eventos:

Order Passo (ActionName) Description
1 Start A ferramenta de implementação começa. O evento inclui a versão da ferramenta e a operação: instalar, atualizar, fazer downgrade, remover ou retirar do navio.
2 Baixar A ferramenta descarrega o script de instalação da Microsoft. Este passo é ignorado se fornecer um script pré-configurado com a opção --script.
3 Verificação de pré-requisitos A ferramenta valida os requisitos do sistema, como memória, espaço em disco, glibc e funcionalidades do kernel.
4 Instalação A ferramenta instala o pacote Microsoft Defender para Endpoint. O evento inclui a versão instalada do agente.
5 Inicialização do sensor O agente conclui a configuração inicial, e o sensor encontra-se licenciado e ativo.
6 Completamento de sequências A sequência completa de implantação é concluída. Este passo é sempre o último evento de uma corrida.

Uma execução de remoção, atualização ou desativação inclui apenas os passos aplicáveis. Se um passo falhar, a ferramenta envia um evento de falha para esse passo, juntamente com um código de saída e uma descrição de erro que explica o que correu mal.

Consultar o estado da implementação com o Advanced hunting

Para inspecionar os eventos de um dispositivo específico, execute a seguinte consulta em caça avançada. Substitui <DeviceId> pelo ID do dispositivo alvo. Para encontrar o ID do dispositivo, vá a Inventário de dispositivos ou execute mdatp health --field edr_device_id no dispositivo.

DeviceEvents
| where Timestamp > ago(1d)
| where ActionType == "DefenderDeploymentToolEvent"
| where DeviceId == "<DeviceId>"
| extend Details = parse_json(AdditionalFields)
| project
    Timestamp,
    DeviceName,
    Step = tostring(Details.ActionName),
    Succeeded = tobool(Details.IsSuccess),
    ExitCode = toint(Details.ExitCode),
    Data = tostring(Details.Data),
    ErrorDescription = tostring(Details.ErrorDescription)
| sort by Timestamp asc

Para obter um resumo do estado de implementação de todos os seus dispositivos, execute a seguinte consulta. Devolve o passo mais recente comunicado por cada dispositivo nos últimos 30 dias e classifica cada dispositivo como Integrado, Falha na integração ou ainda em processo de integração:

DeviceEvents
| where Timestamp > ago(30d)
| where ActionType == "DefenderDeploymentToolEvent"
| extend Details = parse_json(AdditionalFields)
| extend Step = tostring(Details.ActionName), Succeeded = tobool(Details.IsSuccess)
| summarize arg_max(Timestamp, DeviceName, Step, Succeeded) by DeviceId
| extend Status = case(
    Step == "Sequence completion" and Succeeded, "Onboarded",
    Step == "Sequence completion" and not(Succeeded), "Onboarding Failed",
    not(Succeeded), strcat("Failed at: ", Step),
    "Onboarding")
| project DeviceId, DeviceName, LastEvent = Timestamp, LastStep = Step, Status

Verificar o funcionamento do AV/EDR

  1. No portal Microsoft Defender, abra o inventário de dispositivos. O dispositivo pode demorar entre 5 a 20 minutos a aparecer no portal.

  2. Execute um teste de deteção de antivírus para verificar se o dispositivo está corretamente integrado e a reportar ao serviço. Execute os seguintes passos no dispositivo recentemente integrado:

    1. Certifique-se de que a proteção em tempo real está ativada (indicada por um resultado verdadeiro da execução do seguinte comando):

      mdatp health --field real_time_protection_enabled
      

      Se não estiver ativado, execute o seguinte comando:

      mdatp config real-time-protection --value enabled
      
    2. Abra uma janela do Terminal e execute o seguinte comando para executar um teste de deteção:

      curl -o /tmp/eicar.com.txt https://secure.eicar.org/eicar.com.txt
      
    3. Pode executar mais testes de deteção em ficheiros zip com um dos seguintes comandos:

      curl -o /tmp/eicar_com.zip https://secure.eicar.org/eicar_com.zip
      curl -o /tmp/eicarcom2.zip https://secure.eicar.org/eicarcom2.zip
      
    4. Os ficheiros devem ser colocados em quarentena pelo Defender para Endpoint no Linux. Utilize o seguinte comando para listar todas as ameaças detetadas:

      mdatp threat list
      
  3. Execute um teste de deteção EDR e simule uma deteção para verificar se o dispositivo está corretamente integrado e a reportar ao serviço. Execute os seguintes passos no dispositivo recentemente integrado:

    1. Transfira e extraia o ficheiro de script para um servidor Linux integrado.

    2. Conceda permissões executáveis ao script:

      chmod +x mde_linux_edr_diy.sh
      
    3. Execute o seguinte comando:

      ./mde_linux_edr_diy.sh
      
    4. Após alguns minutos, deve ser gerada uma deteção no Microsoft Defender XDR.

    5. Verifique os detalhes do alerta, a linha cronológica do computador e execute os passos típicos de investigação.

Solucionar problemas de implantação

  1. Verifique os registos de erro de implementação:

    • /tmp/defender_deployment_tool.log regista a atividade da ferramenta de implantação.
    • /tmp/defender_deployment_tool_telemetry.logregista os eventos de progresso que a ferramenta envia para o portal do Microsoft Defender.
  2. Se estiver a ter problemas de conectividade, execute este comando para realizar um teste de conectividade:

    sudo ./defender_deployment_tool.sh --connectivity-test
    

    Pode demorar algum tempo a correr, pois faz verificações de todas as URLs necessárias pelo Defender e encontra problemas, se houver.

  3. Execute a consulta avançada de caça para o dispositivo e procure o evento mais recente onde Succeeded está false. O Step campo identifica o passo falhado, e os ErrorDescription campos e ExitCode explicam porquê:

    • Se a implementação falhar na etapa de download , o script de instalação não pôde ser descarregado. Verifique se o dispositivo tem curl ou wget instalado e se permite conectividade HTTPS de saída para os endpoints de transferência da Microsoft.

    • Se a implementação falhar na fase de verificação pré-requisito , o dispositivo não cumpre os requisitos mínimos do sistema. O ErrorDescription campo lista as verificações falhadas, separadas por |. As falhas não bloqueantes têm o prefixo (non_blocking) e não impedem a implementação.

    • Se a implementação falhar na etapa de Instalação , o gestor de pacotes não conseguiu instalar o agente. Causas comuns incluem um repositório de pacotes mal configurado, uma dependência em falta ou uma versão solicitada mdatp que não está disponível no canal selecionado.

    • Se a implementação falhar na etapa de inicialização do Sensor , o agente instalou mas não terminou a integração dentro do tempo previsto. Execute mdatp health no dispositivo e verifique os campos licensed, healthy e org_id.

    • Se os eventos de implementação não aparecerem no portal de um dispositivo, verifique /tmp/defender_deployment_tool_telemetry.log nesse dispositivo para confirmar se a ferramenta os enviou.

  4. Se isso não te ajudar a resolver o problema, tenta verificar os seguintes passos:

Como mudar entre canais após a implementação a partir de um canal

O Defender para Endpoint no Linux pode ser implementado a partir de um dos seguintes canais:

  • insiders-fast
  • insiders-slow
  • prod (produção)

Cada um destes canais corresponde a um Linux repositório de software. O canal determina o tipo e a frequência das atualizações que são oferecidas ao seu dispositivo. Os dispositivos em insiders-fast são os primeiros a receber atualizações e novas funcionalidades, seguidos mais tarde pelos dispositivos em insiders-slow e, por fim, pelos dispositivos em prod.

Por predefinição, a ferramenta de implementação configura o dispositivo para utilizar o canal prod. Pode utilizar as opções de configuração descritas neste documento para implementar a partir de um canal diferente.

Para pré-visualizar novas funcionalidades e fornecer feedback numa fase inicial, recomenda-se que configure alguns dispositivos na sua empresa para utilizarem insiders-fast ou insiders-slow. Se já tiver implementado o Defender para Endpoint no Linux a partir de um canal e quiser mudar para um canal diferente (de prod para insiders-fast, por exemplo), primeiro tem de remover o canal atual, depois eliminar o repositório de canal atual e, em seguida, instalar o Defender a partir do novo canal, conforme ilustrado no exemplo seguinte, em que o canal é alterado de insiders-fast para prod:

  1. Remova a versão de canal insiders-fast do Defender para Endpoint no Linux..

    sudo ./defender_deployment_tool.sh --remove --channel insiders-fast
    
  2. Elimine o Defender para Endpoint no repositório Linux insiders-fast.

    sudo ./defender_deployment_tool.sh --clean --channel insiders-fast
    
  3. Instale o Microsoft Defender para Endpoint no Linux utilizando o canal de produção.

    sudo ./defender_deployment_tool.sh --channel prod