Compartilhar via


Gestão avançada do recoletor de registos

Este artigo descreve como configurar opções avançadas para Defender para Aplicativos de Nuvem recoletores de registos da cloud Discovery.

Defender para Aplicativos de Nuvem cloud discovery continua a focar-se nos formatos de firewall base. As alterações aos registos que estão a ser reencaminhados ao nível da firewall podem não continuar a funcionar ou podem causar problemas com a análise. Se encontrar erros deste tipo, recomendamos que continue a utilizar o formato de firewall base ou utilize as opções com o recoletor de registos personalizado. Para obter mais informações, veja Utilizar um analisador de registos personalizado.

Este artigo descreve como modificar a configuração do docker de deteção de cloud Defender para Aplicativos de Nuvem.

Modificar a configuração de FTP do recoletor de registos

Utilize estes passos nas secções seguintes para modificar a configuração da sua Defender para Aplicativos de Nuvem Docker de deteção de cloud.

Verificar a versão do recoletor de registos

Para verificar a versão do recoletor de registos atualmente instalado no sistema, ligue-se ao anfitrião do recoletor de registos e execute:

cat /var/adallom/versions | grep columbus-

Alterar a palavra-passe de FTP

Este procedimento descreve como alterar a palavra-passe utilizada para aceder aos ficheiros do recoletor de registos:

  1. Ligue-se ao anfitrião do recoletor de registos e execute:

    docker exec -it <collector name> pure-pw passwd <ftp user>
    
  2. Introduza a sua nova palavra-passe e, em seguida, introduza-a novamente para confirmar.

  3. Execute o seguinte comando para aplicar a alteração:

    docker exec -it <collector name> pure-pw mkdb
    

Deverá conseguir ver os seguintes conteúdos:

  • run_logs
  • ssl_update
  • config.json

Personalizar ficheiros de certificado

Este procedimento descreve como personalizar os ficheiros de certificado utilizados para ligações seguras à instância do Docker de deteção de cloud.

  1. Abra um cliente FTP e ligue-se ao anfitrião do recoletor de registos.

  2. Navegue para o ssl_update diretório e carregue os novos ficheiros de certificado, incluindo os seguintes ficheiros:

    Tipo de recetor Arquivos necessários
    FTP - pure-ftpd.pem: inclui a chave e os dados do certificado
    Syslog - ca.pem: o certificado da autoridade de certificação que foi utilizado para assinar o certificado do cliente.
    - server-key.pem e server-cert.pem: o certificado e a chave do recoletor de registos

    As mensagens do Syslog são enviadas através de TLS para o recoletor de registos, o que requer autenticação TLS mútua, incluindo a autenticação dos certificados de cliente e de servidor.

    Os nomes de ficheiro são obrigatórios. Se algum dos ficheiros estiver em falta, a atualização falha.

  3. Numa janela de terminal, execute:

    docker exec -t <collector name> update_certs
    

    O resultado deve ser semelhante ao seguinte código:

    root@DockerPlayground:~# docker exec -t columbus update_certs
    rsyslog: stopped
    rsyslog: started
    ftpd: stopped
    ftpd: started
    root@DockerPlayground:~#
    
  4. Numa janela de terminal, execute:

    docker exec <collector name> chmod -R 700 /etc/ssl/private/
    

Ativar o recoletor de registos atrás de um proxy

Se estiver a executar atrás de um proxy, o recoletor de registos poderá ter problemas ao enviar dados para Defender para Aplicativos de Nuvem. Por exemplo, isto pode acontecer porque o recoletor de registos não confia na autoridade de certificados de raiz do proxy e não consegue ligar-se a Microsoft Defender para Aplicativos de Nuvem para obter a configuração ou carregar os registos recebidos.

Os seguintes procedimentos descrevem como ativar o recoletor de registos atrás de um proxy.

Dica

Também poderá querer alterar os certificados utilizados pelo recoletor de registos para syslog ou FTP ou resolve problemas de conectividade das firewalls e proxies para o recoletor de registos. Para obter mais informações, veja Modificar a configuração de FTP do recoletor de registos.

Configurar o recoletor de registos atrás de um proxy

Certifique-se de que executou os passos necessários para executar o Docker num computador Windows ou Linux e transferiu com êxito a imagem do Defender para Aplicativos de Nuvem Docker para o seu computador anfitrião.

Para obter mais informações, veja Configurar o carregamento automático de registos para relatórios contínuos.

Validar a criação do contentor do recoletor de registos do Docker

Verifique se o contentor foi criado e está em execução. Na shell, execute:

docker ps

Deverá ver algo semelhante ao seguinte resultado:

Captura de ecrã a mostrar o contentor do Docker em execução.

Copiar o certificado da AC de raiz do proxy para o contentor

A partir da máquina virtual, copie o certificado de AC para o contentor Defender para Aplicativos de Nuvem. No exemplo seguinte, o contentor tem o nome Ubuntu-LogCollector e o certificado de AC chama-se Proxy-CA.crt.

O comando seguinte copia o certificado para uma pasta no contentor em execução. Execute o comando no anfitrião Ubuntu:

docker cp Proxy-CA.crt Ubuntu-LogCollector:/var/adallom/ftp/discovery

Definir a configuração para funcionar com o certificado de AC

  1. Aceda ao contentor. Execute o seguinte comando para abrir o bash no contentor do recoletor de registos:

    docker exec -it Ubuntu-LogCollector /bin/bash
    
  2. A partir de uma janela de bash dentro do contentor, aceda à pasta Java jre . Para evitar um erro de caminho relacionado com a versão, utilize o seguinte comando:

    cd "$(find /opt/jdk/*/jre -name "bin" -printf '%h' -quit)"
    cd bin
    
  3. Importe o certificado de raiz que copiou anteriormente , da pasta de deteção para o Java KeyStore e defina uma palavra-passe.

    A palavra-passe predefinida é changeit. Para obter mais informações, consulte Alterar a palavra-passe do Java KeyStore.

    ./keytool --import --noprompt --trustcacerts --alias SelfSignedCert --file /var/adallom/ftp/discovery/Proxy-CA.crt --keystore ../lib/security/cacerts --storepass <password>
    
  4. Verifique se o certificado foi importado corretamente para o arquivo de chaves da AC. Execute o seguinte comando para procurar o alias que forneceu durante a importação (SelfSignedCert):

    ./keytool --list --keystore ../lib/security/cacerts | grep self
    

É apresentado o certificado de AC de proxy importado.

Restringir os endereços IP que enviam mensagens syslog para o recoletor de registos no Linux

Para proteger a imagem do Docker e garantir que apenas um endereço IP tem permissão para enviar as mensagens do syslog para o recoletor de registos, crie uma regra de tabela IP no computador anfitrião para permitir o tráfego de entrada e largue o tráfego que passa por portas específicas, como TCP/601 ou UDP/514, consoante a implementação.

O comando seguinte mostra um exemplo de como criar uma regra de tabela de IP que pode ser adicionada ao computador anfitrião. Esta regra de tabela permite que o endereço IP "1.2.3.4" se ligue ao contentor do recoletor de registos através da porta TCP 601 e remova todas as outras ligações provenientes de outros endereços IP através da mesma porta.

iptables -I DOCKER-USER \! --src 1.2.3.4 -m tcp -p tcp --dport 601 -j DROP

Definir o recoletor de registos para ser executado com a nova configuração

O contentor está agora pronto.

Execute o comando collector_config com o token de API que utilizou durante a criação do recoletor de registos. Por exemplo:

Captura de ecrã a mostrar a caixa de diálogo Criar recoletor de registos.

Quando executar o comando, especifique o seu próprio token de API, como collector_config abcd1234abcd1234abcd1234abcd1234 ${CONSOLE} ${COLLECTOR}

Por exemplo:

Captura de ecrã a mostrar um exemplo de atualização de configuração.

O recoletor de registos consegue agora comunicar com Defender para Aplicativos de Nuvem. Depois de enviar dados para Defender para Aplicativos de Nuvem, o status do recoletor de registos muda de Bom Estado de Funcionamento para Ligado. Por exemplo:

Captura de ecrã do status de carregamento.

Observação

Se tiver de atualizar a configuração do recoletor de registos, por exemplo, para adicionar ou remover uma origem de dados, normalmente tem de eliminar o contentor e executar os passos anteriores novamente.

Para evitar esta situação, pode executar novamente a ferramenta collector_config com o novo token de API gerado no portal do Defender para Aplicativos de Nuvem.

Alterar a palavra-passe do KeyStore java

  1. Pare o servidor Java KeyStore.

  2. Abra uma shell de bash dentro do contentor e aceda à pasta appdata/conf .

  3. Para alterar a palavra-passe do KeyStore do servidor, execute:

    keytool -storepasswd -new newStorePassword -keystore server.keystore
    -storepass changeit
    

    A palavra-passe do servidor predefinida é changeit.

  4. Para alterar a palavra-passe do certificado, execute:

    keytool -keypasswd -alias server -keypass changeit -new newKeyPassword -keystore server.keystore -storepass newStorePassword
    

    O alias de servidor predefinido é servidor.

  5. Num editor de texto, abra o ficheiro server-install\conf\server\secured-installed.properties . Adicione as seguintes linhas de código e, em seguida, guarde as alterações:

    1. Especifique a nova palavra-passe do Java KeyStore para o servidor: server.keystore.password=newStorePassword
    2. Especifique a nova Palavra-passe do certificado para o servidor: server.key.password=newKeyPassword
  6. Inicie o servidor.

Mover o recoletor de registos para uma partição de dados diferente no Linux

Muitas empresas têm o requisito de mover dados para uma partição separada. Este procedimento descreve como mover as imagens do recoletor de registos do Defender para Aplicativos de Nuvem Docker para uma partição de dados no seu anfitrião Linux.

Este procedimento descreve como mover dados para uma partição chamada arquivo de dados e pressupõe que já montou a partição. Por exemplo:

Lista de partições do Linux.

Adicionar e configurar uma nova partição no seu anfitrião Linux não está no âmbito deste guia.

Para mover o recoletor de registos para uma partição diferente:

  1. Pare o serviço Docker. Executar:

    service docker stop
    
  2. Mova os dados do recoletor de registos para a nova partição. Executar:

    mv /var/lib/docker /datastore/docker
    
  3. Remova o diretório de armazenamento do Docker antigo (/var/lib/docker) e crie uma ligação simbólica para o novo diretório (/datastore/docker). Executar:

    rm -rf /var/lib/docker && ln -s /datastore/docker /var/lib/
    
  4. Inicie o serviço Docker. Executar:

    service docker start
    
  5. Opcionalmente, verifique a status do recoletor de registos. Executar:

    docker ps
    

Inspecionar a utilização do disco do recoletor de registos no Linux

Este procedimento descreve como rever a utilização e a localização do disco do recoletor de registos.

  1. Identifique o caminho para o diretório onde os dados do recoletor de registos estão armazenados. Executar:

    docker inspect <collector_name> | grep WorkDir
    

    Por exemplo:

    Captura de ecrã a mostrar como identificar o diretório do recoletor de registos.

  2. Obtenha o tamanho no disco do recoletor de registos com o caminho identificado sem o sufixo "/work". Executar:

    du -sh /var/lib/docker/overlay2/<log_collector_id>/
    

    Captura de ecrã a mostrar como identificar o tamanho do recoletor de registos no disco.

    Observação

    Se apenas precisar de saber o tamanho no disco, pode utilizar o seguinte comando: docker ps -s

Mover o recoletor de registos para um anfitrião acessível

Em ambientes regulados, o acesso aos Hubs do Docker onde a imagem do recoletor de registos está alojada pode ser bloqueado. Isto impede Defender para Aplicativos de Nuvem de importar os dados do recoletor de registos e pode ser resolvido ao mover a imagem do recoletor de registos para um anfitrião acessível.

Este procedimento descreve como transferir a imagem do recoletor de registos através de um computador que tenha acesso a Docker Hub e importá-la para o anfitrião de destino.

A imagem transferida pode ser importada no seu repositório privado ou diretamente no seu anfitrião. Este procedimento descreve como transferir a imagem do recoletor de registos para o computador Windows e, em seguida, utilizar o WinSCP para mover o recoletor de registos para o anfitrião de destino.

Pré-requisitos

  1. Certifique-se de que tem o Docker instalado no seu anfitrião. Por exemplo, utilize uma das seguintes transferências:

  2. Após a transferência, utilize o guia de instalação offline do Docker para instalar o seu sistema operativo.

    Inicie o processo ao exportar a imagem do recoletor de registos e, em seguida, importe a imagem para o anfitrião de destino.

Exportar a imagem do recoletor de registos do Docker Hub

Os seguintes procedimentos descrevem como exportar a imagem do recoletor de registos com o Linux ou o Windows.

Exportar a imagem no Linux

  1. Num computador Linux com acesso ao Docker Hub, execute o seguinte comando para instalar o Docker e transferir a imagem do recoletor de registos.

    curl -o /tmp/MCASInstallDocker.sh https://adaprodconsole.blob.core.windows.net/public-files/MCASInstallDocker.sh && chmod +x /tmp/MCASInstallDocker.sh; /tmp/MCASInstallDocker.sh
    
  2. Exportar a imagem do recoletor de registos. Executar:

    docker save --output /tmp/mcasLC.targ mcr.microsoft.com/mcas/logcollector
    chmod +r /tmp/mcasLC.tar
    

    Importante

    Certifique-se de que utiliza o parâmetro de saída para escrever num ficheiro em vez de STDOUT.

  3. Transfira a imagem do recoletor de registos para o seu computador C:\mcasLogCollector\ Windows com o WinSCP. Por exemplo:

    Captura de ecrã a mostrar a transferência do recoletor de registos para um computador Windows.

Exportar a imagem no Windows

  1. Num computador Windows 10 que tenha acesso ao Docker Hub, instale o Docker Desktop.

  2. Transfira a imagem do recoletor de registos. Executar:

    docker login -u caslogcollector -p C0llector3nthusiast
    docker pull mcr.microsoft.com/mcas/logcollector
    
  3. Exportar a imagem do recoletor de registos. Executar:

    docker save --output C:\mcasLogCollector\mcasLC.targ mcr.microsoft.com/mcas/logcollector
    

    Importante

    Certifique-se de que utiliza o parâmetro de saída para escrever num ficheiro em vez de STDOUT.

Importar e carregar a imagem do recoletor de registos para o anfitrião de destino

Este procedimento descreve como transferir a imagem exportada para o anfitrião de destino.

  1. Carregue a imagem do recoletor de registos para o anfitrião de destino em /tmp/. Por exemplo:

    Captura de ecrã a mostrar o carregamento do recoletor de registos para o anfitrião de destino.

  2. No anfitrião de destino, importe a imagem do recoletor de registos para o repositório de imagens do Docker. Executar:

    docker load --input /tmp/mcasLC.tar
    

    Por exemplo:

    Captura de ecrã a mostrar a importação da imagem do recoletor de registos para o repositório do Docker.

  3. Opcionalmente, verifique se a importação foi concluída com êxito. Executar:

    docker image ls
    

    Por exemplo:

    Captura de ecrã a mostrar a verificação de que a importação do recoletor de registos foi concluída com êxito.

    Agora, pode continuar a criar o recoletor de registos com a imagem do anfitrião de destino.

Definir portas personalizadas para recetores Syslog e FTP para recoletores de registos no Linux

Algumas organizações têm um requisito para definir portas personalizadas para serviços Syslog e FTP.

Quando adiciona uma origem de dados, Defender para Aplicativos de Nuvem recoletores de registos utilizam números de porta específicos para escutar registos de tráfego de uma ou mais origens de dados.

As seguintes listas de tabelas das portas de escuta predefinidas para recetores:

Tipo de recetor Portas
Syslog * UDP/514 - UDP/51x
* TCP/601 - TCP/60x
FTP * TCP/21

Utilize os seguintes passos para definir portas personalizadas:

  1. No Portal do Microsoft Defender, selecione Definições. Em seguida, selecione Aplicações na Cloud.

  2. Em Cloud Discovery, selecione Carregamento automático de registos. Em seguida, selecione o separador Recoletores de registos .

  3. No separador Recoletores de registos , adicione ou edite um recoletor de registos e, depois de atualizar as origens de dados, copie o comando executar a partir da caixa de diálogo. Por exemplo:

    Comando Copiar execução do assistente do recoletor de registos.

    Se for utilizado conforme fornecido, o comando fornecido pelo assistente configura o recoletor de registos para utilizar as portas 514/udp e 515/udp. Por exemplo:

    (echo <credentials>) | docker run --name LogCollector1 -p 514:514/udp -p 515:515/udp -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='10.0.0.100'" -e "PROXY=" -e "SYSLOG=true" -e "CONSOLE=machine.us2.portal.cloudappsecurity.com" -e "COLLECTOR=LogCollector1" --security-opt apparmor:unconfined --cap-add=SYS_ADMIN --restart unless-stopped -a stdin -i mcr.microsoft.com/mcas/logcollector starter
    

    Por exemplo:

    Captura de ecrã do comando executado a partir do assistente do recoletor de registos.

  4. Antes de utilizar o comando no computador anfitrião, modifique o comando para utilizar as portas personalizadas. Por exemplo, para configurar o recoletor de registos para utilizar as portas UDP 414 e 415, altere o comando da seguinte forma:

    (echo <credentials>) | docker run --name LogCollector1 -p 414:514/udp -p 415:515/udp -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='10.0.0.100'" -e "PROXY=" -e "SYSLOG=true" -e "CONSOLE=machine.us2.portal.cloudappsecurity.com" -e "COLLECTOR=LogCollector1" --security-opt apparmor:unconfined --cap-add=SYS_ADMIN --restart unless-stopped -a stdin -i mcr.microsoft.com/mcas/logcollector starter
    

    Por exemplo:

    Captura de ecrã a mostrar um comando de execução personalizado.

    Observação

    Apenas o mapeamento do Docker é modificado. As portas atribuídas internamente não são alteradas, o que lhe permite escolher qualquer porta de escuta no anfitrião.

Validar o tráfego e o formato de registo recebidos pelo recoletor de registos no Linux

Ocasionalmente, poderá ter de investigar problemas como o seguinte:

  • Os recoletores de registos estão a receber dados: confirme que os recoletores de registos estão a receber mensagens do Syslog das suas aplicações e não são bloqueados por firewalls.
  • Os dados recebidos estão no formato de registo correto: valide o formato de registo para o ajudar a resolver erros de análise ao comparar o formato de registo esperado por Defender para Aplicativos de Nuvem e o que o dispositivo envia.

Utilize os seguintes passos para verificar se o tráfego é recebido pelos recoletores de registos:

  1. Inicie sessão no servidor que aloja o contentor do Docker.

  2. Confirme que o recoletor de registos está a receber mensagens do Syslog com qualquer um dos seguintes métodos:

    • Utilize o tcpdump ou um comando semelhante para analisar o tráfego de rede na porta 514:

      tcpdump -Als0 port 514
      

      Se tudo estiver configurado corretamente, deverá ver o tráfego de rede das suas aplicações. Por exemplo:

      Captura de ecrã a mostrar a análise do tráfego de rede através do tcpdump.

    • Utilize netcat ou um comando semelhante para analisar o tráfego de rede no computador anfitrião:

      1. Instale o netcat e o wget.

      2. Transfira um ficheiro de registo de exemplo a partir de Microsoft Defender XDR. Se necessário, deszipe o ficheiro de registo.

        1. No Microsoft Defender XDR, em Aplicações na Cloud, selecioneAções> da Cloud Discovery>Criar snapshot relatório da Cloud Discovery.

        2. Selecione a Origem de dados a partir da qual pretende carregar os ficheiros de registo.

        3. Selecione Ver e verifique e, em seguida, clique com o botão direito do rato em Transferir registo de exemplo e copie a ligação do endereço do URL.

        4. Selecione Fechar>Cancelar.

      3. Executar:

        wget <URL_address_to_sample_log>
        
      4. Execute netcat para transmitir os dados em fluxo para o recoletor de registos.

        cat <path_to_downloaded_sample_log>.log | nc -w 0 localhost <datasource_port>
        

      Se o recoletor estiver configurado corretamente, os dados de registo estão presentes no ficheiro de mensagens e, pouco depois, são carregados para o portal Defender para Aplicativos de Nuvem.

    • Inspecione os ficheiros relevantes no contentor do Defender para Aplicativos de Nuvem Docker:

      1. Inicie sessão no contentor. Executar:

        docker exec -it <Container Name> bash
        
      2. Determine se as mensagens do Syslog estão a ser escritas no ficheiro de mensagens. Executar:

        cat /var/adallom/syslog/<your_log_collector_port>/messages
        

      Se tudo estiver configurado corretamente, deverá ver o tráfego de rede das suas aplicações. Por exemplo:

      Captura de ecrã a mostrar a análise do tráfego com o comando cat.

      Observação

      Este ficheiro continuará a ser escrito até atingir os 40 KB de tamanho. Por exemplo:

  3. Reveja os registos que foram carregados para Defender para Aplicativos de Nuvem no /var/adallom/discoverylogsbackup diretório. Por exemplo:

    Reveja os ficheiros de registo carregados.

  4. Valide o formato de registo recebido pelo recoletor de registos ao comparar as mensagens armazenadas no /var/adallom/discoverylogsbackup formato de registo de exemplo fornecido no assistente criar recoletor de registos Defender para Aplicativos de Nuvem.

Escrever o resultado do ficheiro de mensagens num ficheiro local

Se quiser utilizar o seu próprio registo de exemplo, mas não tiver acesso ao dispositivo, utilize os seguintes comandos para escrever a saída do ficheiro de mensagens, localizado no diretório syslog do recoletor de registos, num ficheiro local no anfitrião:

docker exec CustomerLogCollectorName tail -f -q /var/adallom/syslog/<datasource_port>/messages > /tmp/log.log

Compare o ficheiro de saída (/tmp/log.log) com as mensagens armazenadas no /var/adallom/discoverylogsbackup diretório.

Atualizar a versão do recoletor de registos

Ao atualizar o recoletor de registos:

  • Antes de instalar a nova versão, certifique-se de que para o recoletor de registos e remove a imagem atual.
  • Depois de instalar a nova versão, atualize os ficheiros de certificado.

Próximas etapas

Se tiver algum problema, estamos aqui para ajudar. Para obter assistência ou suporte para o problema do produto, abra um pedido de suporte.