Collecter les journaux Fortinet FortiAnalyzer

Compatible avec :

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

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres SIEM > Agents de collecte.
  3. Téléchargez le fichier d'authentification d'ingestion.
  4. Enregistrez le fichier de manière sécurisée sur le système sur lequel Bindplane sera installé.

Obtenir l'ID client Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres SIEM > Profil.
  3. 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

  1. Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
  2. 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)" /quiet
    
  3. Attendez la fin de l'installation.

  4. Vérifiez l'installation en exécutant la commande suivante :

    sc query observiq-otel-collector
    

    Le service doit être indiqué comme RUNNING (EN COURS D'EXÉCUTION).

Installation de Linux

  1. Ouvrez un terminal avec les privilèges root ou sudo.
  2. 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.sh
    
  3. Attendez la fin de l'installation.

  4. 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.yaml par 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. Utilisez 0.0.0.0 pour é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
    • 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 sur Enter, puis sur Ctrl+X.
  • Windows : cliquez sur Fichier > Enregistrer.

Redémarrez l'agent Bindplane pour appliquer les modifications.

Pour redémarrer l'agent Bindplane sous Linux :

  1. Exécutez la commande suivante :

    sudo systemctl restart observiq-otel-collector
    
  2. Vérifiez que le service est en cours d'exécution :

    sudo systemctl status observiq-otel-collector
    
  3. Recherchez les erreurs dans les journaux :

    sudo journalctl -u observiq-otel-collector -f
    

Pour redémarrer l'agent Bindplane sous Windows :

  1. 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 :
      1. Appuyez sur Win+R, saisissez services.msc, puis appuyez sur Entrée.
      2. Localisez observIQ OpenTelemetry Collector.
      3. Effectuez un clic droit, puis sélectionnez Redémarrer.
  2. Vérifiez que le service est en cours d'exécution :

    sc query observiq-otel-collector
    
  3. Recherchez 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

  1. Connectez-vous à l'interface Web de FortiAnalyzer.
  2. Accédez à Paramètres système > Transfert de journaux.
  3. Cliquez sur Créer pour ajouter une règle de transfert de journaux.
  4. 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.
  5. 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).
  6. Cliquez sur OK pour enregistrer la configuration.

Vérifier le transfert de journaux

  1. Accédez à Paramètres système > Transfert de journaux.
  2. Vérifiez que l'état de la règle de transfert est Activée.
  3. Surveillez la colonne Statistiques pour vérifier que les journaux sont transférés.
  4. 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.