Tâche #15750
Distribution EOLE - Scénario #15554: Traitement express (13-15)
AMON 2.4.2 & ERA - faire fonctionner un modèle de pare-feu utilisant un protocole dans une variable
Description
Bonjour à tous,
Sur un AMON 2.4.2, je n'arrive pas à faire fonctionner un modèle de pare-feu utilisant un protocole dans une variable.
Lors de l'instanciation, j'ai l'impression que le compilateur de règles de pare-feu ne transforme pas la variable en valeur et du coup les règles ne sont pas appliquées :
# ERA_DEBUG=1 /etc/init.d/bastion restart
* Réinitialisation du pare-feu
* Activation du mode forteresse sur eth0
* Activation du mode forteresse sur eth1
* Activation du mode forteresse sur eth2
* Activation du mode forteresse sur eth3 [ OK ]
* Regénération des règles de pare-feu (modèle "4zones-scribe-av-nginx-pronote-edt-2-4-2")
#--------------------------------------------------
Attention, erreur de coherence des directives Era
protocol should be in (udp, tcp, esp, tout or icmp), found %%proto_relais_edt
#--------------------------------------------------
Traceback (most recent call last):
File "./backend/compiler", line 149, in run
compiler.compile(matrix_model)
File "/usr/share/era/backend/compiler.py", line 134, in compile
self._process_flux(flux)
File "/usr/share/era/backend/compiler.py", line 495, in _process_flux
default_policy=up_directives_store.default_policy)
File "/usr/share/era/backend/compiler.py", line 521, in _process_directives
rules = proc.process()
File "/usr/share/era/backend/processors.py", line 474, in process
service_param = ParameterFactory.service2(service, self.directive.serv_inv)
File "/usr/share/era/backend/iptrule.py", line 914, in service2
', found %s' % protocol)
ValueError: protocol should be in (udp, tcp, esp, tout or icmp), found %%proto_relais_edt non appliquées ! [fail]
* Réinitialisation du pare-feu
* Activation du mode forteresse sur eth0
* Activation du mode forteresse sur eth1
* Activation du mode forteresse sur eth2
* Activation du mode forteresse sur eth3
Le serveur est protégé. Pour relancer le pare-feu, exécuter "CreoleService bastion reload" [ OK ]
Pourtant, le service est bien déclaré dans ERA 2.42 :
<service name="relais_edt" protocol="%%proto_relais_edt" ports="%%port_relais_edt" id="80" libelle="Port d'écoute du Relais EDT" tcpwrapper=""/>
Et le protocole bien spécifié dans le "config.eol" :
"proto_relais_edt": {"owner": "gen_config", "val": "tcp"}
Sachant que si le protocole est fixé dans ERA, les règles du pare-feu sont bien appliquées sans erreur :
<service name="relais_edt" protocol="tcp" ports="%%port_relais_edt" id="80" libelle="Port d'écoute du Relais EDT" tcpwrapper=""/>
Quelqu'un pourrait m'éclairer là-dessus ?
Merci d'avance !
Révisions associées
Historique
#1 Mis à jour par Gérald Schwartzmann il y a presque 10 ans
- Sujet changé de AMON 2.4.2 & ERA - Variable protocole réseau à AMON 2.4.2 & ERA - faire fonctionner un modèle de pare-feu utilisant un protocole dans une variable
#2 Mis à jour par Joël Cuissinat il y a presque 10 ans
- Assigné à mis à Joël Cuissinat
#3 Mis à jour par Joël Cuissinat il y a presque 10 ans
Je confirme le problème : le type de protocole est analysé et utilisé dans la fonction service2 du fichier /usr/share/era/backend/iptrule.py avant la templatisation du modèle.
Comme ce code conditionne la façon dont la règle sera générée, on ne peut pas uniquement se contenter de supprimer les validations comme cela a pu être fait par ailleurs.
De ce fait, je pense que ce problème ne sera pas corrigé et qu'il faudrait même désactiver la possibilité de créer un service avec protocole variable dans l'interface puisque ce n'est pas fonctionnel.
#4 Mis à jour par Joël Cuissinat il y a presque 10 ans
- Tracker changé de Demande à Tâche
- Temps estimé mis à 2.00 h
- Tâche parente mis à #15554
- Restant à faire (heures) mis à 2.0
=> mettre un mot dans la doc + voir si on peut griser la case
#5 Mis à jour par Joël Cuissinat il y a presque 10 ans
- Statut changé de Nouveau à En cours
#6 Mis à jour par Joël Cuissinat il y a presque 10 ans
- % réalisé changé de 0 à 50
- Restant à faire (heures) changé de 2.0 à 0.5
#7 Mis à jour par Joël Cuissinat il y a presque 10 ans
- Statut changé de En cours à Résolu
- % réalisé changé de 50 à 100
- Restant à faire (heures) changé de 0.5 à 0.25
- désactivation de la fonctionnalité sur EOLE 2.6 (era 2.6.0-3)
- ajouter d'un bloc Attention dans la doc 2.5 + rafraîchissement de certaines copies d'écran qui pointaient sur 2.3
http://eole.ac-dijon.fr/documentations/2.5/partielles/beta/ModuleAmon/co/2-Services.html
#8 Mis à jour par Klaas TJEBBES il y a presque 10 ans
- Statut changé de Résolu à Fermé
- Restant à faire (heures) changé de 0.25 à 0.0
Problème documenté (ne fonctionne pas).
Désactivé dans ERA sur 2.6.