Collecter les journaux Fortinet FortiAnalyzer
Ce guide explique comment ingérer des journaux Fortinet FortiAnalyzer dans Google Security Operations à l'aide de Bindplane.
Fortinet FortiAnalyzer est une plate-forme centralisée de gestion des journaux, d'analyse et de création de rapports pour les appareils Fortinet Security Fabric. Il agrège les journaux des pare-feu FortiGate, FortiMail, FortiWeb, FortiSandbox et d'autres produits Fortinet pour offrir une visibilité unifiée, une corrélation des événements et des rapports de conformité. FortiAnalyzer peut transférer les journaux agrégés via syslog vers des plates-formes SIEM externes pour une analyse plus approfondie.
Avant de commencer
Assurez-vous de remplir les conditions suivantes :
- Une instance Google SecOps.
- Windows Server 2016 ou version ultérieure, ou hôte Linux avec
systemd. - Connectivité réseau entre l'agent Bindplane et l'appliance FortiAnalyzer.
- 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 privilégié à la console de gestion Fortinet FortiAnalyzer (rôle Super_User ou administrateur équivalent).
Obtenir le fichier d'authentification d'ingestion Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres 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](https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi)" /quietAttendez la fin de l'installation.
Vérifiez l'installation en exécutant la commande suivante :
sc query observiq-otel-collectorLe service doit être indiqué comme RUNNING (EN COURS D'EXÉCUTION).
Installation de Linux
- Ouvrez un terminal avec les privilèges 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](https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh))" install_unix.shAttendez la fin de l'installation.
Vérifiez l'installation en exécutant la commande suivante :
sudo systemctl status observiq-otel-collector
Le service doit être indiqué comme actif (en cours d'exécution).
Ressources d'installation supplémentaires
Pour obtenir d'autres options d'installation et des conseils de dépannage, consultez le guide d'installation de l'agent Bindplane.
Configurer l'agent Bindplane pour ingérer les journaux syslog et les envoyer à Google SecOps
Localiser le fichier de configuration
- Linux :
bash sudo nano /opt/observiq-otel-collector/config.yaml - Windows :
cmd notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Modifiez le fichier de configuration
Remplacez l'intégralité du contenu de
config.yamlpar la configuration suivante :receivers: tcplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/fortianalyzer: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' # Replace with your actual customer ID from Step 2 customer_id: 'your-customer-id-here' endpoint: malachiteingestion-pa.googleapis.com log_type: FORTINET_FORTIANALYZER raw_log_field: body ingestion_labels: env: production service: pipelines: logs/fortianalyzer_to_chronicle: receivers: - tcplog exporters: - chronicle/fortianalyzer
Paramètres de configuration
- Configuration du récepteur :
listen_address: adresse IP et port à écouter. Utilisez0.0.0.0pour écouter sur toutes les interfaces. Modifiez le port si nécessaire (par exemple,1514).
- Configuration de l'exportateur :
creds_file_path: chemin d'accès complet au fichier d'authentification de l'ingestion :- Linux :
/etc/bindplane-agent/ingestion-auth.json - Windows :
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux :
customer_id: ID client Google SecOps.endpoint: URL du point de terminaison régional (par exemple,malachiteingestion-pa.googleapis.com).ingestion_labels: libellés facultatifs au format YAML (par exemple,env: production).
Enregistrez le fichier de configuration.
Après avoir modifié le fichier, enregistrez-le :
- Linux : appuyez sur
Ctrl+O, puis surEnter, puis surCtrl+X. - Windows : cliquez sur Fichier > Enregistrer.
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 observiq-otel-collectorVérifiez que le service est en cours d'exécution :
sudo systemctl status observiq-otel-collectorRecherchez les erreurs dans les journaux :
sudo journalctl -u observiq-otel-collector -f
Pour redémarrer l'agent Bindplane sous Windows :
Choisissez l'une des options suivantes :
- Invite de commandes ou PowerShell en tant qu'administrateur :
net stop observiq-otel-collector && net start observiq-otel-collector- Console Services :
- Appuyez sur
Win+R, saisissezservices.msc, puis appuyez sur Entrée. - Localisez observIQ OpenTelemetry Collector.
- Effectuez un clic droit, puis sélectionnez Redémarrer.
- Appuyez sur
Vérifiez que le service est en cours d'exécution :
sc query observiq-otel-collectorRecherchez les erreurs dans les journaux :
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Configurer le transfert syslog FortiAnalyzer
Configurez FortiAnalyzer pour qu'il transfère les journaux à l'agent Bindplane à l'aide de la sortie syslog.
Configurer un serveur syslog dans FortiAnalyzer
- Connectez-vous à l'interface Web de FortiAnalyzer.
- Accédez à Paramètres système > Transfert de journaux.
- Cliquez sur Créer pour ajouter une règle de transfert de journaux.
- Fournissez les informations de configuration suivantes :
- Nom : saisissez un nom descriptif (par exemple,
Chronicle-Bindplane). - État : sélectionnez Activer.
- Type de serveur distant : sélectionnez Syslog.
- Adresse IP/Nom de domaine complet du serveur : saisissez l'adresse IP de l'hôte de l'agent Bindplane.
- Port du serveur : saisissez
514(ou le port configuré dans l'agent Bindplane). - Syslog fiable (RFC 6587) : sélectionnez Activer pour utiliser le transport TCP.
- Format de transfert des journaux : sélectionnez Par défaut ou CEF selon vos besoins.
- Nom : saisissez un nom descriptif (par exemple,
- Dans la section Filtres de journaux, configurez les types de journaux à transférer :
- Sélectionnez l'ADOM (domaine administratif) à partir duquel transférer les journaux.
- Sélectionnez les types d'appareils et les catégories de journaux à inclure (journaux de trafic, d'événements, de sécurité, DNS, SSH et SSL).
- Cliquez sur OK pour enregistrer la configuration.
Vérifier le transfert de journaux
- Accédez à Paramètres système > Transfert de journaux.
- Vérifiez que l'état de la règle de transfert est Activée.
- Surveillez la colonne Statistiques pour vérifier que les journaux sont transférés.
- Vérifiez que les journaux sont reçus en consultant les journaux de l'agent Bindplane.
Table de mappage UDM
| Champ de journal | Mappage UDM | Logique |
|---|---|---|
devname |
principal.hostname |
Extrait de devname. |
srcip |
principal.ip |
Extrait de srcip. |
srcport |
principal.port |
Converti en nombre entier. |
srcintf |
additional.fields |
Clé : srcintf. |
dstip |
target.ip |
Extrait de dstip. |
dstport |
target.port |
Converti en nombre entier. |
dstintf |
additional.fields |
Clé : dstintf. |
proto |
network.ip_protocol |
Mappé (6=TCP, 17=UDP, 1=ICMP). |
action |
security_result.action |
accept/pass → AUTORISER ; deny/drop/block → BLOQUER. |
policyid |
security_result.rule_id |
Extrait de policyid. |
policyname |
security_result.rule_name |
Extrait de policyname. |
user |
principal.user.userid |
Extrait de user. |
app |
target.application |
Extrait de app. |
sentbyte |
network.sent_bytes |
Converti en entier non signé. |
rcvdbyte |
network.received_bytes |
Converti en entier non signé. |
severity |
security_result.severity |
information → INFORMATIONAL, warning → MEDIUM, error → ERROR, critical/alert/emergency → HIGH. |
logid |
metadata.product_log_id |
Extrait de logid. |
type |
metadata.product_event_type |
Extrait de type. |
subtype |
metadata.product_event_type |
Ajouté au type. |
level |
security_result.severity_details |
Extrait de level. |
| N/A | metadata.vendor_name |
Définissez-le sur Fortinet. |
| N/A | metadata.product_name |
Définissez-le sur FortiAnalyzer. |
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.