Collecter les journaux du contrôleur sans fil et du point d'accès Aruba
Ce document explique comment collecter les journaux du contrôleur sans fil et du point d'accès Aruba à l'aide de Bindplane. L'analyseur traite les messages SYSLOG, en extrayant les champs liés aux détails de l'observateur, de l'intermédiaire et du point d'accès. Il mappe ensuite ces champs au modèle de données unifié (UDM), en enrichissant les données d'événement avec la gravité du résultat de sécurité et en gérant diverses conditions d'erreur au cours du processus.
Avant de commencer
- Assurez-vous de disposer d'une instance Google Security Operations.
- Assurez-vous d'utiliser Windows 2016 ou une version ultérieure, ou un hôte Linux avec
systemd
. - Si vous exécutez le programme derrière un proxy, assurez-vous que les ports du pare-feu sont ouverts.
- Assurez-vous de disposer d'un accès privilégié à un contrôleur sans fil Aruba.
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
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
Ressources d'installation supplémentaires
- 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
. En règle générale, il se trouve 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
,vi
ou le Bloc-notes).
- Recherchez le fichier
Modifiez le fichier
config.yaml
comme suit :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: '/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 ingestion_labels: log_type: ARUBA_WIRELESS raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
Remplacez le port et l'adresse IP selon les besoins de votre infrastructure.
Remplacez
<customer_id>
par le numéro client réel.Mettez à jour
/path/to/ingestion-authentication-file.json
en indiquant le chemin d'accès où le fichier d'authentification a été enregistré dans la section Obtenir le fichier d'authentification pour l'ingestion Google SecOps.
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-agent
Pour 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 contrôleur et le point d'accès sans fil Aruba
- Connectez-vous à l'interface utilisateur Web du contrôleur Aruba.
- Accédez au menu supérieur et sélectionnez Configuration> Système.
- Sélectionnez Journalisation pour ouvrir la page de configuration de la journalisation.
- Dans la section Serveurs Syslog, cliquez sur + Ajouter pour ajouter un serveur Syslog.
- Un nouveau formulaire s'affiche. Vous devez y saisir les informations suivantes :
- Nom : saisissez un nom unique pour le serveur syslog. Par exemple,
Google SecOps Syslog
. - Adresse IP : saisissez l'adresse IP Bindplane.
- Port : saisissez le numéro de port Bindplane (généralement 514 pour UDP).
- Installation de journalisation : sélectionnez local6 dans le menu (cette option est couramment utilisée pour les périphériques réseau).
- Niveau de journalisation : sélectionnez Informations pour capturer les journaux d'informations.
- Format : sélectionnez le format bsd-standard (il s'agit du format syslog par défaut utilisé par les contrôleurs Aruba).
- Nom : saisissez un nom unique pour le serveur syslog. Par exemple,
- Cliquez sur Envoyer pour enregistrer vos paramètres.
- Cliquez sur Modifications en attente.
Cliquez sur Déployer les modifications pour appliquer la nouvelle configuration du serveur Syslog.
Accédez aux paramètres Niveau de journalisation et définissez le Niveau de journalisation sur Informationnel pour chacune des catégories suivantes :
- Réseau
- Tous
- Cluster
- DHCP
- GP
- Mobilité
- Packet-Dump
- SDN
Table de mappage UDM
Champ de journal | Mappage UDM | Logique |
---|---|---|
Additional Info |
read_only_udm.security_result.description |
La valeur de Additional Info du journal brut est mappée sur le champ UDM security_result.description . |
AP |
read_only_udm.target.hostname |
Lorsqu'elle est présente dans le journal brut, la valeur après AP: est extraite et mappée au champ UDM target.hostname . |
BSSID |
read_only_udm.target.mac , read_only_udm.principal.resource.name (lorsque le type de ressource est BSSID) |
La valeur BSSID du journal brut est mappée sur target.mac . Il est également utilisé comme nom de ressource lorsque principal.resource.type est défini sur BSSID . |
COMMAND |
read_only_udm.principal.process.command_line |
La valeur de la commande du journal brut est mappée au champ UDM principal.process.command_line . |
Dst-MAC |
read_only_udm.target.mac |
Si elle est présente, la valeur Dst-MAC du journal brut est mappée au champ UDM target.mac . |
SERVER |
read_only_udm.target.hostname |
Lorsqu'il est présent, le nom du serveur du journal brut est mappé au champ UDM target.hostname . |
SERVER-IP |
read_only_udm.target.ip |
Lorsqu'elle est présente, l'adresse IP du serveur du journal brut est mappée au champ UDM target.ip . |
Src-MAC |
read_only_udm.principal.mac |
Lorsqu'elle est présente, la valeur Src-MAC du journal brut est mappée sur le champ UDM principal.mac . |
SSID |
read_only_udm.target.resource.name (lorsque le type de ressource est "SSID") |
La valeur SSID du journal brut est utilisée comme nom de ressource lorsque target.resource.type est défini sur SSID . |
USER |
read_only_udm.target.user.userid |
Lorsqu'il est présent, l'ID utilisateur du journal brut est mappé au champ UDM target.user.userid . |
USERIP |
read_only_udm.principal.ip , read_only_udm.observer.ip |
Lorsqu'elle est présente, l'adresse IP de l'utilisateur issue du journal brut est mappée aux champs UDM principal.ip et observer.ip . |
USERMAC |
read_only_udm.principal.mac |
Lorsqu'elle est présente, l'adresse MAC de l'utilisateur du journal brut est mappée au champ UDM principal.mac . |
USERNAME |
read_only_udm.principal.user.userid |
Lorsqu'il est présent, le nom d'utilisateur du journal brut est mappé au champ UDM principal.user.userid . |
action |
read_only_udm.security_result.action |
Valeur de l'action à partir du journal brut (par exemple, permit , deny ) est mappé au champ UDM security_result.action . |
apname |
read_only_udm.target.hostname |
Lorsqu'il est présent, le nom du point d'accès du journal brut est mappé au champ UDM target.hostname . |
bssid |
read_only_udm.target.mac |
Lorsqu'il est présent, la valeur BSSID du journal brut est mappée au champ UDM target.mac . |
collection_time.seconds |
read_only_udm.metadata.event_timestamp.seconds |
La valeur en secondes de l'heure de collecte du journal brut est mappée sur le champ UDM metadata.event_timestamp.seconds . |
device_ip |
read_only_udm.intermediary.ip |
L'adresse IP de l'appareil provenant du journal brut ou de logstash est mappée sur le champ UDM intermediary.ip . |
dstip |
read_only_udm.target.ip |
Lorsqu'elle est présente, l'adresse IP de destination du journal brut est mappée sur le champ UDM target.ip . |
dstport |
read_only_udm.target.port |
Lorsqu'il est présent, le port de destination du journal brut est mappé sur le champ UDM target.port . |
event_id |
read_only_udm.metadata.product_event_type |
L'ID d'événement du journal brut est utilisé pour construire le champ metadata.product_event_type dans l'UDM, avec le préfixe Event ID: . |
event_message |
read_only_udm.security_result.summary |
Le message d'événement du journal brut est mappé au champ UDM security_result.summary . |
log.source.address |
read_only_udm.observer.ip |
L'adresse de la source du journal est mappée au champ UDM observer.ip . |
log_type |
read_only_udm.metadata.log_type |
Le type de journal du journal brut est mappé sur le champ UDM metadata.log_type . |
logstash.collect.host |
read_only_udm.observer.ip ou read_only_udm.observer.hostname |
L'hôte de collecte Logstash est mappé sur observer.ip s'il s'agit d'une adresse IP ou sur observer.hostname s'il s'agit d'un nom d'hôte. |
logstash.ingest.host |
read_only_udm.intermediary.hostname |
L'hôte d'ingestion Logstash est mappé au champ UDM intermediary.hostname . |
logstash.process.host |
read_only_udm.intermediary.hostname |
L'hôte du processus Logstash est mappé au champ UDM intermediary.hostname . |
program |
read_only_udm.target.application |
Le nom du programme du journal brut est mappé au champ UDM target.application . |
serverip |
read_only_udm.target.ip |
Lorsqu'elle est présente, l'adresse IP du serveur du journal brut est mappée au champ UDM target.ip . |
servername |
read_only_udm.target.hostname |
Lorsqu'il est présent, le nom du serveur du journal brut est mappé au champ UDM target.hostname . |
srcip |
read_only_udm.principal.ip |
Lorsqu'elle est présente, l'adresse IP source du journal brut est mappée sur le champ UDM principal.ip . |
srcport |
read_only_udm.principal.port |
Lorsqu'il est présent, le port source du journal brut est mappé sur le champ UDM principal.port . |
syslog_host |
read_only_udm.intermediary.hostname |
L'hôte syslog du journal brut est mappé au champ UDM intermediary.hostname . |
timestamp |
read_only_udm.metadata.event_timestamp |
L'horodatage du journal brut est analysé et mappé au champ UDM metadata.event_timestamp . |
userip |
read_only_udm.principal.ip , read_only_udm.observer.ip |
Lorsqu'elle est présente, l'adresse IP de l'utilisateur issue du journal brut est mappée aux champs UDM principal.ip et observer.ip . |
usermac |
read_only_udm.principal.mac |
Lorsqu'elle est présente, l'adresse MAC de l'utilisateur du journal brut est mappée au champ UDM principal.mac . |
username |
read_only_udm.principal.user.userid |
Lorsqu'il est présent, le nom d'utilisateur du journal brut est mappé au champ UDM principal.user.userid . Dérivé de event_id et de la logique du parseur. Déterminé par l'analyseur en fonction de l'ID de l'événement et du contenu du message du journal. Codé en dur sur Wireless . Codé en dur sur Aruba . Déterminé par l'analyseur en fonction de l'ID de l'événement et du contenu du message du journal. Déterminé par l'analyseur en fonction de l'ID de l'événement et du contenu du message du journal. Extrait du message de journal brut à l'aide d'une expression régulière. Déterminé par l'analyseur en fonction de l'ID de l'événement et du contenu du message du journal. Un objet vide est ajouté lorsque event_type est USER_LOGIN ou un événement d'authentification associé. Déterminé par l'analyseur en fonction du protocole réseau utilisé dans l'événement (par exemple, TCP, UDP, ICMP, IGMP). Contient des champs supplémentaires extraits du journal brut en fonction de conditions spécifiques. Par exemple, ap_name est ajouté en tant que paire clé-valeur lorsqu'il est présent. Défini sur BSSID lorsqu'un BSSID est présent dans le contexte du compte principal. Défini sur SSID lorsqu'un SSID est présent dans le contexte de la cible. Contient des paires clé/valeur d'informations de détection pertinentes extraites du journal brut, telles que le BSSID ou le SSID. |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.