Aller au contenu
Avanet

Nettoyer la base de données Secure Heartbeat de Sophos Firewall en cas de support

Cette procédure n’est pas un conseil général d’optimisation pour Sophos Firewall. Elle décrit un cas de support très spécifique : le pare-feu manque d’espace libre et le support Sophos confirme que certaines tables autour de Secure Heartbeat dans la base de données corporate sont devenues inhabituellement grandes.

Dans ce cas, une maintenance ciblée avec VACUUM FULL peut récupérer de l’espace. Comme cela implique un accès direct à la base de données interne PostgreSQL du pare-feu, la procédure ne doit être effectuée qu’après confirmation actuelle par le support Sophos et pendant une fenêtre de maintenance.

Quand cette instruction est-elle pertinente

La procédure est pertinente lorsque l’espace disque sur le Sophos Firewall devient insuffisant et qu’il est suspecté que les tables de la base de données autour de Secure Heartbeat occupent un espace inhabituellement important.

Les signes typiques peuvent être :

  • Avertissements concernant une consommation élevée de mémoire
  • Partitions fortement occupées sur le pare-feu
  • Problèmes avec les rapports, les journaux ou les services en raison d’une capacité disque limitée
  • Une indication du support Sophos que la base de données Secure Heartbeat est devenue trop grande

Si la raison pour laquelle le disque est plein n’est pas claire, l’analyse générale de Vérifier l’espace disque et gérer les rapports sur Sophos Firewall doit d’abord être effectuée. Cette maintenance de la base de données n’est pertinente que si les rapports, journaux, files d’attente de courrier, quarantaines, taille de disque virtuel et autres causes évidentes ne sont pas l’explication réelle ou si le support Sophos mentionne explicitement le chemin de la base de données.

Prérequis

Pour cette maintenance, vous aurez besoin de :

  • Accès administratif au Sophos Firewall
  • Accès à la Advanced Shell
  • Une recommandation ou confirmation concrète par le support Sophos
  • Une fenêtre de maintenance
  • Une sauvegarde de configuration du pare-feu à jour
  • Journaux sauvegardés, au cas où le cas devrait être analysé plus tard
  • Suffisamment d’espace libre pour que la maintenance de la base de données puisse être complétée

Si l’accès à la Shell n’est pas encore configuré, l’instruction Connecter Sophos Firewall via SSH explique comment établir une connexion SSH au pare-feu. Lors de la préparation d’un cas de support, Sauvegarder les journaux de Sophos Firewall pour une analyse externe et Ouvrir un ticket de support Sophos peuvent également être utiles.

⚠️ Ces commandes accèdent directement à la base de données interne PostgreSQL du Sophos Firewall. Elles ne doivent être exécutées que de manière ciblée et après confirmation actuelle par le support Sophos pour le cas de support spécifique. VACUUM FULL peut verrouiller des tables pendant son exécution et, selon la taille de la base de données, prendre un certain temps.

Quand ne pas exécuter les commandes

Les commandes ne doivent pas être exécutées s’il n’y a qu’un avertissement général de manque d’espace et que la cause n’a pas encore été déterminée. Les problèmes d’espace sont souvent dus aux rapports, journaux de débogage, fichiers de support, protection des courriels, quarantaines, disque virtuel trop petit ou une conservation générale des journaux.

Les signaux d’arrêt clairs sont :

  • Le support Sophos n’a pas confirmé spécifiquement les deux tables: Dans ce cas, l’intervention sur la base de données serait seulement supposée et non approuvée pour le cas spécifique.
  • Pas de sauvegarde actuelle ou pas de fenêtre de maintenance: En cas d’erreur, il manque le chemin de retour propre ou l’impact affecte l’opération en cours.
  • SSH ou Advanced Shell est instable: Une commande de base de données interrompue complique l’analyse ultérieure.
  • Rôle HA, numéro de série ou nœud affecté est incertain: La commande peut être inefficace sur le mauvais appareil ou fausser le diagnostic.
  • Des rapports, journaux ou archives de support sont supprimés en parallèle: Ensuite, il n’est plus clair quelle mesure a libéré de l’espace.
  • Le pare-feu perd déjà des services critiques: Dans ce cas, l’état actuel doit d’abord être sécurisé et évalué avec le support Sophos.

Cette procédure n’est pas non plus adaptée comme maintenance régulière, tâche cron ou nettoyage préventif. Si les tables recommencent à croître rapidement, c’est un symptôme, pas un état de fonctionnement normal. Le cas de support doit alors être poursuivi avec des journaux actuels, des sorties de disque et une évolution temporelle.

Approbation du support et critères d’arrêt

Avant l’exécution, il ne doit pas seulement y avoir une sauvegarde. Il doit également être clair qui a approuvé l’étape, quel problème est traité et quand la procédure sera interrompue.

Informations minimales pertinentes :

  • Approbation du support: Numéro de ticket, contact et recommandation concrète.
  • Pare-feu concerné: Numéro de série, modèle, version du firmware, rôle HA.
  • Problème: Avertissement de mémoire, partition affectée, services affectés.
  • Heure de début: Moment avant la première commande.
  • Valeurs avant: Sortie de df -h, df -hkm et system diagnostics show disk.
  • Critère d’arrêt: Message d’erreur, durée d’exécution inhabituellement longue, session SSH instable ou nouvelles erreurs système.

Si la connexion SSH est instable, si le pare-feu perd déjà des services critiques ou si le support Sophos n’a pas confirmé spécifiquement les tables, il ne faut pas expérimenter avec des commandes de base de données. Dans de tels cas, des sorties de disque actuelles, des journaux et un cas de support propre sont plus précieux qu’une tentative de maintenance partiellement exécutée.

Vérifier l’espace disque avant la maintenance

Avant la maintenance de la base de données, il faut vérifier à quel point les partitions sont occupées :

df -h

Pour un affichage plus précis en mégaoctets, la commande suivante peut également être utilisée :

df -hkm

La sortie doit être documentée avant la maintenance pour pouvoir comparer ensuite si de l’espace a été libéré. De plus, l’état du disque spécifique à Sophos depuis la Device Console est utile :

system diagnostics show disk

Dans les clusters HA, les deux nœuds doivent être vérifiés séparément. Les bases de données locales, les journaux et l’espace libre peuvent différer entre le primaire et l’auxiliaire.

Avant la maintenance, il doit également être clair si d’autres causes occupent encore de l’espace en parallèle. Cela inclut les anciennes archives de support, les grandes bases de données de rapports, les files d’attente de courrier, les quarantaines, les journaux de débogage ou les fichiers déposés manuellement. Si ces points n’ont pas été vérifiés, la base de données Secure Heartbeat n’est qu’une hypothèse.

Exécuter la maintenance de la base de données

Les commandes suivantes sont exécutées dans la Advanced Shell. Pendant l’exécution, la session SSH doit rester stable. Le pare-feu ne doit pas être redémarré tant qu’une commande est en cours.

Tout d’abord, la table tbleacappcache est nettoyée :

psql -U pgroot -d corporate -c "VACUUM FULL tbleacappcache"

Ensuite, la table tblappstoeps est nettoyée :

psql -U pgroot -d corporate -c "VACUUM FULL tblappstoeps"

Les commandes renvoient généralement VACUUM après une exécution réussie. Si une commande génère un message d’erreur ou reste bloquée de manière inhabituelle, il ne faut pas continuer avec d’autres commandes de base de données expérimentales. Dans ce cas, la sortie, le moment et l’état actuel du disque sont pertinents pour le support Sophos.

Pendant l’exécution, aucune autre personne ne doit nettoyer l’espace disque, les rapports ou les fichiers de base de données en parallèle. Sinon, il ne sera plus clair par la suite quelle mesure a eu quel effet. Pour les pare-feux en production, une courte entrée de changement avec l’heure de début, la commande et le résultat est utile.

Vérifier l’espace disque après la maintenance

Après l’exécution des commandes, l’espace disque doit être vérifié à nouveau :

df -h

Si la base de données Secure Heartbeat était effectivement la cause, l’occupation de la partition concernée devrait diminuer. L’ampleur de l’effet dépend de la taille des tables avant et du nombre de données que PostgreSQL a pu libérer.

Après la maintenance, il faut également vérifier :

  • system diagnostics show disk affiche-t-il à nouveau des valeurs plausibles ?
  • Le Log Viewer, les rapports et les services concernés sont-ils à nouveau utilisables ?
  • Y a-t-il de nouvelles erreurs dans les services et journaux pertinents ?
  • La consommation d’espace augmente-t-elle à nouveau fortement dans les heures ou jours suivants ?
  • Les étapes exécutées sont-elles documentées dans le ticket ou le changement ?

Pour le contrôle après coup, une seule comparaison réussie de df -h ne suffit pas toujours. Si la partition est seulement brièvement soulagée et se remplit à nouveau rapidement, la maintenance n’est pas une conclusion, mais un indice de diagnostic. Le cas doit alors être poursuivi avec des sorties de disque récentes, une période de journaux et des services affectés renvoyés au support Sophos.

Remarques importantes

  • Cette maintenance ne résout pas automatiquement la cause de la croissance des tables.
  • Si l’espace disque augmente à nouveau rapidement après, un cas de support Sophos doit être ouvert.
  • VACUUM FULL est plus intensif qu’un VACUUM normal car les tables sont réécrites.
  • Les commandes ne doivent pas être utilisées comme tâche cron régulière ou routine sans diagnostic.
  • Pour les pare-feux en production, une fenêtre de maintenance est recommandée, car certaines fonctions peuvent réagir avec un délai pendant la maintenance de la base de données.
  • Dans les clusters HA, il doit être clair sur quel nœud la maintenance est nécessaire.
  • Avant d’autres commandes de base de données, le support Sophos doit être à nouveau impliqué.

Erreurs fréquentes

Exécuter des commandes sans diagnostic

Une partition pleine ne signifie pas automatiquement que Secure Heartbeat est la cause. Avant les commandes de base de données, les sorties de disque, les journaux et les consommateurs d’espace évidents doivent être vérifiés.

Ne pas planifier de fenêtre de maintenance

VACUUM FULL peut prendre du temps selon la taille des tables et verrouiller les tables. Sur les pare-feux en production, l’étape ne doit pas être effectuée en parallèle pendant une phase opérationnelle critique.

Ne pas continuer à observer après le nettoyage

Si l’espace disque est libéré seulement brièvement et augmente à nouveau fortement, la cause n’est pas résolue. Une analyse plus approfondie avec le support Sophos est alors nécessaire.

Confusion de nœud HA

Dans les environnements HA, la situation locale de l’espace disque peut différer par nœud. Il doit donc être clair avant chaque commande si l’on travaille sur le primaire ou l’auxiliaire et quel numéro de série est concerné. Une commande sur le mauvais nœud peut être inefficace et compliquer inutilement l’analyse ultérieure.

Contexte du cas

Dans le cas de support spécifique, la cause était une base de données Secure Heartbeat trop grande. Les deux commandes VACUUM FULL mentionnées servent à nettoyer spécifiquement les tables concernées et à libérer l’espace disque non utilisé. Cependant, cela ne doit pas être interprété comme une maintenance générale de la base de données pour Sophos Firewall.

L’article traite uniquement de ce cas spécifique de manque d’espace. Si Secure Heartbeat ne fonctionne pas, si les endpoints ne signalent pas de statut Heartbeat, si la synchronisation Central échoue ou si les règles de pare-feu avec des conditions Heartbeat ne fonctionnent pas comme prévu, c’est un autre problème. Dans ce cas, la connexion Sophos Central, le statut des endpoints, les règles de pare-feu, le Log Viewer et les journaux de service appropriés sont plus importants qu’une intervention directe sur la base de données.

Pour les problèmes d’espace généraux, le premier point d’entrée reste l’examen systématique de l’espace disque, des journaux, des rapports et des données de support. Pour l’exploitation autour de Sophos Central, Connecter Sophos Firewall à Sophos Central est également pertinent, pour les fichiers journaux Dépannage Sophos Firewall : Services et journaux.

FAQ

Faut-il nettoyer régulièrement la base de données Secure Heartbeat ?

Non. Cette procédure n’est pas une maintenance de routine. Si les tables croissent fortement à plusieurs reprises, la cause doit être clarifiée avec le support Sophos.

Un avertissement de mémoire suffit-il comme raison pour ces commandes ?

Non. Les causes normales de consommation d’espace comme les rapports, journaux, files d’attente de courrier, quarantaines, archives de support et taille de disque virtuel doivent être vérifiées au préalable. Les commandes ne sont appropriées que si le support Sophos confirme le chemin de la base de données pour le cas spécifique.

Que faut-il sauvegarder avant VACUUM FULL ?

Au minimum, une sauvegarde de configuration actuelle, des journaux pertinents, les sorties avant de df -h et system diagnostics show disk, le numéro de ticket, le numéro de série, la version du firmware et le rôle HA.