Gérer en sécurité les System Modules du Sophos Firewall
Sophos Firewall utilise les System Modules comme helpers de protocole lorsque le pare-feu doit suivre des informations supplémentaires ou tenir compte de connexions dynamiques. SFOS 22 répertorie dns, h323, irc, pptp, sip et tftp. Ces modules sont chargés par défaut.
Un module chargé n’est ni une règle de pare-feu ni une recommandation d’utiliser le protocole concerné. Il ne remplace pas une règle NAT, une route ou une stratégie de sécurité adaptée. À l’inverse, décharger globalement tous les helpers apparemment inutilisés n’est pas une mesure de durcissement pertinente. Le réglage est global et peut modifier de façon inattendue des applications existantes.
⚠️ Règle d’exploitation : Documenter d’abord l’état et le flux défaillant précis. Ne modifier qu’un seul module, répéter le même flux et restaurer l’état initial en l’absence d’amélioration.
Bien distinguer les six modules
| Module | Rôle selon SFOS 22 | Limite importante |
|---|---|---|
dns | Apprend les sous-domaines à partir du trafic DNS non local. | Ne remplace ni résolveur DNS, ni stratégie DNS, ni test de résolution. |
h323 | Prend en charge les communications audio, vidéo et données H.323. | Une modification peut toucher toutes les connexions H.323, pas uniquement un PBX ou une règle. |
irc | Prend en charge le trafic IRC en modèle client-serveur. | Sophos signale des risques de DoS et de performances sur les réseaux IRC ouverts. |
pptp | Prend en charge le chemin de données des connexions PPTP. | Charger le helper ne crée pas de tunnel VPN et ne valide pas la pertinence de PPTP pour le modèle de sécurité actuel. |
sip | Reconnaît la signalisation SIP et peut prendre en charge des connexions média dynamiques. | SIP ALG peut aider ou gêner selon le PBX, le SBC, le NAT, TLS et le fournisseur. |
tftp | Prend en charge TFTP sur UDP. | TFTP ne possède aucune fonction de sécurité ; le helper ne le rend ni confidentiel ni authentifié. |
Pour sip et h323, le helper est souvent présenté trop vite comme cause ou solution. Le processus complet avec NAT, RTP, timeouts, port SIP personnalisé, Packet Capture et appels de test se trouve dans Résoudre les problèmes VoIP avec SIP et RTP.
Enregistrer l’état initial dans Device Console
Ces commandes s’exécutent dans 4. Device Console, pas dans Advanced Shell. Lire l’état global avant toute modification :
system system_modules show
Conserver toute la sortie, même si un seul module est étudié. Elle indique si un système migré ou anciennement adapté diffère de la valeur par défaut. La mention loaded prouve uniquement l’état du module, pas que le helper traite un flux donné ou provoque son erreur.
Noter aussi les IP source et destination, le port, le protocole, la Rule ID, la NAT ID, l’heure et le test applicatif exact. Sans flux reproductible, l’effet d’une modification globale ne peut pas être évalué. Log Viewer, Policy Test et Packet Capture servent à la validation technique.
Charger ou décharger exactement un module
Les commandes de base suivent le même modèle. Le tableau est une référence, pas un bloc à exécuter entièrement.
| Module | Décharger | Charger |
|---|---|---|
| DNS | system system_modules dns unload | system system_modules dns load |
| H.323 | system system_modules h323 unload | system system_modules h323 load |
| IRC | system system_modules irc unload | system system_modules irc load |
| PPTP | system system_modules pptp unload | system system_modules pptp load |
| SIP | system system_modules sip unload | system system_modules sip load |
| TFTP | system system_modules tftp unload | system system_modules tftp load |
Vérifier la syntaxe du build installé avec ? avant exécution. Après une seule modification, relancer system system_modules show, puis répéter le flux applicatif documenté. Éviter toute modification parallèle du NAT, des règles, du routage, des timeouts ou du PBX, car elle rend l’attribution difficile.
Sophos indique explicitement que load et unload pour SIP persistent après un redémarrage. La page SFOS 22 des System Modules ne fournit pas la même précision pour les autres modules. Relire leur état après un redémarrage planifié au lieu de supposer leur persistance.
Ne pas déduire les ports personnalisés d’une syntaxe abrégée incomplète
La page mentionne pour IRC, SIP et TFTP des termes supplémentaires tels que port, portname, default ou show, sans expliquer complètement leur forme exacte. Ces valeurs ne doivent pas être devinées. Device Console affiche la syntaxe du build installé avec ?.
Pour SIP, Sophos publie séparément la commande exacte system system_modules sip load ports <custom_port>. Cette décision appartient à l’analyse VoIP, pas à un test général des helpers. Remplacer le placeholder par le port de signalisation réellement utilisé par le fournisseur ou le PBX.
Vérifier l’effet et le retour arrière
Un test utile va au-delà de la sortie CLI. Après chargement ou déchargement, contrôler l’établissement de la connexion, le trafic dans les deux sens, les Rule et NAT ID, les drops et l’application concernée. Pour SIP ou H.323, tester l’enregistrement, les connexions entrantes et sortantes et les médias bidirectionnels. Pour DNS, vérifier requête et réponse avec le nom attendu. Pour TFTP, vérifier aussi le transfert du fichier.
Si le symptôme reste identique ou si de nouvelles erreurs apparaissent, remettre uniquement le module modifié dans son état précédent. Relancer ensuite system system_modules show et le même flux de test. Un redémarrage ne remplace pas ce rollback.
Si le comportement change mais que la cause reste incertaine, conserver les états avant et après, le build du firmware, les logs et le Packet Capture. Un helper globalement déchargé ne doit pas devenir une solution permanente parce qu’un seul test court semble meilleur.
FAQ
Faut-il décharger par défaut les System Modules inutilisés ?
Le module SIP est-il identique à SIP ALG ?
Un module PPTP ou TFTP chargé crée-t-il un accès ?
loaded décrit uniquement l’état global du helper.Comment annuler un test des System Modules ?
system system_modules show avant le test. Ensuite, ramener uniquement le module testé à sa valeur précédente avec load ou unload, puis répéter le même flux applicatif.