Collecter les journaux de pare-feu Hillstone

Compatible avec :

Ce document explique comment ingérer les journaux Hillstone Firewall dans Google Security Operations à l'aide de Bindplane.

Hillstone Firewall est un pare-feu nouvelle génération qui offre des fonctionnalités avancées de détection et de prévention des menaces, de contrôle des applications, de prévention des intrusions et d'automatisation des règles. Le pare-feu offre des fonctionnalités de sécurité complètes, y compris la protection contre les menaces en temps réel, la gestion unifiée des menaces et le fonctionnement intelligent des règles, afin de protéger l'infrastructure réseau contre les menaces connues et inconnues.

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 le pare-feu Hillstone
  • 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 ou à l'appliance Hillstone Firewall
  • Identifiants d'administrateur pour l'interface Web du pare-feu Hillstone

Obtenir le fichier d'authentification d'ingestion Google SecOps

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

  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" /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 droits 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)" 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).

Autres ressources d'installation

Pour obtenir d'autres options d'installation et 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 :

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows :

    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:
      udplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/hillstone_firewall:
        compression: gzip
        creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
        customer_id: 'YOUR_CUSTOMER_ID'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: HILLSTONE_NGFW
        raw_log_field: body
        ingestion_labels:
          env: production
          source: hillstone_firewall
    
    service:
      pipelines:
        logs/hillstone_to_chronicle:
          receivers:
            - udplog
          exporters:
            - chronicle/hillstone_firewall
    

Paramètres de configuration

Remplacez les espaces réservés suivants :

  • Configuration du récepteur :

    • Le récepteur est configuré pour écouter sur le port UDP 514 sur toutes les interfaces (0.0.0.0).
  • 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 : remplacez YOUR_CUSTOMER_ID par le numéro client de l'étape précédente.
    • endpoint : URL du point de terminaison régional :
      • États-Unis : malachiteingestion-pa.googleapis.com
      • Europe : europe-malachiteingestion-pa.googleapis.com
      • Asie : asia-southeast1-malachiteingestion-pa.googleapis.com
      • Pour obtenir la liste complète, consultez Points de terminaison régionaux.
    • log_type : définissez la valeur sur HILLSTONE_NGFW exactement comme indiqué.
    • ingestion_labels : libellés facultatifs au format YAML (personnalisez-les selon vos besoins).

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, exécutez la commande suivante :

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

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

        sudo journalctl -u observiq-otel-collector -f
      
  • Pour redémarrer l'agent Bindplane dans 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 :

      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.

      4. Vérifiez que le service est en cours d'exécution :

        sc query observiq-otel-collector
        
      5. Recherchez les erreurs dans les journaux :

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

Configurer le transfert syslog du pare-feu Hillstone

Créer un serveur syslog

  1. Connectez-vous à l'interface Web du pare-feu Hillstone.
  2. Accédez à Journal > Configuration > Serveur Syslog pour accéder à la page "Liste des serveurs Syslog".
  3. Cliquez sur Nouveau pour créer un serveur syslog.
  4. Dans la boîte de dialogue Configuration du serveur Syslog, configurez les paramètres suivants :
    • Nom d'hôte : saisissez l'adresse IP de l'hôte de l'agent Bindplane (par exemple, 192.168.1.100).
    • Liaison : sélectionnez Routeur virtuel, puis un routeur virtuel dans la liste déroulante, ou sélectionnez Interface source, puis une interface source dans la liste déroulante.
    • Protocole : sélectionnez UDP dans la liste déroulante.
    • Port : saisissez 514.
    • Type de journal : sélectionnez les types de journaux que le serveur Syslog doit recevoir. Voici les types de journaux disponibles :
      • Événement : audits des activités système et d'administration, événements de routage et de mise en réseau.
      • Alarme : journaux de gravité urgente, alerte et critique.
      • Sécurité : événements de sécurité tels que la protection contre les attaques et la sécurité des applications.
      • IPS : événements de protection contre les intrusions réseau.
      • Configuration : modifications de la configuration dans l'interface de ligne de commande.
      • Réseau : opérations de services réseau telles que PPPoE et DDNS.
      • Session : journaux de session, y compris les protocoles, les adresses IP source et de destination, et les ports.
      • NAT : journaux NAT, y compris le type de NAT, les adresses IP et les ports sources et de destination.
  5. Cliquez sur OK pour enregistrer la configuration du serveur Syslog.

Activer le transfert de journaux pour chaque type de journal

  1. Accédez à Journal > Configuration > Journal pour accéder à la page Configuration du journal.
  2. Cliquez sur l'onglet du type de journal que vous souhaitez configurer (par exemple, Événement, Alarme, Sécurité, IPS, Configuration, Réseau, Session ou NAT).
  3. Pour chaque type de journal que vous souhaitez transférer :
    1. Sélectionnez Activer pour activer la fonction de journalisation.
    2. Sélectionnez Serveur Syslog pour exporter les journaux vers le serveur Syslog.
    3. Dans la liste déroulante Gravité la plus faible, sélectionnez le niveau de gravité le plus faible. Les journaux dont le niveau de gravité est inférieur à celui sélectionné ici ne seront pas exportés.
    4. Cliquez sur le lien Tous les serveurs Syslog pour vérifier que le serveur Syslog que vous avez configuré est bien listé.
  4. Cliquez sur OK pour enregistrer les paramètres.
  5. Répétez les étapes 2 à 4 pour chaque type de journal que vous souhaitez transférer vers Google SecOps.

Vérifier le transfert de journaux

  1. Sur l'hôte de l'agent Bindplane, vérifiez que les messages syslog sont reçus :

    • Linux :
    sudo journalctl -u observiq-otel-collector -f
    
    • Windows :
    type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
    
  2. Recherchez les entrées de journal indiquant que les journaux Hillstone Firewall ont bien été reçus et transférés.

  3. Après 5 à 10 minutes, vérifiez que les journaux s'affichent dans la console Google SecOps.

Table de mappage UDM

Champ de journal Mappage UDM Logique
start_time_label, close_time_label, state_label, vr_label additional.fields Champs de métadonnées supplémentaires
décroiss. metadata.description Description de l'événement
metadata.event_type Type d'événement
metadata.product_name Nom du produit
metadata.vendor_name Nom du fournisseur
protocol_number_src network.ip_protocol Protocole IP utilisé
receive_bytes network.received_bytes Nombre d'octets reçus
receive_packets network.received_packets Nombre de paquets reçus
send_bytes network.sent_bytes Nombre d'octets envoyés
send_packets network.sent_packets Nombre de paquets envoyés
session_id network.session_id Identifiant de session
hôte principal.asset.hostname Nom d'hôte de l'élément principal
src_ip principal.asset.ip Adresse IP de l'actif principal
zone_val principal.cloud.availability_zone Zone de disponibilité du cloud
hôte principal.hostname Nom d'hôte du principal
src_ip principal.ip Adresse IP du principal
mac_address principal.mac Adresse MAC du responsable
src_port principal.port Numéro de port du principal
ethernet_src_label principal.resource.attribute.labels Libellés pour les attributs de ressources principales
id principal.user.userid ID utilisateur du principal
dst_ip target.asset.ip Adresse IP de l'élément cible
dst_ip target.ip Adresse IP de la cible
dst_port target.port Numéro de port de la cible
ethernet_dst_label target.resource.attribute.labels Étiquettes pour les attributs de ressources cibles
stratégie target.resource.name Nom de la ressource cible
stratégie target.resource.type Type de la ressource cible
utilisateur target.user.userid ID utilisateur de la cible

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.