Como integrar o Syslog Server ao Microsoft Sentinel

Verificar logs é uma atividade importante para ver o que está acontecendo em seus servidores Linux, especialmente quando você está tentando localizar um problema. É fácil quando você está apenas gerenciando 2, 3 servidores, mas o que fazer quando você está lidando com 50 ou 100 servidores?

É quando o gerenciamento centralizado de log entra em cena. Podemos sincronizar todos os logs do servidor Linux (auth logs, logs de cron, sislogs, etc) e outras soluções como firewall, a um único servidor Linux para que tenhamos acesso a logs de todos os servidores, sejam 1 ou 100, em um único servidor e quando formos obrigados a verificar logs, entraremos em um único servidor e teremos acesso a logs de todos os servidores.

Para ingerir os logs do Syslog e do CEF no Microsoft Sentinel, particularmente a partir de dispositivos e dispositivos nos quais você não pode instalar diretamente o agente Log Analytics, você precisará designar e configurar uma máquina Linux que coletará os logs de seus dispositivos e os encaminhará para o workspace do Microsoft Sentinel. Esta máquina pode ser uma máquina física ou virtual em seu ambiente local, um Azure VM ou um VM em outro provider.

Esta máquina tem dois componentes que participam deste processo:

  • Um daemon syslog, ou rsyslog ou syslog-ng, que coleta os logs.
  • Log Analytics Agent (também conhecido como Agente OMS), que encaminha os logs para o Microsoft Sentinel.

Requisitos

  • Instala o agente Log Analytics para Linux (também conhecido como agente OMS) e configura-o para os seguintes propósitos:
    • ouvir mensagens CEF do daemon Linux Syslog embutido na porta TCP 25226
    • enviando as mensagens com segurança sobre o TLS para o seu log analytics workspace do Microsoft Sentinel, onde elas são analisadas e enriquecidas
  • Configura o daemon integrado do Linux Syslog (rsyslog.d/syslog-ng) para os seguintes propósitos:
    • ouvir mensagens do Syslog de suas soluções de segurança na porta TCP 514
    • encaminhando apenas as mensagens que identifica como CEF para o agente Log Analytics no localhost usando a porta TCP 25226

Ambiente Existente:

Em nosso ambiente temos uma máquina com o sistema operacional Ubuntu Server 20.04 com 4 GB de memória RAM e 100 GB de armazenamento e endereço IP 192.168.1.100.

Passo a passo

Configurar o servidor Syslog

01 – Rsyslog é o syslogd padrão em sistemas Debian e geralmente é instalado no Ubuntu 20.04 por padrão. Você pode verificar isso verificando a versão do rsyslog instalado.

apt list -a rsyslog

Como podemos observar na imagem abaixo o Rsyslog já está instalado.

Observação: Caso o Rsyslog não esteja instalado, você pode instalá-lo executando o seguinte comando:

apt-get install rsyslog

02 – Verifique se o serviço do rsyslog está em execução.

systemctl status rsyslog

03 – Instale o pacote netstat no servidor:

apt-get install net-tools

Integração Syslog com Microsoft Sentinel

Já escrevi um artigo aqui no site mostrando como implantar o Microsoft Sentinel, clique no link abaixo para conferir.

Como Implantar o Microsoft Sentinel – Jádson Alves (jadsonalves.com.br)

04 – Faça login no portal do Azure.

https://portal.azure.com 

05 – No portal do Azure pesquise por Microsoft Sentinel.

06 – Após selecione o Microsoft Sentinel em Configuration clique em Data connectors.

07 – Na tela Data connectors pesquise por Common Event Formated (CEF), em seguida selecione o conector Common Event Format (CEF) e clique em Open connector page.

08 – Na tela Common Event Format (CEF) vamos precisar instalar o CEF collector no servidor syslog, copie o comando em Run the following command to install and apply the CEF collector em seguida execute no servidor syslog.

09 – Antes de executarmos o script precisamos instalar o python no servidor syslog.
apt-get install python -y
10 – No servidor syslog execute o comando que foi copiado no conector Common Event Format (CEF) no Microsoft Sentinel para instalar o agente.

sudo wget -O cef_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/CEF/cef_installer.py&&sudo python cef_installer.py 4588437e-452e-4ce8-a5aa-3662f418edf4 Vnqr/PceQREqZSo3zFC12GwGbCybynoASo/N8ADbDvmvthLn5AGpeLEf+LAxjoBa6mu9iPcxZfNFP6cyb0dCig==

Simule o envio de CEF Logs para o Log Analytics Workspace

O próximo passo é enviar mensagens de demonstração do CEF para o Log Analytics  Workspace do Microsoft Sentinel a partir da máquina coletora CEF localmente sem qualquer dispositivo.
11 – No servidor syslog execute o seguinte comando:
logger -p local4.warn -P 514 127.0.0.1 –rfc3164 -t CEF “0|DeviceVendorName-Test|deviceProduct-Test|common=event-format-test|end|TRAFFIC|rt=$common=event-formatted-receive_time”

O comando logger nos permite gerar uma solicitação Syslog, e estamos dizendo-lhe para fazê-lo na instalação local4, estamos enviando uma severidade de (.warn) aviso na porta 514 para o endereço IP local (127.0.0.1) usando RFC 3164 seguido com a inicial da CEF, e finalmente, temos o evento em si.

Neste exemplo, a mensagem CEF contém, DeviceVendorName-Test | DeviceProduct-Test | common=event-format-test. 

Verificar logs em Log Analytics Workspace

Precisamos verificar e validar que os registros CEF chegaram no Log Analytics Workspace.

Pode levar até 5-10 minutos no máximo depois que a conexão for feita para que os dados apareçam no Log Analytics workspace.

Para procurar eventos CEF no Log Analytics workspace, consulte a tabela CommonSecurityLog na tela de consulta.

12 – Em seguida, execute a seguinte consulta de KQL para verificar se os logs chegaram:

CommonSecurityLog
| sort by TimeGenerated

13 – Se abrirmos alguma das mensagens de CEF log, você verá os seguintes detalhes.

14 – No Log analytics workspace em agents management selecione Linux servers e observe que temos uma máquina conectada, nesse caso é o nosso servidor syslog que foi instalado junto com o script de configuração do connector Common Event Format (CEF), clique em See them in Logs.

15 – Após clicar em See them in Logs somos direcionados para a tela de Logs do log analytics workspace onde uma query em KQL foi executa que traz todas as máquinas Linux com o agente do log analytics instalado, nesse caso só temos o servidor syslog.

16 – De volta ao Microsoft Sentinel em Data connectors observe que o conector Common Event Formated (CEF) está conectado.

Comente suas sugestões e observações! 

Forte abraço, obrigado e até o próximo post.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *