Recolha registos do F5 BIG-IP LTM

Suportado em:

Este documento explica como carregar registos do F5 BIG-IP LTM para o Google Security Operations através do Bindplane.

Antes de começar

Certifique-se de que cumpre os seguintes pré-requisitos:

  • Uma instância do Google SecOps
  • Um anfitrião Windows 2016 ou posterior, ou Linux com systemd
  • Se estiver a ser executado através de um proxy, certifique-se de que as portas da firewall estão abertas de acordo com os requisitos do agente Bindplane
  • Acesso administrativo ao dispositivo F5 BIG-IP LTM (TMSH ou IU Web)

Obtenha o ficheiro de autenticação de carregamento do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Agentes de recolha.
  3. 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

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Perfil.
  3. 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 de janelas

  1. Abra a Linha de comandos ou o PowerShell como administrador.
  2. Execute o seguinte comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Instalação do Linux

  1. Abra um terminal com privilégios de raiz ou sudo.
  2. 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

Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps

  1. Aceda ao ficheiro de configuração:

    1. 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.
    2. Abra o ficheiro com um editor de texto (por exemplo, nano, vi ou Bloco de notas).
  2. Edite o ficheiro config.yaml da seguinte forma:

      receivers:
        # UDP syslog listener (RFC5424 over UDP)
        udplog:
          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: "/opt/observiq-otel-collector/ingestion-auth.json"
          # Replace with your actual customer ID from Step 2
          customer_id: "<YOUR_CUSTOMER_ID>"
          # Select the appropriate regional endpoint based on where your Google SecOps instance is provisioned
          # For regional endpoints, see: [https://cloud.google.com/chronicle/docs/reference/ingestion-api#regional_endpoints](https://cloud.google.com/chronicle/docs/reference/ingestion-api#regional_endpoints)
          endpoint: "<YOUR_REGIONAL_ENDPOINT>"
          # Set the log_type to ensure the correct parser is applied
          log_type: "F5_BIGIP_LTM"
          raw_log_field: body
          # You can optionally add other custom ingestion labels here if needed
          ingestion_labels:
    
      service:
        pipelines:
          logs/f5ltm:
            receivers: [udplog]
            exporters: [chronicle/chronicle_w_labels]
    
    • O listen_address está definido como 0.0.0.0:514 para aceitar syslog de qualquer origem. Ajuste se precisar de restringir a interfaces específicas.
    • A porta UDP 514 é a porta syslog padrão. Se a porta 514 exigir privilégios de raiz, pode usar uma porta acima de 1024 (por exemplo, 5514) e ajustar a configuração do F5 em conformidade.
    • Para TCP em vez de UDP, crie um recetor tcplog e defina o protocolo F5 Remote High-Speed Log como tcp.
  3. Guarde o ficheiro e saia do editor.

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 Bindplane no Windows, pode usar a consola Serviços ou introduzir o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configure o encaminhamento de syslog do F5 BIG-IP LTM

Opção A: usar o TMSH (interface de linhas de comando)

  1. Crie um conjunto para o destino syslog

    1. Estabeleça ligação ao dispositivo F5 BIG-IP LTM através de SSH.
    2. Execute os seguintes comandos:

      tmsh create ltm pool f5_syslog_pool members add { <BINDPLANE_IP>:514 } monitor gateway_icmp
      
      • Substitua <BINDPLANE_IP> pelo endereço IP do anfitrião do agente do Bindplane.
  2. Crie um destino de registo

    tmsh create sys log-config destination remote-high-speed-log f5_hsl_dest protocol udp pool-name f5_syslog_pool
    
    tmsh create sys log-config destination remote-syslog f5_remote_syslog_dest format rfc5424 remote-high-speed-log f5_hsl_dest
    
  3. Crie um publicador de registos

    tmsh create sys log-config publisher f5_log_publisher destinations add { f5_remote_syslog_dest }
    
  4. Crie um perfil de registo de pedidos

    tmsh create ltm profile request-log f5_ltm_request_log \
      request-log-pool f5_syslog_pool request-log-protocol mds-udp \
      request-log-template 'event_source="request_logging",hostname="$BIGIP_HOSTNAME",client_ip="$CLIENT_IP",server_ip="$SERVER_IP",http_method="$HTTP_METHOD",http_uri="$HTTP_URI",http_host="${host}",virtual_name="$VIRTUAL_NAME",event_timestamp="$DATE_HTTP"' \
      request-logging enabled \
      response-log-pool f5_syslog_pool response-log-protocol mds-udp \
      response-log-template 'event_source="response_logging",hostname="$BIGIP_HOSTNAME",client_ip="$CLIENT_IP",server_ip="$SERVER_IP",http_method="$HTTP_METHOD",http_uri="$HTTP_URI",http_host="${host}",virtual_name="$VIRTUAL_NAME",http_statcode="$HTTP_STATCODE",event_timestamp="$DATE_HTTP"' \
      response-logging enabled
    
  5. Aplique o perfil de registo ao servidor virtual

    tmsh modify ltm virtual <VIRTUAL_SERVER_NAME> profiles add { f5_ltm_request_log }
    
    • Substitua <VIRTUAL_SERVER_NAME> pelo nome do seu servidor virtual.
  6. Guardar configuração

    tmsh save sys config
    

Opção B: usar a IU da Web F5 (utilitário de configuração)

  1. Crie um conjunto para o destino syslog

    1. Inicie sessão na interface Web do F5 BIG-IP LTM.
    2. Aceda a Tráfego local > Agrupamentos > Lista de agrupamentos.
    3. Clique em Criar.
    4. Forneça os seguintes detalhes de configuração:
      • Nome: introduza f5_syslog_pool.
      • Monitores de saúde: selecione gateway_icmp.
    5. Na secção Recursos, em Novos membros:
      • Endereço: introduza o endereço IP do agente Bindplane.
      • Porta de serviço: introduza 514.
    6. Clique em Adicionar.
    7. Clique em Concluído.
  2. Crie um destino de registo remoto de alta velocidade

    1. Aceda a Sistema > Registos > Configuração > Destinos de registos.
    2. Clique em Criar.
    3. Forneça os seguintes detalhes de configuração:
      • Nome: introduza f5_hsl_dest.
      • Tipo: selecione Registo remoto de alta velocidade.
      • Protocolo: selecione UDP.
      • Nome do conjunto: selecione f5_syslog_pool.
    4. Clique em Concluído.
  3. Crie um destino syslog remoto

    1. Aceda a Sistema > Registos > Configuração > Destinos de registos.
    2. Clique em Criar.
    3. Forneça os seguintes detalhes de configuração:
      • Nome: introduza f5_remote_syslog_dest.
      • Tipo: selecione Syslog remoto.
      • Formato Syslog: selecione RFC5424.
      • Registo de alta velocidade remoto: selecione f5_hsl_dest.
    4. Clique em Concluído.
  4. Crie um publicador de registos

    1. Aceda a Sistema > Registos > Configuração > Publicadores de registos.
    2. Clique em Criar.
    3. Forneça os seguintes detalhes de configuração:
      • Nome: introduza f5_log_publisher.
      • Destinos: mova f5_remote_syslog_dest de Disponível para Selecionado.
    4. Clique em Concluído.
  5. Crie um perfil de registo de pedidos

    1. Aceda a Tráfego local > Perfis > Outro > Registo de pedidos.
    2. Clique em Criar.
    3. Forneça os seguintes detalhes de configuração:
      • Nome: introduza f5_ltm_request_log.
      • Perfil principal: selecione request-log.
    4. Em Definições do pedido:

      • Registo de pedidos: selecione Ativado.
      • Protocolo de registo de pedidos: selecione mds-udp.
      • Pedir conjunto de registos: selecione f5_syslog_pool.
      • Modelo de registo de pedidos: introduza o seguinte:

        event_source="request_logging",hostname="$BIGIP_HOSTNAME",client_ip="$CLIENT_IP",server_ip="$SERVER_IP",http_method="$HTTP_METHOD",http_uri="$HTTP_URI",http_host="${host}",virtual_name="$VIRTUAL_NAME",event_timestamp="$DATE_HTTP"
        
    5. Em Definições de resposta:

      • Registo de respostas: selecione Ativado.
      • Protocolo de registo de respostas: selecione mds-udp.
      • Conjunto de registos de respostas: selecione f5_syslog_pool.
      • Modelo de registo de respostas: introduza o seguinte:

        event_source="response_logging",hostname="$BIGIP_HOSTNAME",client_ip="$CLIENT_IP",server_ip="$SERVER_IP",http_method="$HTTP_METHOD",http_uri="$HTTP_URI",http_host="${host}",virtual_name="$VIRTUAL_NAME",http_statcode="$HTTP_STATCODE",event_timestamp="$DATE_HTTP"
        
  6. Clique em Concluído.

Aplique o perfil de registo de pedidos ao servidor virtual

  1. Aceda a Tráfego local > Servidores virtuais > Lista de servidores virtuais.
  2. Clique no nome do servidor virtual.
  3. Aceda ao separador Recursos.
  4. Em iRules e perfis, clique em Gerir junto a Perfis.
  5. Em Disponível, localize f5_ltm_request_log e mova-o para Selecionado.
  6. Clique em Concluído.
  7. Clique em Atualizar.

Tabela de mapeamento da UDM

Campo de registo Mapeamento da UDM Lógica
hostname principal.hostname Nome do anfitrião do Syslog (dispositivo que emitiu o registo)
client_ip principal.ip Endereço IP de origem do cliente
client_port principal.port Porta de origem (se incluída no modelo)
server_ip target.ip IP de destino (membro do grupo)
server_port target.port Porta de destino (membro do conjunto)
http_method network.http.method Método de pedido HTTP
http_uri network.http.url URI do pedido HTTP (incluindo o caminho/consulta, se presente)
http_host network.http.host Cabeçalho de anfitrião HTTP
http_statcode network.http.response_code Código de estado da resposta HTTP
user_agent network.http.user_agent Cabeçalho do agente do utilizador
virtual_name target.application Nome do servidor virtual F5
event_timestamp metadata.event_timestamp Hora do evento a partir do dispositivo
event_source metadata.product_event_type Etiqueta de tipo de evento (request_logging, response_logging)

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.