Compartilhar via


Ingerir mensagens syslog e CEF no Microsoft Sentinel com o Agente do Azure Monitor

Este artigo mostra como usar o Syslog via AMA e o CEF (Common Event Format) por meio de conectores AMA para filtrar e ingerir mensagens syslog e CEF de computadores Linux, dispositivos de rede e dispositivos de segurança. Para saber mais sobre esses conectores de dados, confira Conectores do Syslog e do CEF (Formato Comum de Evento) por meio do AMA para Microsoft Sentinel.

Observação

O Container Insights oferece suporte à coleta automática de eventos syslog de nós Linux em seus clusters AKS. Saiba mais na coleção Syslog com o Container Insights.

Pré-requisitos

Antes de começar, você precisa ter os recursos configurados e as permissões apropriadas atribuídas, conforme descrito nesta seção.

Pré-requisitos do Microsoft Sentinel

Instale a solução Microsoft Sentinel apropriada e certifique-se de ter as permissões necessárias para concluir as etapas descritas neste artigo.

Pré-requisitos do encaminhador de log

Se você estiver coletando mensagens de um encaminhador de log, os seguintes pré-requisitos se aplicam:

  • Você precisa ter uma VM do Linux designada como um encaminhador de log para coletar logs.

  • Se o encaminhador de log não for uma máquina virtual do Azure, ele deverá ter o agente do Connected Machine do Azure Arc instalado nele.

  • A VM do encaminhador de log do Linux deve ter o Python 2.7 ou 3 instalado. Use o comando python --version ou python3 --version para verificar. Se estiver usando o Python 3, garanta que ele está definido como o comando padrão no computador ou execute scripts com o comando 'python3' em vez de 'python'.

  • O encaminhador de log deve ter o daemon syslog-ng ou rsyslog habilitado.

  • Para obter requisitos de espaço para o encaminhador de log, confira o Parâmetro de comparação de desempenho do agente do Azure Monitor. Você também pode examinar esta postagem no blog, que inclui designs para ingestão escalonável.

  • Suas fontes de log e dispositivos de segurança precisam ser configurados para enviar suas mensagens de log para o daemon syslog do encaminhador de log em vez de para o daemon syslog local.

Observação

Ao implantar o AMA em um Conjunto de Dimensionamento de Máquinas Virtuais (VMSS), você é altamente incentivado a usar um balanceador de carga que dê suporte ao método round robin para garantir a distribuição de carga em todas as instâncias implantadas.

Pré-requisitos de segurança do computador

Configure a segurança do computador de acordo com a política de segurança da sua organização. Por exemplo, configure a rede para ser alinhada à política de segurança de rede corporativa e altere as portas e os protocolos do daemon para que sejam alinhados aos requisitos. Para melhorar a configuração de segurança do computador, proteja sua VM no Azure ou examine estas melhores práticas para segurança de rede.

Se seus dispositivos estiverem enviando logs syslog e CEF por TLS porque, por exemplo, seu encaminhador de logs está na nuvem, você precisa configurar o daemon syslog (rsyslog ou syslog-ng) para se comunicar no TLS. Para obter mais informações, consulte:

Configurar o conector de dados

O processo de instalação do Syslog via AMA ou CEF (Formato Comum de Evento) por meio de conectores de dados AMA inclui as seguintes etapas:

  1. Instale o Agente do Azure Monitor e crie uma DCR (Regra de Coleta de Dados) usando um dos seguintes métodos:
  2. Se você estiver coletando logs de outros computadores usando um encaminhador de log, execute o script de "instalação" no encaminhador de log para configurar o daemon do syslog para escutar mensagens de outros computadores e abrir as portas locais necessárias.

Selecione a guia apropriada para obter instruções.

Crie uma DCR (regra de coleta de dados)

Para começar, abra o conector de dados Syslog via AMA ou CEF (Formato Comum de Evento) via AMA no Microsoft Sentinel e crie uma DCR (regra de coleta de dados).

  1. Para o Microsoft Sentinel no portal do Azure, em Configuração, selecione Conectores de dados.
    Para o Microsoft Sentinel no portal do Defender, selecione Microsoft Sentinel>Configurações>Conectores de dados.

  2. Para syslog, digite Syslog na caixa Pesquisar. Nos resultados, selecione o conector do Syslog por meio do AMA.
    Para CEF, digite CEF na caixa Pesquisar. Nos resultados, selecione o CEF (Formato Comum de Evento) por meio do conector do AMA.

  3. Selecione Abrir página do conector no painel de detalhes.

  4. Na área Configuração, selecione +Criar regra de coleta de dados.

    Captura de tela mostrando a página do conector do Syslog por meio do AMA.

    Captura de tela mostrando o CEF por meio da página do conector AMA.

  5. Na guia Básico:

    • Digite um nome para a DCR.
    • Selecione sua assinatura.
    • Selecione o grupo de recursos em que deseja localizar a DCR.

    Captura de tela mostrando os detalhes do DCR na guia Básico.

  6. Selecione Avançar: Recursos >.

Definir recursos de VM

Na guia Recursos, selecione os computadores nos quais você deseja instalar o AMA, nesse caso, seu computador de encaminhador de log. Se o encaminhador de log não aparecer na lista, talvez ele não tenha o agente do Azure Connected Machine instalado.

  1. Use os filtros disponíveis ou a caixa de pesquisa para localizar a VM do encaminhador de log. Você pode expandir uma assinatura na lista para ver os grupos de recursos dela, e um grupo de recursos para ver as VMs dela.

  2. Selecione a VM do encaminhador de log na qual você deseja instalar o AMA. A caixa de seleção será exibida ao lado do nome da VM quando você passar o mouse sobre ela.

    Captura de tela mostrando como selecionar recursos ao configurar o DCR.

  3. Examine suas alterações e selecione Avançar: Coletar >.

Selecionar instalações e severidades

Lembre-se de que o uso da mesma instalação para mensagens do syslog e do CEF pode resultar em duplicação de ingestão de dados. Para obter mais informações, consulte Como evitar a duplicação de ingestão de dados.

  1. Na guia Coletar, selecione o nível mínimo de log para cada instalação. Quando você seleciona um nível de log, o Microsoft Sentinel coleta logs para o nível selecionado e outros níveis com gravidade mais alta. Por exemplo, se você selecionar LOG_ERR, o Microsoft Sentinel coletará logs para os níveis LOG_ERR, LOG_CRIT, LOG_ALERT e LOG_EMERG.

    Captura de tela mostrando como selecionar níveis de log ao configurar o DCR.

  2. Examine suas seleções e selecione Avançar: Examinar + criar.

Examinar e criar a regra

Depois de concluir todas as guias, examine o que você inseriu e crie a regra de coleta de dados.

  1. Na guia Examinar e criar, selecione Criar.

    Captura de tela mostrando como examinar a configuração do DCR e criá-la.

    O conector instalará o agente do Azure Monitor nos computadores selecionados ao criar a DCR.

  2. Verifique as notificações no portal do Azure ou no portal do Microsoft Defender para ver quando a DCR é criada e se o agente está instalado.

  3. Selecione Atualizar na página do conector para ver a DCR exibida na lista.

Executar o script de "instalação"

Se você estiver usando um encaminhador de logs, configure o daemon syslog para escutar mensagens de outras máquinas e abra as portas locais necessárias.

  1. Na página do conector, copie a linha de comando que aparece em Executar o seguinte comando para instalar e aplicar o coletor CEF:.

    Captura de tela da linha de comando na página do conector.

    Ou copie-o daqui:

    sudo wget -O Forwarder_AMA_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Forwarder_AMA_installer.py&&sudo python Forwarder_AMA_installer.py
    
  2. Faça logon no computador do encaminhador de log no qual você acabou de instalar o AMA.

  3. Cole o comando copiado na última etapa para iniciar o script de instalação.
    O script configura o daemon rsyslog ou syslog-ng para usar o protocolo necessário e reinicia o daemon. O script abre a porta 514 para ouvir mensagens de entrada em protocolos UDP e TCP. Para alterar essa configuração, consulte o arquivo de configuração de daemon syslog de acordo com o tipo daemon em execução no computador:

    • Rsyslog: /etc/rsyslog.conf
    • Syslog-ng: /etc/syslog-ng/syslog-ng.conf

    Se você estiver usando o Python 3 e ele não estiver definido como o comando padrão no computador, substitua python3 por python no comando colado. Confira Pré-requisitos do encaminhador de log.

    Observação

    Para evitar cenários de Disco Completo em que o agente não pode funcionar, recomendamos que você defina a configuração syslog-ng ou rsyslog para não armazenar logs desnecessários. Um cenário de Disco Completo interrompe a função do AMA instalado. Para obter mais informações, consulte RSyslog ou Syslog-ng.

  4. Verifique o status do serviço.

    Verifique o status do serviço AMA no encaminhador de logs:

    sudo systemctl status azuremonitoragent.service
    

    Verifique o status do serviço rsyslog:

    sudo systemctl status rsyslog.service
    

    Para ambientes syslog-ng, verifique:

    sudo systemctl status syslog-ng.service
    

Configurar o dispositivo de segurança

Para obter instruções para configurar seu dispositivo de segurança ou dispositivo, consulte um dos seguintes artigos:

Para obter mais informações sobre seu dispositivo ou dispositivo, entre em contato com o provedor de solução.

Testar o conector

Verifique se as mensagens de log da sua máquina Linux ou dos dispositivos e aparelhos de segurança são ingeridas no Microsoft Sentinel.

  1. Para validar se o daemon syslog está em execução na porta UDP e que se o AMA está escutando, execute este comando:

     netstat -lnptv
    

    Você deve ver o daemon rsyslog ou syslog-ng escutando na porta 514.

  2. Para capturar mensagens enviadas de um agente ou de um dispositivo conectado, execute este comando em segundo plano:

    sudo tcpdump -i any port 514 or 28330 -A -vv &
    
  3. Depois de concluir a validação, pare tcpdump. Digite fge selecione Ctrl+C.

Enviar mensagens de teste

Para enviar mensagens de demonstração, conclua uma das seguintes etapas:

  1. Use o utilitário nc netcat. Neste exemplo, o utilitário lê os dados postados por meio do comando echo com a opção newline desativada. Em seguida, o utilitário grava os dados na porta UDP 514 no localhost sem tempo limite. Para executar o utilitário netcat, talvez seja necessário instalar um pacote adicional.

    echo -n "<164>CEF:0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|1|rt=$common=event-formatted-receive_time" | nc -u -w0 localhost 514
    
  2. Use o comando logger. Este exemplo grava a mensagem na instalação local 4, no nível de severidade Warning, na porta 514, no host local, no formato RFC CEF. Os sinalizadores -t e --rfc3164 são usados para manter a conformidade com o formato RFC esperado.

    logger -p local4.warn -P 514 -n 127.0.0.1 --rfc3164 -t CEF "0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|rt=$common=event-formatted-receive_time"
    

    Teste a ingestão de dados do Cisco ASA usando o seguinte comando:

    echo -n "<164>%ASA-7-106010: Deny inbound TCP src inet:1.1.1.1 dst inet:2.2.2.2" | nc -u -w0 localhost 514
    

    Depois de executar esses comandos, as mensagens chegam à porta 514 e encaminham para a porta 28330.

  3. Depois de enviar mensagens de teste, consulte seu espaço de trabalho do Log Analytics. Os logs podem levar até 20 minutos para aparecer em seu workspace.

Para logs do CEF:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceProduct == "MOCK"

Para logs do Cisco ASA:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceVendor == "Cisco"
| where DeviceProduct == "ASA"

Soluções de problemas adicionais

Se você não vir tráfego na porta 514 ou as mensagens de teste não forem ingeridas, consulte Solucionar problemas de syslog e CEF por meio de conectores AMA para o Microsoft Sentinel.