Recolha registos de DNS do F5
Este documento explica como carregar registos DNS da F5 para o Google Security Operations através do Bindplane. O analisador extrai campos de mensagens syslog de DNS F5 através de padrões grok com base no campo da aplicação e, em seguida, mapeia-os para o modelo de dados unificado (UDM). Processa várias aplicações F5, como gtmd
, mcpd
, big3d
e outras, analisando campos específicos e definindo o tipo de evento UDM, a gravidade e as descrições adequados com base no nível de registo e na aplicação.
Antes de começar
Certifique-se de que tem os seguintes pré-requisitos:
- Uma instância do Google SecOps
- Um anfitrião Windows 2016 ou posterior, ou um anfitrião Linux com
systemd
- Se estiver a ser executado através de um proxy, as portas da firewall estão abertas
- Acesso privilegiado ao F5 BIG-IP
Obtenha o ficheiro de autenticação de carregamento do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Agentes de recolha.
- Transfira o ficheiro de autenticação de carregamento. Guarde o ficheiro de forma segura no sistema onde o Bindplane vai ser instalado.
Obtenha o ID de cliente do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Perfil.
- Copie e guarde o ID do cliente da secção Detalhes da organização.
Instale o agente do Bindplane
Instale o agente do Bindplane no seu sistema operativo Windows ou Linux de acordo com as seguintes instruções.
Instalação do Windows
- Abra a Linha de comandos ou o PowerShell como administrador.
Execute o seguinte comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Instalação do Linux
- Abra um terminal com privilégios de raiz ou sudo.
Execute o seguinte comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Recursos de instalação adicionais
Para ver opções de instalação adicionais, consulte o guia de instalação.
Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps
- Aceda ao ficheiro de configuração:
- Localize o ficheiro
config.yaml
. Normalmente, encontra-se no diretório/etc/bindplane-agent/
no Linux ou no diretório de instalação no Windows. - Abra o ficheiro com um editor de texto (por exemplo,
nano
,vi
ou Bloco de notas).
- Localize o ficheiro
Edite o ficheiro
config.yaml
da seguinte forma:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'F5_DNS' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.
- Substitua
<customer_id>
pelo ID de cliente real. - Atualize
/path/to/ingestion-authentication-file.json
para o caminho onde o ficheiro de autenticação foi guardado na secção Obtenha o ficheiro de autenticação de carregamento do Google SecOps.
Reinicie o agente do Bindplane para aplicar as alterações
Para reiniciar o agente do Bindplane no Linux, execute o seguinte comando:
sudo systemctl restart bindplane-agent
Para reiniciar o agente do Bindplane no Windows, pode usar a consola Services ou introduzir o seguinte comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configure um conjunto de servidores de registo remoto
- Inicie sessão na IU Web do F5 BIG-IP.
- No separador Principal, aceda a DNS > Fornecimento > Equilíbrio de carga > Pools ou tráfego local > Pools.
- Clique em Criar.
- Indique os seguintes detalhes de configuração:
- Nome: introduza um nome exclusivo para o conjunto.
- Usando a definição Novos membros:
- Introduza o endereço IP do agente do Bindplane no campo Endereço.
- Introduza o número da porta do agente do Bindplane no campo Porta de serviço.
- Clique em Adicionar > Concluído.
Configure o destino do registo remoto
- No separador Principal, aceda a Sistema > Registos > Configuração > Destinos de registos.
- Clique em Criar.
- Indique os seguintes detalhes de configuração:
- Nome: introduza um nome exclusivo para este destino.
- Tipo: selecione Registo de alta velocidade remoto.
- Nome do conjunto: selecione o conjunto de servidores de registo remotos para os quais quer que o sistema BIG-IP envie mensagens de registo.
- Protocolo: selecione o protocolo usado.
- Clique em Concluído.
Criar um destino de registo remoto formatado
- No separador Principal, aceda a Sistema > Registos > Configuração > Destinos de registos.
- Clique em Criar.
- Indique os seguintes detalhes de configuração:
- Nome: introduza um nome exclusivo para este destino.
- Tipo: selecione Syslog remoto.
- Formato: selecione o formato do registo.
- Encaminhar para: selecione Destino do registo de alta velocidade > o destino que aponta para o conjunto de servidores Syslog remotos.
- Clique em Concluído.
Configure o publicador de registos
- No separador Principal, aceda a Sistema > Registos > Configuração > Publicadores de registos.
- Clique em Criar.
- Indique os seguintes detalhes de configuração:
- Nome: introduza um nome exclusivo para este publicador.
- Destinos: selecione o destino criado recentemente para Syslog remoto na lista Disponível e, de seguida, clique em keyboard_double_arrow_left Mover para mover o destino para a lista Selecionado.
- Clique em Concluído.
Configure um perfil de registo de DNS personalizado
- No separador Principal, aceda a DNS > Entrega > Perfis > Outro > Registo de DNS ou tráfego local > Perfis > Outro > Registo de DNS.
- Clique em Criar.
- Indique os seguintes detalhes de configuração:
- Nome: introduza um nome exclusivo para este perfil.
- Publicador de registos: selecione o destino recém-criado para o qual o sistema envia entradas de registo de DNS.
- Consultas de registo: selecione a caixa de verificação Ativado.
- Registar respostas: selecione a caixa de verificação Ativado.
- Incluir ID da consulta: selecione a caixa de verificação Ativado.
- Clique em Concluído.
Adicione o perfil de DNS ao ouvinte de DNS
- No separador Principal, aceda a DNS > Fornecimento > Ouvintes > selecione ouvinte de DNS.
- No Perfil de DNS na secção Serviço, selecione o Perfil de DNS que configurou anteriormente.
- Clique em Atualizar.
Tabela de mapeamento do UDM
Campo de registo | Mapeamento de UDM | Lógica |
---|---|---|
application |
principal.application |
Mapeado diretamente a partir do campo application . |
cipher_name |
network.tls.cipher |
Mapeado diretamente a partir do campo cipher_name . |
command_line |
principal.process.command_line |
Mapeado diretamente a partir do campo command_line . |
desc |
security_result.description |
Mapeado diretamente a partir do campo desc . |
desc_icrd |
security_result.description |
Mapeado diretamente a partir do campo desc_icrd . |
dest_ip |
target.ip |
Mapeado diretamente a partir do campo dest_ip . |
dest_port |
target.port |
Mapeado diretamente a partir do campo dest_port . |
file_path |
principal.process.file.full_path |
Mapeado diretamente a partir do campo file_path . Definido como true se level for "alert", caso contrário, não está presente. Definido como true se level for "alert", caso contrário, não está presente. |
msg3 |
security_result.description |
Mapeado diretamente a partir do campo msg3 quando application é "run-parts". |
metadata.event_type |
Definido como GENERIC_EVENT se event_type estiver vazio. Caso contrário, é mapeado a partir de event_type . Codificado de forma rígida para "DNS". Codificado como "F5". |
|
principal_hostname |
principal.hostname |
Mapeado diretamente a partir do campo principal_hostname . |
proc_id |
principal.process.pid |
Mapeado diretamente a partir do campo proc_id . |
received_bytes |
network.received_bytes |
Mapeado diretamente a partir do campo received_bytes . |
resource_id |
target.resource.id |
Mapeado diretamente a partir do campo resource_id . |
resource_parent |
principal.resource.parent |
Mapeado diretamente a partir do campo resource_parent . |
response_code |
network.http.response_code |
Mapeado diretamente a partir do campo response_code . Determinado com base no campo level . |
src_ip |
principal.ip |
Mapeado diretamente a partir do campo src_ip . |
src_port |
principal.port |
Mapeado diretamente a partir do campo src_port . |
tls_version |
network.tls.version |
Mapeado diretamente a partir do campo tls_version . |
userName |
principal.user.userid |
Mapeado diretamente a partir do campo userName . |
when |
event.timestamp |
Calculado a partir de datetime1 e timezone ou datetime e timezone . |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.