Collecter les journaux F5 BIG-IP LTM
Ce document explique comment ingérer des journaux F5 BIG-IP LTM dans Google Security Operations à l'aide de Bindplane.
Avant de commencer
Assurez-vous de remplir les conditions suivantes :
- Une instance Google SecOps
- Un hôte Windows 2016 ou version ultérieure, ou Linux avec
systemd - Si vous exécutez l'agent derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent Bindplane.
- Accès administrateur à l'appareil F5-BIG IP LTM (TMSH ou interface utilisateur Web)
Obtenir le fichier d'authentification d'ingestion Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres du SIEM > Agents de collecte.
- Téléchargez le fichier d'authentification d'ingestion. Enregistrez le fichier de manière sécurisée sur le système sur lequel Bindplane sera installé.
Obtenir l'ID client Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM> Profil.
- Copiez et enregistrez le numéro client de la section Informations sur l'organisation.
Installer l'agent Bindplane
Installez l'agent Bindplane sur votre système d'exploitation Windows ou Linux en suivant les instructions ci-dessous.
Installation de fenêtres
- Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
Exécutez la commande suivante :
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Installation de Linux
- Ouvrez un terminal avec les droits root ou sudo.
Exécutez la commande suivante :
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Autres ressources d'installation
- Pour plus d'options d'installation, consultez ce guide d'installation.
Configurer l'agent Bindplane pour ingérer Syslog et l'envoyer à Google SecOps
Accédez au fichier de configuration :
- Recherchez le fichier
config.yaml. Il se trouve généralement dans le répertoire/etc/bindplane-agent/sous Linux ou dans le répertoire d'installation sous Windows. - Ouvrez le fichier à l'aide d'un éditeur de texte (par exemple,
nano,viou le Bloc-notes).
- Recherchez le fichier
Modifiez le fichier
config.yamlcomme suit :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]listen_addressest défini sur0.0.0.0:514pour accepter les journaux syslog provenant de n'importe quelle source. Ajustez si vous devez limiter l'accès à des interfaces spécifiques.- Le port UDP 514 est le port syslog standard. Si le port 514 nécessite des droits racine, vous pouvez utiliser un port supérieur à 1024 (par exemple,
5514) et ajuster la configuration F5 en conséquence. - Pour TCP au lieu d'UDP, créez un récepteur
tcploget définissez le protocole F5 Remote High-Speed Log surtcp.
Enregistrez le fichier et quittez l'éditeur.
Redémarrez l'agent Bindplane pour appliquer les modifications.
Pour redémarrer l'agent Bindplane sous Linux, exécutez la commande suivante :
sudo systemctl restart bindplane-agentPour redémarrer l'agent Bindplane sous Windows, vous pouvez utiliser la console Services ou saisir la commande suivante :
net stop BindPlaneAgent && net start BindPlaneAgent
Configurer le transfert syslog F5 BIG-IP LTM
Option A : Utiliser TMSH (interface de ligne de commande)
Créer un pool pour la destination syslog
- Connectez-vous à l'appareil F5 BIG-IP LTM via SSH.
Exécutez les commandes suivantes :
tmsh create ltm pool f5_syslog_pool members add { <BINDPLANE_IP>:514 } monitor gateway_icmp- Remplacez
<BINDPLANE_IP>par l'adresse IP de l'hôte de votre agent Bindplane.
- Remplacez
Créer une destination de journal
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_destCréer un éditeur de journaux
tmsh create sys log-config publisher f5_log_publisher destinations add { f5_remote_syslog_dest }Créer un profil de journalisation des requêtes
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 enabledAppliquer un profil de journalisation à un serveur virtuel
tmsh modify ltm virtual <VIRTUAL_SERVER_NAME> profiles add { f5_ltm_request_log }- Remplacez
<VIRTUAL_SERVER_NAME>par le nom de votre serveur virtuel.
- Remplacez
Enregistrer la configuration
tmsh save sys config
Option B : Utiliser l'UI Web F5 (utilitaire de configuration)
Créer un pool pour la destination syslog
- Connectez-vous à l'interface Web F5 BIG-IP LTM.
- Accédez à Trafic local > Pools > Liste des pools.
- Cliquez sur Créer.
- Fournissez les informations de configuration suivantes :
- Nom : saisissez
f5_syslog_pool. - Moniteurs d'état : sélectionnez gateway_icmp.
- Nom : saisissez
- Dans la section Ressources, sous Nouveaux membres :
- Adresse : saisissez l'adresse IP de l'agent Bindplane.
- Port du service : saisissez
514.
- Cliquez sur Ajouter.
- Cliquez sur Terminé.
Créer une destination de journaux à distance à haut débit
- Accédez à Système> Journaux> Configuration> Destinations des journaux.
- Cliquez sur Créer.
- Fournissez les informations de configuration suivantes :
- Nom : saisissez
f5_hsl_dest. - Type : sélectionnez Journal à distance à haut débit.
- Protocole : sélectionnez UDP.
- Nom du pool : sélectionnez
f5_syslog_pool.
- Nom : saisissez
- Cliquez sur Terminé.
Créer une destination syslog distante
- Accédez à Système> Journaux> Configuration> Destinations des journaux.
- Cliquez sur Créer.
- Fournissez les informations de configuration suivantes :
- Nom : saisissez
f5_remote_syslog_dest. - Type : sélectionnez Syslog distant.
- Format Syslog : sélectionnez RFC5424.
- Journal à distance à grande vitesse : sélectionnez
f5_hsl_dest.
- Nom : saisissez
- Cliquez sur Terminé.
Créer un éditeur de journaux
- Accédez à Système> Journaux> Configuration> Éditeurs de journaux.
- Cliquez sur Créer.
- Fournissez les informations de configuration suivantes :
- Nom : saisissez
f5_log_publisher. - Destinations : déplacez
f5_remote_syslog_destde Disponible vers Sélectionné.
- Nom : saisissez
- Cliquez sur Terminé.
Créer un profil de journalisation des requêtes
- Accédez à Trafic local > Profils > Autre > Journalisation des requêtes.
- Cliquez sur Créer.
- Fournissez les informations de configuration suivantes :
- Nom : saisissez
f5_ltm_request_log. - Profil parent : sélectionnez
request-log.
- Nom : saisissez
Sous Paramètres de la demande :
- Journalisation des requêtes : sélectionnez Activée.
- Protocole du journal des requêtes : sélectionnez mds-udp.
- Pool de journaux de requêtes : sélectionnez
f5_syslog_pool. Modèle de journal des requêtes : saisissez les informations suivantes :
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"
Sous Paramètres de réponse :
- Journalisation des réponses : sélectionnez Activée.
- Protocole du journal des réponses : sélectionnez mds-udp.
- Pool de journaux de réponse : sélectionnez
f5_syslog_pool. Modèle de journal des réponses : saisissez ce qui suit :
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"
Cliquez sur Terminé.
Appliquer un profil de journalisation des requêtes au serveur virtuel
- Accédez à Trafic local> Serveurs virtuels> Liste des serveurs virtuels.
- Cliquez sur le nom du serveur virtuel.
- Accédez à l'onglet Ressources.
- Sous iRules and Profiles (iRules et profils), cliquez sur Manage (Gérer) à côté de Profiles (Profils).
- Sous Disponible, recherchez
f5_ltm_request_loget déplacez-le vers Sélectionné. - Cliquez sur Terminé.
- Cliquez sur Mettre à jour.
Table de mappage UDM
| Champ de journal | Mappage UDM | Logique |
|---|---|---|
hostname |
principal.hostname |
Nom d'hôte Syslog (appareil ayant émis le journal) |
client_ip |
principal.ip |
Adresse IP source du client |
client_port |
principal.port |
Port source (s'il est inclus dans le modèle) |
server_ip |
target.ip |
Adresse IP de destination (membre du pool) |
server_port |
target.port |
Port de destination (membre du pool) |
http_method |
network.http.method |
Méthode de requête HTTP |
http_uri |
network.http.url |
URI de la requête HTTP (y compris le chemin d'accès/la requête, le cas échéant) |
http_host |
network.http.host |
En-tête HTTP de l'hôte |
http_statcode |
network.http.response_code |
Code d'état de réponse HTTP |
user_agent |
network.http.user_agent |
En-tête User-Agent |
virtual_name |
target.application |
Nom du serveur virtuel F5 |
event_timestamp |
metadata.event_timestamp |
Heure de l'événement sur l'appareil |
event_source |
metadata.product_event_type |
Tag de type d'événement (request_logging, response_logging) |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.